помогите с игрой
Вложений: 1
пишу игру помогите сделать радиус порождения для оружия
HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>333</title> </head> <body> <div id="menu"> <img src="120px-Молот.png" id="mol"> <img src="120px-Базука.png" id="baz"> <img src="120px-Бомбардировка.png" id="boom"> <img src="Динамит.png" id="tnt"> </div> <script src="js.js"></script> </body> </html> js var a=document.createElement('mol'); mol.style.width="120px"; mol.style.height="120px"; mol.style.position='absolute'; mol.onclick=function cur(){ document.body.style.cursor = 'url("32p.png"), default'; } document.body.appendChild(a); var b=document.createElement('baz'); baz.style.top="120px"; baz.style.width="120px"; baz.style.height="120px"; baz.style.position='absolute'; baz.onclick=function changeCursor(){ document.body.style.cursor = 'url("32px-Базука.png"), default'; } document.body.appendChild(b); var c=document.createElement('boom'); boom.style.top="240px"; boom.style.width="120px"; boom.style.height="120px"; boom.style.position='absolute'; boom.onclick=function changeCursor(){ document.body.style.cursor = 'url("32px-Бомбардировка.png"), default'; } document.body.appendChild(c); var d=document.createElement('tnt'); tnt.style.top="360px"; tnt.style.width="120px"; tnt.style.height="120px"; tnt.style.position='absolute'; tnt.onclick=function changeCursor(){ document.body.style.cursor = 'url("32px-Динамит.png"), default'; } document.body.appendChild(d); var test=document.createElement('menu'); menu.style.backgroundColor= menu.style.zIndex=10; menu.style.width="160px"; menu.style.height="600px"; menu.style.position='absolute'; menu.style.left="-155px"; menu.onmouseover=azz; function azz(event) { var left = -155; function frame() { left++; menu.style.left = left + 'px' if (left == 0) { clearInterval(timer1); } } var timer1 = setInterval(frame, 10) } menu.onmouseout=az; function az(event) { var left = 0; function frame() { left--; menu.style.left = left + 'px' if (left == -155) { clearInterval(timer1); } } var timer1 = setInterval(frame, 10) } document.body.appendChild(test); var fon = document.createElement('div'); fon.style.width = '100%'; fon.style.height = '100%'; fon.style.position = 'absolute'; fon.style.backgroundImage = "url(trava.jpg)"; document.body.appendChild(fon); var p = document.createElement('div'); p.style.width = '100px'; p.style.zIndex=1000; p.style.height = '79px'; p.style.backgroundImage = "url('p2.gif')"; p.style.position = 'absolute'; p.style.top = '50%'; p.style.left = '50%'; document.body.appendChild(p); function povtor(){ var bunny = document.createElement('div'); bunny.style.width = '30px'; bunny.style.height = '30px'; bunny.style.backgroundImage = "url('z1.gif')"; bunny.style.position = 'absolute'; y = Math.random()*600; x = Math.random()*1200; bunny.style.top = y+'px'; bunny.style.left = x+'px'; bunny.onclick=function(event) {event.target.style.display='none';} document.body.appendChild(bunny); function move(event) { var left =parseInt(bunny.style.left, 10); function frame() { if (left<683){left++; bunny.style.left = left + 'px'} else if (left <= 683) { } else { left--; bunny.style.left = left + 'px' } bunny.style.left = left + 'px' if (left == 683) { clearInterval(timer1); } } var timer1 = setInterval(frame, 10) var top =parseInt(bunny.style.top, 10); function frame2() { if(top<360){top++; bunny.style.top = top + 'px'} else if(top>360){ top--; bunny.style.top = top + 'px' } if (top == 360) { clearInterval(timer2); } } var timer2 = setInterval(frame2, 10) } setTimeout(move,1000); } setInterval(povtor,1000) криво залито http://learn.javascript.ru/play/7VG9B |
чтоб по клику на bunny например в радиусе 30 пикселей исчезли остальные bunny как это реализовать на js
|
Цитата:
|
ksa,
спасибо я искал как это реализовать на js не нашёл |
Цитата:
|
Цитата:
|
Цитата:
http://javascript.ru/ui/offset |
сделала массив из кроликов и определил координаты как теперь их состыковать?http://learn.javascript.ru/play/4kokh
|
nub,
клик по кролику должен выдавать его координаты -- потом идти по массиву и смотреть какие ещё кролики лежать в радиусе 30 пикселей от этих координат |
nub,
Цитата:
+ подсчёт тушек зайцы размножаются бесконечно, но не более 25 штук на поле <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <style type="text/css"> body{ background: url(http://learn.javascript.ru/files/play/52/8a/528a0db7e024b.jpg) #008000; color: #FFFFFF; font-size: x-large; } </style> </head> <body> <div id="ok">0</div> <input type="radio" name="boom" value="30" id="boom30" checked="checked" ><label for="boom30">30</label> <input type="radio" name="boom" value="100" id="boom100"><label for="boom100">100</label> <input type="radio" name="boom" value="200" id="boom200"><label for="boom200">200</label> <script> var random = function (b) { return Math.ceil(Math.random() * b) }, rabbitsArray = [], win = 0; function unit() { for (var b = rabbitsArray.length; 25 > b; b++) { rabbitsArray[b] = [random(400), random(800)]; var c = rabbitsArray[b]; c.bunny = document.createElement("div"); var a = c.bunny; a.style.width = "30px"; a.style.height = "30px"; a.style.backgroundImage = "url('http://learn.javascript.ru/files/play/52/8a/528a0db80b9f9.gif')"; a.style.backgroundPosition = "center center"; a.style.backgroundRepeat = "no-repeat"; a.style.position = "absolute"; a.style.top = c[0] + "px"; a.style.left = c[1] + "px"; document.body.appendChild(a) } } unit(); function bum(b) { var boom = document.querySelector(':checked').value; for (var c = rabbitsArray.length - 1, a; a = rabbitsArray[c]; c--) { var d = Math.pow(a[0] - (b[0] - 15), 2) + Math.pow(a[1] - (b[1] - 15), 2), d = Math.sqrt(d); boom > d && (win++, document.getElementById("ok").innerHTML = win, a.bunny.style.border = "#FF0000 1px solid", a = rabbitsArray.splice(c, 1), window.setTimeout(function (a) { return function () { document.body.removeChild(a) } }(a[0].bunny), 500)) } unit() } document.onclick = function (b) { b = b || event; bum([b.clientY, b.clientX]) }; </script> </body> </html> |
Часовой пояс GMT +3, время: 14:41. |