早送り中の描画を変更する
凡例
組み込みの早送り表示を利用する
game.json
の defaultSkippingScene
プロパティの値を変更します。
json
{
...,
"defaultSkippingScene": "indicator"
}
早送り中の表示をカスタマイズする
javascript
var skippingScene = ...; // 早送り中に表示したいシーン
g.game.skippingScene = skippingScene;
詳細
game.json
の defaultSkippingScene
プロパティの値を変更することで早送り中の表示を変更することができます。
"fast-forward"
を指定、または省略した場合は早送り中のゲーム状態をそのまま描画します。"indicator"
を指定すると早送り中にエンジンで用意されている専用のスキッピングシーンを描画します。"none"
を指定すると早送り中の描画内容を非表示にできます。
または g.game.skippingScene
に独自のシーンを代入することで描画内容をカスタマイズできます。 この際、代入できるシーンには以下の制約があります。
- 使用できるのは
local
が"full-local"
のシーンのみ - 非グローバルアセットは利用不可
- アセットを利用する場合はグローバルで定義しておく必要があります。アセットについての詳細は こちらのページ を参照してください。
- スキッピングシーンのインスタンス生成は一度のみで、早送りが発生するたびに使い回される
- したがって
g.Scene#onLoad
は一度しか発火しません。
- したがって
TIP
実装の制約上、グローバルアセットの読み込み時間や g.game.skippingScene
への代入までは上記の組み込みの描画が適用されます。 また g.game.skippingScene
に undefined
を代入することで組み込みの描画へと切り替えることができます。
実装例
早送り中に "読み込み中..."
という文字を画面中央に表示するサンプル
NOTE
このサンプルはスタンドアロンモードで実行されているため、早送り中の描画を確認することは難しいでしょう。 画面内のボタンからコンテンツをダウンロード後、 akashic serve
コマンドを実行することで早送りの表示を確認することができます。