Phaser碰撞:执行一次功能

时间:2014-12-07 14:02:34

标签: javascript html5 phaser-framework

使用Phaser API时,我在碰撞中遇到一些问题。

我有这段代码:

game.physics.arcade.collide(sprite1, sprite2, this.collision, null, this);

   collsion: function(){
      //Play a sound;
   }

这里的问题是当两个精灵碰撞时声音继续播放。它只在不碰撞时停止。但我想一次播放声音。

1 个答案:

答案 0 :(得分:0)

自我测试后

编辑

尝试重叠

create : function() {
...
this.timeDelay = 0;
}

game.physics.arcade.overlap(sprite1, sprite2, this.overlap, null, this);

overlap: function(){
    if (game.time.now > this.timeDelay){
                game.sound.play("sound");
                // wait 1 second
                timeDelay = game.time.now + 1000
    }
}