Ced*_*Ced 1 javascript timer game-development phaser-framework
我正在使用以下代码(这是一个简化的代码片段,以便使其更具可读性):
var player;
var box_tnt;
function create (){
this.physics.add.collider(player, box_tnt, hitTnt, null, this);
}
//the function hitTnt stop the game because the player died
function hitTnt (player, boxes){
this.physics.pause();
player.setTint(0xff0000);
player.anims.play('default');
gameOver = true;
textGameOver.setText('GAME OVER');
}
Run Code Online (Sandbox Code Playgroud)
当玩家击中炸弹时:玩家死亡;游戏结束
当玩家击中炸弹时:炸弹等待3秒然后爆炸!如果玩家距离太近,他就会死亡。但即使在阅读了论坛上的很多示例之后,我仍然很难使用计时器。我是 Phaser 的新手,所以到目前为止我还没有成功。
任何帮助将不胜感激,预先感谢您!
小智 5
假设您使用的是 Phaser 3,这些是您可以使用计时器的方法。
delayedCall(delay, callback, args, callbackScope)
所以,你会做这样的事情。
this.time.delayedCall(2000, onEvent, null, this);
addEvent(config)
配置文档
this.time.addEvent({ delay: 2000, callback: onEvent, callbackScope: this });
在此处的文档中找到这些方法。
在此处查找计时器事件的示例。
您可以做的其他事情是,如果您有任何播放 3 秒的补间(如果您正在补间炸弹或将其动画化 3 秒)。您可以将onComplete
回调附加到它。因此,在 Tween 结束后,onComplete
回调将被执行。