为什么我的敌人死后会攻击?(Javascript)


function battle(){
//User turn
alert("It's your turn!");
var user_move = prompt("Type 1 to use fireball, 2 to use lightning strike, or 3 to do earthquake");
if(user_move == 1){
var r = Math.round(Math.random()*(dmg.length-1));
alert("You did "+dmg[r]+" damage to the enemy!");
enemy_HP = enemy_HP - dmg[r];
}
else if(user_move == 2){
var r = Math.round(Math.random()*(dmg.length-1));
alert("You did "+dmg[r]+" damage to the enemy!");
enemy_HP = enemy_HP - dmg[r];
}
else if(user_move == 3){
var r = Math.round(Math.random()*(dmg.length-1));
alert("You did "+dmg[r]+" damage to the enemy!");
enemy_HP = enemy_HP - dmg[r];
}
alert("Your enemy has "+enemy_HP+"HP");
//Enemy turn
alert("Now its your enemys turn!");
var a = Math.round(Math.random(enemy_attack.length-1));
var r = Math.round(Math.random()*(dmg.length-1));
alert("You enemy used "+enemy_attack[a]+"nand did "+enemy_dmg[r]+" damage to you!");
HP = HP - enemy_dmg[r];
alert("You now have "+HP+"HP!");
//If still living keep battling
if(HP > 0 && enemy_HP > 0){
battle();
}
else if(HP <= 0){
alert("You lost D:");
}
else if(enemy_HP <= 0){
alert("You win :D!");
}
}
battle();

我正在尝试制作一个有趣的小js战斗游戏,但有时当你杀死敌人时,它有最后一次攻击,即使它死了也可以杀死你。我该如何解决?

好吧,从你的代码来看,你首先对敌人造成伤害,然后才检查他是否有足够的生命。包括来自敌人内部的伤害,如果声明,您可以检查敌人是否死亡。

将敌人攻击代码放在 if 语句中

if (enemy_HP > 0){
//enemy attack code
} else alert("You win :D!");

最新更新