我是JavaScript的新手并遵循这个tutorial我已经让游戏完美地运行了,当你摧毁所有对象时,它的等级变化了。然而,正如我正在学习的那样,我正在试图弄清楚如何使它变得水平而不会有任何延迟。
切换级别的位的主要部分是:
if (!this.rockmodel.countLiving()) {
Asteroid.time.events.add(Phaser.Timer.SECOND * gameWindow.delayToStartLevel, this.levelIncrease, this);
}
但是如果我取出delayToStartLevel
位,它就不会切换级别。所以我试着让它看起来像这样:
Asteroid.time.events.add(this.levelIncrease, this);
但是下一个级别根本没有显示。我不确定自己是不是白痴等,但对此事的任何帮助都会很棒。
再次只是为了说明一点,它在延迟时工作正常,我想彻底摆脱这个功能,但它根本不起作用。
感谢。
答案 0 :(得分:1)
time.events.add
会向Phaser游戏对象添加一个事件。换句话说,它将在X毫秒后触发给定的函数。
如果您不想延迟,那么您可以直接调用该函数,而不是推迟函数调用。像这样:
if (!this.rockmodel.countLiving()) {
this.levelIncrease();
}