![](/img/trans.png)
[英]Phaser - How to properly implement Arcade Physics Collisions with Phaser.js
[英]How to implement a good timer in Phaser JS
嗨,我目前正在為我的應用開發計時器,我將使用phonegap將其移植到具有約10秒計時器的球類游戲的Android手機上
目前我正在使用timer ++增量
createLevel: function(lvl) {
// create levels manually
// TODO: import from level editor
switch(lvl) {
case 1: {
timer2 = 11;
walls.create((320-128)/2, (480-32)/2, 'element-w').body.immovable = true;
break;
}
case 2: {
timer2 = 11;
walls.create code here
break;
}
case 3: {
timer2 = 11;
walls.create code here
break;
}
case 4: {
timer2 = 11;
walls.create code here
break;
}
case 5: {
timer2 = 11;
walls.create code here
break;
}
case 6:{
timer2 = 11;
walls.create code here
break;
}
case 7:{
timer2 = 11;
walls.create code here
break;
}
case 8:
{
timer2 = 11;
walls.create code here
break;
}
case 9:
{
timer2 = 11;
walls.create code here
break;
}
case 10:
{
timer2 = 11;
walls.create code here
break;
}
default: {
break;
}
}
},
updateCounter: function() {
timer++;
timer2--;
timerText.content = "Time: "+timer2;
totalTimeText.content = "Total time: "+(totalTimer+timer);
if(timer2==-1)
{
//this.game.add.text(320/3, 480/2, "GAMEOVER", { font: "36px Cambria", fill: "#ffff00" });
this.game.paused =! this.game.paused;
this.buttonContinue = this.add.button(0, 0, 'gameover', this.mainM, this);
totalTimer=0;
timer=-2;
level=1;
//this.buttonContinue = this.add.button(0, 0, 'screen-howtoplay', this.game.state.start('MainMenu');, this);
}
我在游戲結束前使用計時器添加到總計時器中,並使用timer2將實際計時器設置為11
但是,當游戲滯后時,計時器會以令人難以置信的快速速度毀掉我的游戲,那么我該如何實施,即使設備滯后,計時器仍能正常運行?
看來您的計時器不是通過計時事件來完成的,而是由更新功能來操縱的。 這意味着它受幀速率的影響。 我建議做這樣的事情:
game.time.events.add(/*time in ms*/, /*func to be called after timer ends*/, this);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.