2016-05-03 19 views
0

JavaScriptを使いこなしていて、これに続いてtutorial私はゲームの仕事を完璧にしました。すべてのオブジェクトを破壊すると、レベルの変更が行われました。しかし、私が学んでいるところでは、遅らせることなくレベルを変える方法を見つけようとしています。関数に遅延を追加しない方法

レベルを切り替えるビットの主要部分である:

if (!this.rockmodel.countLiving()) { 
    Asteroid.time.events.add(Phaser.Timer.SECOND * gameWindow.delayToStartLevel, this.levelIncrease, this); 
} 
しかし

IはdelayToStartLevelビットを取り出す場合は、レベルを切り替えません。だから、私はそれをこのように見せようとしました:

Asteroid.time.events.add(this.levelIncrease, this); 

しかし、次のレベルは全く表示されません。私が馬鹿な人であるかどうかは分かりませんが、この問題についての助けがあれば大丈夫です。

もう一度やり直してください。遅れてもうまく動作しますが、その機能を完全に削除したいのですが、まったく機能しません。

ありがとうございました。

+1

'置き換えるgameWindow.delayToStartLevel' 0 – RST

+0

@RST勤務おかげでそんなにxxを持つ最初のカンマの前に0(ゼロ)または置き換えるすべてと – Nevershow2016

答えて

1

time.events.addは、イベントをPhaserゲームオブジェクトに追加します。言い換えると、Xミリ秒後に与えられた関数を起動します。

遅延を必要としない場合は、関数呼び出しを延期するのではなく、直接関数を呼び出すことができます。このような何か:

if (!this.rockmodel.countLiving()) { 
    this.levelIncrease(); 
} 
関連する問題