new GameTaskControl(game)
ゲーム内の個々のタスク(`GameTask`インスタンス)を管理するコントローラです。
\ タスクの追加、削除、読み込み、そしてゲームループにおける
\ `step`(更新)と`draw`(描画)の実行を制御します。
\ タスクの追加、削除、読み込み、そしてゲームループにおける
\ `step`(更新)と`draw`(描画)の実行を制御します。
Parameters:
| Name | Type | Description |
|---|---|---|
game |
GameCore | ゲーム本体のインスタンス |
- Source:
Example
game.task.add( new gametask( id ));
game.task.del( id );
game.task.read( id );
//id:管理用に任意の重複しない文字列や数字を指定する。
//*タスクの雛形*
class gametask( id ) extends Gametask {
constructor(id){
super(id);
//new で実行される。
}
init( g ){}// task.add時に実行される。
pre( g ){} // 最初の実行時に実行。
step( g ){}// this.enable が true時にループ毎に実行される。
draw( g ){}// this.visible が true時にループ毎に実行される。
}
this.enable = true; // true : run step false: pause step
this.visible = true; // true: run draw false: pause draw
//gにはGameCoreオブジェクトが入るので経由でデバイスやアセットにアクセスする。
Methods
add(GameTask) → {void}
新しい`GameTask`インスタンスを実行リストに追加します。
\ タスクの`init`メソッドを呼び出して初期化を行い
\ タスク数とタスク名リストを更新します。
\ タスクの`init`メソッドを呼び出して初期化を行い
\ タスク数とタスク名リストを更新します。
Parameters:
| Name | Type | Description |
|---|---|---|
GameTask |
GameTaskClass | instance object |
- Source:
Returns:
- Type
- void
count() → {number}
現在実行リストに登録されている`GameTask`の総数を返します。
\ これにより、アクティブなタスクの数を把握できます。
\
\ これにより、アクティブなタスクの数を把握できます。
\
- Source:
Returns:
タスク数
- Type
- number
del(id) → {void}
指定されたIDを持つ`GameTask`オブジェクトを実行リストから削除します。
\ 削除前にタスクの`post`メソッドを呼び出して終了処理を行い、
\ その後、リストからタスクを破棄します。
\ 削除前にタスクの`post`メソッドを呼び出して終了処理を行い、
\ その後、リストからタスクを破棄します。
Parameters:
| Name | Type | Description |
|---|---|---|
id |
number | string | Unique Identifier |
- Source:
Returns:
- Type
- void
draw() → {void}
実行リストに登録されている全ての`GameTask`の`draw`メソッドを呼び出します。
\ 各タスクが`visible`状態であれば、画面への描画ロジックが実行され、
\ ゲームのグラフィックが更新されます。
\ 各タスクが`visible`状態であれば、画面への描画ロジックが実行され、
\ ゲームのグラフィックが更新されます。
- Source:
Returns:
- Type
- void
init(id) → {void}
指定されたIDの`GameTask`オブジェクトの`init`メソッドを明示的に実行します。
\ これは、タスクの追加時だけでなく、
\ 必要なタイミングでタスクの初期化を再度行いたい場合に利用できます。
\ これは、タスクの追加時だけでなく、
\ 必要なタイミングでタスクの初期化を再度行いたい場合に利用できます。
Parameters:
| Name | Type | Description |
|---|---|---|
id |
number | string | Unique Identifier |
- Source:
Returns:
- Type
- void
namelist() → {string}
現在実行リストに登録されている全ての`GameTask`のIDを
\ 文字列リストとして返します。
\ これにより、どのタスクが現在管理されているかを一覧で確認できます。
\ 文字列リストとして返します。
\ これにより、どのタスクが現在管理されているかを一覧で確認できます。
- Source:
Returns:
Id一覧の文字列
- Type
- string
read(id) → {GameTaskClass}
指定されたIDを持つ`GameTask`オブジェクトをタスクリストから取得して返します。
\ これにより、特定のタスクに直接アクセスし、
\ その状態やプロパティを参照・操作できます。
\ これにより、特定のタスクに直接アクセスし、
\ その状態やプロパティを参照・操作できます。
Parameters:
| Name | Type | Description |
|---|---|---|
id |
number | string | Unique Identifier |
- Source:
Returns:
GameTask instance object
- Type
- GameTaskClass
signal(target, from, id, desc)
メッセージシグナルを登録します。
\ 次のステップが処理される際に対象のタスクの
\ signalメソッドが呼び出されます。
\ 次のステップが処理される際に対象のタスクの
\ signalメソッドが呼び出されます。
Parameters:
| Name | Type | Description |
|---|---|---|
target |
taskId | 対象(送信先)のタスクID |
from |
taskId | 送信元のタスクID |
id |
number | string | シグナルID(処理側で決定) |
desc |
* | (何を入れる/どう使うかなどは処理側で決定) |
- Source:
- To Do:
-
- broadcastメッセージの実装(必要な場合)
step() → {void}
実行リストに登録されている全ての`GameTask`の`step`メソッドを呼び出します。
\ 各タスクが`enable`状態であれば、ゲームの更新ロジックが実行され、
\ 初回実行時には`pre`メソッドも呼び出されます。
\ 各タスクが`enable`状態であれば、ゲームの更新ロジックが実行され、
\ 初回実行時には`pre`メソッドも呼び出されます。
- Source:
Returns:
- Type
- void