私は小さなマルチプレイヤーゲームを構築しており、覚えにくい時間があります。setInterval
の設定です。私は、クールダウン時に実行する能力を与えたり、実際の時間間隔(5秒ごとや2秒間のクールダウン)で特定のオブジェクトをスポーンする能力をプレイヤーに与えたいとします。問題は、サーバsetInterval
をリアルタイムコンセプトと同期できないことです。例えばnodejs setintervalリアルタイムに変換する
私はcooldownsを実行し、このループがあります。
setInterval(function() {
game.mechanics.buffered.cooldowns.run();
}, 10);
を私は高い数値にそれを置く場合、私は、彼らは私がこの10
値を下げた場合、cooldownsを高速に実行することを通知遅くなるが、私していますどのようにリアルタイムで同期させるのか分かりません。私は最初の場所でサーバのループにどのような値を入れておくべきか知っていませんが、今のところは10ms
で満足していますが、リアルタイムのクールダウンは現時点ではうまくいきません。
ロジックポイントはsetTimeout
ですが、setInterval
は、setTimeout
の間はプログレスバーを提供する可能性があります。
このループを正しく設定するにはどうすればいいのでしょうか?それで、2秒間持続して2秒後に実行されるクールダウンオブジェクトで言うことができます。
'問題は、サーバのsetIntervalループとリアルタイムコンセプトを同期できないことです。 ' - ハァッですか? 'Date.now()'は常にあります。 –