Javascript函数,需要每隔30秒递减一次

Javascript function, need to decrement every 30 secs time elapsed

本文关键字:一次 30秒 函数 Javascript      更新时间:2023-09-26

我试图让this.SPAWN_FREQUENCY在经过30秒、1分钟、2分钟等时间后减少200。基本上,游戏中的关卡增加了要击败的敌人数量。我已经尝试了大量的代码,但仍然无法获得任何工作
从哪里开始有什么建议吗
很抱歉我没有提供足够的详细信息。

 function EnemyManager (timer) {
       this.enemies = [];
       this.SPEED = -5;
       this.SPAWN_FREQUENCY = 1300;
       this.spawnTimer = 0;

是否添加"if"语句

使用setTimeout

     (function () {
            var interval = 1000*30;
           var SPAWN_FREQUENCY = 1300;
            timer = function() {
               
                SPAWN_FREQUENCY = SPAWN_FREQUENCY - 200;
                //do the rest
                console.log(SPAWN_FREQUENCY);
             
                    setTimeout(timer, interval);
     interval = interval*2;
            };
            timer();
        })();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

你有没有尝试过这样的东西:

function Manager(){
  this.SPAWN_FREQUENCY = 1300;
  this.inc();
}
Manager.prototype.inc = function(){
   var this_store = this;
   setTimeout(function(){
      this_store.SPAWN_FREQUENCY -= 200;
      this_store.inc();
   }, 100);
};

您的函数:

var element = this;    
var spawninterval = window.setInterval(function(){
   element.SPAWN_FREQUENCY -= 200;
},30000);

当你完成后,你可以打电话给

window.clearInterval(spawninterval);