我正在用JavaScript编写游戏,我有这行代码:
setInterval(function () {spawnEnemy()}, 3000);
目前每3000毫秒产生一个敌人,但是我希望它每10秒将这个速度降低20%,这样它最终会真正快速地产生敌人。我尝试通过嵌套setInterval来做到这一点,但我成功完成的只是崩溃我的浏览器。任何人都可以为我想要完成的事情提供正确的代码吗?
答案 0 :(得分:2)
有些事情:
var interval = 3000;
function spawn() {
var adjustmentPercentage = (0.2 / 10000) * interval
spawnEnemy();
interval = interval - (interval * adjustmentPercentage);
setTimeout(spawn, interval);
}
使用setTimeout可以每次更改延迟。