GameState
GameState のプロパティとメソッド。オーディオマネージャー、シーンのプリロード、行の進行の一時停止を含む
このページは作成中です。
ベータ機能であり、変更される可能性があります。
GameState はプレイヤーコンポーネントによって作成され、liveGame.serialize など他の主要なクラスへ渡す
ことができます。
公開プロパティ
game
Game- ゲームインスタンス
audioManager
ゲームのオーディオキャッシュと再生を管理するマネージャーです。
// 音源を再生せずに、フェッチしてデコードし、オーディオキャッシュへ入れる
void gameState.audioManager.preload(bgm);preload(sound: Sound): Promise<void>- 音源を 1 つ温めます。0.17.0以降で利用可能です。読み込みに 失敗した音源は警告としてログに記録されるだけで、代わりに初回再生時に読み込まれるため、この Promise は reject しません。返り値の Promise で何かをゲートしないでください。ブラウザの自動再生ポリシーが ユーザー操作によって満たされるまでオーディオコンテキストはロックされたままなので、正当に保留し続ける ことがあります。詳細はプリロードを参照 してください。
公開メソッド
preloadScene
マウントしたりアクションを実行したりせずに、資源を温めておくシーンを指定します。
gameState.preloadScene(scene); // または Story を渡すと、その入口シーンが使われる0.17.0 以降、Player はストーリーの入口シーンを自動的に登録します。ただし、これはプリロード中のシーンも
マウント済みのシーンも存在しないときに限られるため、先にこのメソッドを呼んでおけば自分の選択を維持できます。
詳細はプリロードを参照してください。
arg: Scene | Story- 温めるシーン、または入口シーンが使われるストーリー。入口シーンを持たない ストーリーを渡すと例外を送出します。- 返り値:
this
suspendAdvance
現在の行をその場に留めます。少なくとも 1 つの一時停止が残っている間は、ステージのクリック、進行キー、
スキップキーのいずれも効果を持ちません。0.27.0 以降で利用可能です。
const release = gameState.suspendAdvance();
// ...
release();一時停止は入れ子にできます。すべてが解除されて初めて行が再開します。返される関数は複数回呼んでも安全です。
React コンポーネント内では useSuspendAdvance を 使ってください。コンポーネントに合わせて一時停止の取得と解除を行います。
- 返り値:
() => void- この一時停止を解除する
isAdvanceSuspended
現在この行を留めているものがあるかどうかです。0.27.0 以降で利用可能です。
- 返り値:
boolean