Javascript减法未正确减去

时间:2018-09-08 16:15:23

标签: javascript

我正在开发基于浏览器的文字游戏,并且正在从事战斗。在测试过程中,我发现武器的减损没有正确减去,例如,当我对对手造成15点伤害并且他们的生命值小于10时,对手要么获得1 hp要么保持原状。

玩家最初有50 hp,而对手造成13点伤害后,我还有32 hp。对对手(以32 hp开始)造成18点伤害后,对手仍然有32 hp。为了清楚起见,数字是整数。

这是我的Pen

我的代码中有东西吗?

这里是:

using System;

public static class Leap
{
    public static bool IsLeapYear(int year)
    {
        if (year % 4 == 0 && year % 100 == 0) 
        {
            return true;    
        }
        else
        {
            return false;
        }
    }

    public static void main()
    {
        int yearq = 2015;
        bool result = IsLeapYear(yearq);
        Console.WriteLine(result);
    }
}

编辑:

问题似乎不在于该功能,而在于Game.combat:

Weapon.prototype.use = function(target) {
  let dmg = Math.round((Math.random() * 3) + this.damage)

  if (dmg > target.hp) {
    target.hp = 0;
  } else {
    target.hp = target.hp - dmg
    console.log(target.hp + ' ' + dmg)
  }

  if (target.hp < 0) {
    target.hp = 0
  }

  return 'You did ' + dmg + ' damage.'
}

0 个答案:

没有答案