2015-04-04 102 views
0

我试图使this.SPAWN_FREQUENCY在经过时间达到30秒,1分钟,2分钟等之后减少200。游戏中的基本级别增加了敌人的击败数量。我已经尝试了一段代码,仍然无法获得任何工作。
任何建议从哪里开始?
对不起,如果我没有提供足够的细节。Javascript函数,需要每30秒过去一次减量

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

我要添加'if'语句吗?

回答

0

使用的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>

0

你尝试过这样的:

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); 
}; 
0

您的功能:

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

当您完成后,您可以致电

window.clearInterval(spawninterval);