我正在制作这个游戏,您可以从屏幕两侧射击敌人。我让子弹移动并在它们到达屏幕末端时被移除(如果它们没有击中任何敌人)并在与敌人碰撞时移除敌人。
//------------collision----------------//
if(shot === true){
bulletY = $('.bullet').position().top + 2;
bulletX = $('.bullet').position().left + 2;
$('.enemy').each(function(){
if($('.enemy').hasClass('smallEnemy')){
enemyY = $(this).position().top + 7;
enemyX = $(this).position().left + 7;
if(Math.abs(bulletY - enemyY) <= 9 && Math.abs(bulletX - enemyX) <=9){
$(this).remove();
score = score + 40;
bulletDestroy();
}
}
});
}
但是,如果碰撞检查正确,子弹会摧毁所有敌人,这不是我想要的。我想检查敌人是否具有 smallEnemy、medEnemy 或 lrgEnemy 类,然后进行碰撞检查,这是我认为的,但它似乎不起作用。
此外,随着时间的推移,游戏开始滞后。有人知道原因吗?