无法在画布中重置组

时间:2016-12-16 02:35:34

标签: javascript html5 phaser-framework

我一直致力于我的侧面滚动游戏,在画布上生成随机外星人。游戏有基本的街机物理和射击,我现在正在为我的游戏重新启动功能,我已经到目前为止重置了画布上的生命,得分和玩家。但是我在重置外星人群时遇到了麻烦。我的外星人代码是create函数,但是当我在restart函数中调用create aliens函数时,它超出了范围。我跟着这个link作为例子,但它也没有工作。

有没有更好的方法在phaser中重启组?

这是我的小组代码:

//Creates a group of 35 aliens.
function createAliens(){
     aliens = game.add.group();
     aliens.enableBody = true;
     aliens.createMultiple(35, 'aliens', 0, false);



     game.time.events.repeat(Phaser.Timer.SECOND, 20, resurrect, this);

//ressurects the alien from the group and adds it to the group, and gives it movement & physics.
function resurrect() {
       var ufos = aliens.getFirstDead();

       if(ufos){
         ufos.reset(game.world.randomX, game.world.randomY);

         ufos.body.velocity.setTo(10 + Math.random() * 40, 10 + Math.random() * 40);

         ufos.body.bounce.setTo(0.5, 0.5);
         ufos.body.collideWorldBounds = true;
         ufos.frame = game.rnd.integerInRange(0,36);
       }
     }
}

这是我的重启功能:

function restart(){

  lives.callAll('revive');

  aliens.removeAll();
  player.revive();
  console.log(createAliens());

  deadTxt.visible = false;
  score = 0;



}

和我的github repo,如果你喜欢玩游戏:)

0 个答案:

没有答案