各種パラメータを指定して Scene
のインスタンスを生成する。
初期化に用いるパラメータのオブジェクト
このシーンで利用できるアセットへのアクセッサ。
歴史的経緯による assets
との違いに注意。
assets
は「このシーンの生成時に読み込んだアセット」に「アセットIDをキーにして」アクセスするテーブルである。
他方この asset
は getImageById()
, getAllTexts()
などのメソッドを持つオブジェクトである。
アセットIDだけでなくパスでのアクセスや、複数アセットの一括取得ができる点で異なる。
アセット読み込み完了イベント。
このシーンのアセットが一つ読み込みに失敗または成功する度にfireされる。 アセット読み込み中の動作をカスタマイズしたい場合に用いる。
アセット読み込み成功イベント。
このシーンのアセットが一つ読み込まれる度にfireされる。 アセット読み込み中の動作をカスタマイズしたい場合に用いる。
アセット読み込み失敗イベント。
このシーンのアセットが一つ読み込みに失敗する度にfireされる。
アセット読み込み中の動作をカスタマイズしたい場合に用いる。
このイベントをhandleする場合、ハンドラは AssetLoadFailureInfo#cancelRetry
を真にすることでゲーム続行を断念することができる。
このシーンで利用できるアセット。
アセットID をkeyに、対応するアセットのインスタンスを得ることができる。
keyはこのシーンの生成時、コンストラクタの第二引数 assetIds
に渡された配列に含まれる文字列でなければならない。
このシーンの子エンティティ。
エンティティは Scene#append()
によって追加され、 Scene#remove()
によって削除される。
このシーンの属するゲーム。
読み込み完了イベント。
このシーンの生成時に(コンストラクタで)指定されたすべてのアセットの読み込みが終了した後、一度だけfireされる。 このシーンのアセットを利用するすべての処理は、このイベントのfire後に実行されなければならない。
このシーンのローカルティック消化ポリシー。
"non-local"
が与えられた場合、このシーンは非ローカルシーンと呼ばれる。
非ローカルシーンでは、他プレイヤーと共通の時間進行処理((非ローカル)ティックの消化)が行われる(onUpdateがfireされる)。"full-local"
が与えられた場合、このシーンはローカルシーンと呼ばれる。
ローカルシーンでは、他プレイヤーと独立な時間進行処理(ローカルティックの消化)が行われる。"interpolate-local"
が与えられた場合、このシーンはローカルティック補間シーンと呼ばれる。
ローカルティック補間シーンは、非ローカルシーン同様にティックを消化するが、
消化すべき非ローカルティックがない場合にローカルティックが補間され消化される。ローカルシーンとローカルティック補間シーンに属するエンティティは、 すべてローカルである(強制的にローカルエンティティとして生成される)。 ローカルシーンは特にアセットロード中のような、他プレイヤーと同期すべきでないシーンのために存在する機能である。
この値は参照のためにのみ公開されている。ゲーム開発者はこの値を変更すべきではない。
汎用メッセージイベント。
シーンの識別用の名前。
アセット読み込み成功イベント。
このシーンのアセットが一つ読み込まれる度にfireされる。 アセット読み込み中の動作をカスタマイズしたい場合に用いる。
アセット読み込み完了イベント。
このシーンのアセットが一つ読み込みに失敗または成功する度にfireされる。 アセット読み込み中の動作をカスタマイズしたい場合に用いる。
アセット読み込み失敗イベント。
このシーンのアセットが一つ読み込みに失敗する度にfireされる。
アセット読み込み中の動作をカスタマイズしたい場合に用いる。
このイベントをhandleする場合、ハンドラは AssetLoadFailureInfo#cancelRetry
を真にすることでゲーム続行を断念することができる。
読み込み完了イベント。
このシーンの生成時に(コンストラクタで)指定されたすべてのアセットの読み込みが終了した後、一度だけfireされる。 このシーンのアセットを利用するすべての処理は、このイベントのfire後に実行されなければならない。
汎用メッセージイベント。
シーン内での操作イベント。
シーン内でのpoint downイベント。
このイベントは E#onPointDown
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint downイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーン内でのpoint moveイベント。
このイベントは E#onPointMove
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint moveイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーン内でのpoint upイベント。
このイベントは E#onPointUp
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint upイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーンの状態変更イベント。
状態が初期化直後の "standby"
状態以外に変化するときfireされる。
時間経過イベント。本イベントの一度のfireにつき、常に1フレーム分の時間経過が起こる。
シーン内での操作イベント。
シーン内でのpoint downイベント。
このイベントは E#onPointDown
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint downイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーン内でのpoint moveイベント。
このイベントは E#onPointMove
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint moveイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーン内でのpoint upイベント。
このイベントは E#onPointUp
とは独立にfireされる。
すなわち、シーン内に同じ位置でのpoint upイベントに反応する E
がある場合もない場合もこのイベントはfireされる。
シーンスタック上のこのシーンが描画される時、それに先んじてこのシーンの直下のシーンを描画するかどうか。
このシーン自体は seethrough
の値に関わらず常に描画されることに注意。
ただし seethrough
が true の時でもこのシーン以外の onUpdate は実行されない。そのため下のシーンの描画内容も更新されない。この挙動は実験的なものであり、将来的に変更されうる。
シーンの状態。
時間経過の契機(ティック)をどのように生成するか。
"manual"
の場合、 Game#raiseTick()
を呼び出さない限りティックが生成されない(時間経過しない)。
ただしローカルティック(ローカルシーンの間などの「各プレイヤー間で独立な時間経過処理」)はこの値の影響を受けない。
またこのシーンへの遷移直後、一度だけこの値に関わらずティックが生成される。
この値は参照のためにのみ公開されている。ゲーム開発者はこの値を変更すべきではない。
時間経過イベント。本イベントの一度のfireにつき、常に1フレーム分の時間経過が起こる。
ゲーム開発者向けのコンテナ。
この値はゲームエンジンのロジックからは使用されず、ゲーム開発者は任意の目的に使用してよい。
setIntervalで作成した定期処理を解除する。
解除対象
setTimeoutで作成した処理を削除する。
解除対象
このシーンを破棄する。
破棄処理の開始時に、このシーンの onStateChange
が引数 BeforeDestroyed
でfireされる。
破棄処理の終了時に、このシーンの onStateChange
が引数 Destroyed
でfireされる。
このシーンに紐づいている全ての E
と全てのTimerは破棄される。
Scene#setInterval()
, Scene#setTimeout()
に渡された関数は呼び出されなくなる。
このメソッドは Scene#end
や Game#popScene
などによって要求されたシーンの遷移時に暗黙に呼び出される。
通常、ゲーム開発者がこのメソッドを呼び出す必要はない。
シーン内でその座標に反応する PointSource
を返す。
対象の座標
Optional
force: booleantouchable指定を無視する場合真を指定する。指定されなかった場合偽
Optional
camera: Camera対象のカメラ。指定されなかった場合undefined
次のシーンへの遷移を要求する。
このメソッドは、 toPush
が真ならば Game#pushScene()
の、でなければ Game#replaceScene
のエイリアスである。
このメソッドは要求を行うだけである。呼び出し直後にはシーン遷移は行われていないことに注意。
このシーンが現在のシーンでない場合、 AssertionError
がthrowされる。
遷移後のシーン
Optional
toPush: boolean現在のシーンを残したままにするなら真、削除して遷移するなら偽を指定する。省略された場合偽
一定間隔で定期的に実行される処理を作成する。
interval
ミリ秒おきに owner
を this
として handler
を呼び出す。
戻り値は Scene#clearInterval
の引数に指定して定期実行を解除するために使える値である。
このタイマーはフレーム経過処理(Scene#onUpdate
)で実現される疑似的なタイマーである。実時間の影響は受けない。
関数は指定時間の経過直後ではなく、経過後最初のフレームで呼び出される。
処理
実行間隔(ミリ秒)
Optional
owner: anyhandlerの所有者。省略された場合、null
一定時間後に一度だけ実行される処理を作成する。
milliseconds
ミリ秒後(以降)に、一度だけ owner
を this
として handler
を呼び出す。
戻り値は Scene#clearTimeout
の引数に指定して処理を削除するために使える値である。
このタイマーはフレーム経過処理(Scene#onUpdate
)で実現される疑似的なタイマーである。実時間の影響は受けない。
関数は指定時間の経過直後ではなく、経過後最初のフレームで呼び出される。
(理想的なケースでは、30FPSなら50msのコールバックは66.6ms時点で呼び出される)
時間経過に対して厳密な処理を行う必要があれば、自力で Scene#onUpdate
通知を処理すること。
処理
時間(ミリ秒)
Optional
owner: anyhandlerの所有者。省略された場合、null
シーンを表すクラス。