我正在处理一个游戏,这是一款太空射击游戏,我有敌人的生成工作,子弹也有工作,但是我很难实现碰撞检测,
我尝试了圆/圆检测算法,也尝试了矩形/矩形算法
碰撞检测功能
public void checkCollision(){
while(bulletCheck < bullets.size() - 1){
bulletCheck++;
if(bullets.get(bulletCheck).botY < 0){
bullets.remove(bulletCheck);
}
while(enemyCheck < enemy.enemies.size() - 1){
enemyCheck++;
if(enemy.enemies.get(enemyCheck).y > 900){
enemy.enemies.remove(enemyCheck);
}
}
}
if(dist(bullets.get(bulletCheck).leftX, bullets.get(bulletCheck).botY, enemy.enemies.get(enemyCheck).x, enemy.enemies.get(enemyCheck).y) < (90)){
bulletHit = true;
if(bulletHit == true){
enemy.enemies.remove(enemyCheck);
bullets.remove(bulletCheck);
bullets.add(new userBullets(5, 80, 80, this));
enemy.enemies.add(new enemy(700, -500, 100, 100, this));
}
}
}
我希望最终结果是子弹能够可靠地与敌方物体碰撞并摧毁敌方物体,这要感谢预先提供的帮助 -票价