JS三秒钟后做动作

时间:2019-03-17 19:50:25

标签: javascript

我想在这里做的是让我每三秒钟攻击一次怪物。这是我的代码:

                user.last_attack_time = Date.now();
                user.save();


            let nextAttack = user.last_attack_time+3000;

            if(user.last_attack_time <= nextAttack) {

如果我的攻击速度超过一秒,if语句仍然有效。这里可能是什么问题?

2 个答案:

答案 0 :(得分:3)

您想要if(Date.now() >= nextAttack)

答案 1 :(得分:0)

如果愿意

let x = a_function_returning_a_number();
let y = x + 3000;
if (y < x) { ... }

您真的希望括号内的代码能够执行吗?

您应该做的是:

let t = Date.now();
if (t > this.last_attack+3000) {
    // Valid attack
    this.last_attack = t;
    ...
}