2012-03-16 68 views
3

我正在做我的第一場比賽在帆布+ JavaScript,簡單的太空射擊。問題是,我用兩個嵌套的for循環來檢查,如果火箭打這樣的敵人:如何檢測與JS的碰撞

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

,這將導致小,但仍然惱人的滯後。我在這裏和谷歌研究這個,但似乎沒有人打擾,因爲我們有不同的引擎。有沒有人知道如何解決這個問題沒有嵌套for循環?

感謝您的回答!

回答

0

您可以使用「tiles」的多維數組或哈希表,其中鍵是x和y的位置。在數據結構中的「碰撞」中,觸發碰撞事件。