Как обнаружить столкновение с JS - PullRequest
3 голосов
/ 16 марта 2012

Я делаю свою первую игру на холсте + javascript, простой космический шутер. Проблема в том, что я использую два вложенных цикла for, чтобы проверить, поражает ли ракета врага следующим образом:

if((enemies[i][1]>rocket_posy&&enemies[i][1]<rocket_posy+40)&&enemies[i]0]>rocket_posx&&enemies[i][0]<rocket_posx+12))

и это вызывает небольшое, но все же раздражающее отставание. Я исследовал это здесь и в Google, но никто не беспокоится об этом, поскольку у нас есть разные движки для этого. Кто-нибудь знает, как решить эту проблему без вложенных циклов?

Спасибо за ответ!

1 Ответ

0 голосов
/ 16 марта 2012

Вы можете использовать многомерный массив «плиток» или хеш-таблицу, где ключом является позиция x и y.При «столкновении» в структуре данных вы запускаете событие для вашего столкновения.

...