在游戏中,我正在创造我只想让僵尸能够每分钟击中玩家2次,而不是带走洞穴健康栏,因为它会损害玩家的速度。为玩家设置无敌框架
public void checkCollision(){
Rectangle r3 = player.getBounds();
for(int i = 0; i < zombie.size(); i++){
Zombie z = (Zombie) zombie.get(i);
Rectangle r2 = z.getBounds();
if(r3.intersects(r2)){
if(!player.getInvincibility()){
player.setHealth(player.getHealth() - 10);
player.setInvincibility(true);
}
}
}
}
这是检查玩家和僵尸的碰撞的代码。我已经做到这样,玩家只会受到10点伤害,但是玩家永远不会再受到伤害。我曾尝试使用if语句来检查玩家是否无敌,并且在if语句中有一个for循环,当int达到30 000时会使玩家死亡,但僵尸仍然会对玩家造成如此之快的伤害健康酒吧的盖茨被带走。