UIタスクの標準プロパティ ¶
ツリー化可能とされるUIタスクは、すべて共通のプロパティを持ちます。
- .alpha 表示上の alpha 値
- .color 表示上の RGB 値
- .scaleX 表示上のscale値(x方向)
- .scaleY 表示上のscale値(y方向)
- .rot 表示上の回転角(正方向で時計廻り。単位は degree)
- .x 表示位置(x)
- .y 表示位置(y)
- .visible 表示の可否(boolean)
これらは同じ手続きで操作できます。
UIタスクの標準コマンド ¶
ツリー化可能とされるUIタスクは、すべて共通のコマンドを受け付けます。
- UI_GENERIC_NODE_RECONNECT
注意:このコマンドは本来望ましくない処理を行うものであり、動作を理解しないまま使用するのは大変危険であるため、正しい動作を理解の上自己責任で使用すること!!
自身の「代表ノード」を接続する先を、親タスクの持つ代表ノードではなく、 親タスクの代表ノード以下になる別のノードに変更する。
接続先のノードは名前で指定する。 親タスクが存在しなければならず、またUIタスクでなければならない。 親タスクが指定の名称のノードを持たない場合は基本的に何もしない。
接続先として指定するノードは、親タスクが保有するノードでなければならない。同じ親を持つ兄弟の階層となったタスクが保有しているノードが、指定した名前を持つ場合の動作は保障しない。
また、このコマンドはUIタスクの持つSceneGraphを上位となるUIタスクのRootノード以外のノードに接続しなおすだけであり、 Compositeのロードにより起動されるタスクのような「タスク付きノード」を生成するものではない。このため、UI_FormやUI_Listの UI_(FORM|LIST)_UPDATE_NODE の FORM_NODE_TASKでタスクポインタを取得することはできないことに注意。
- UI_GENERIC_NODE_RECONNECT
pParent UI_*( ... ) pChild= UI_*(pParent, ...) sysCommand(pChild, UI_GENERIC_NODE_RECONNECT, "<reconnect node name>") ※上記例の場合、pParent が持つツリーに、<reconnect node name>で指定した名称のノードが無ければならない。
- UI_GENERIC_SET_NAME
- そのUIタスクの持つRootノードに、検索で使用可能な名前を与える。
ただし、Rootノードが既に名前を持っている場合は再設定できない。Compositeから生成されたUIタスクや、すでに名前を与えられている場合がこれに該当する。
- UI_GENERIC_SET_NAME
pTask = UI_*( ... ) sysCommand(pTask, UI_GENERIC_SET_NAME, "<new task name>")
- UI_GENERIC_ANIM_SET_SPLINE
- 自身の代表ノードに対し、スプラインアニメーションを設定する。 スプラインアニメーション情報はLuaテーブルの形式で与える。
現在再生中のアニメーションがある場合は、このコマンド呼び出しによって停止される。
- UI_GENERIC_ANIM_SET_SPLINE
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_ANIM_SET_SPLINE, <table-spline-data>) <table-spline-data> = { { target = <modify-target>, mode = <value-mode>, keys = { { <time>, <value> }, { <time>, <value> }, { <time>, <value> }, { <time>, <value> }, : : }, }, { target = <modify-target>, mode = <value-mode>, keys = { { <time>, <value> }, { <time>, <value> }, { <time>, <value> }, { <time>, <value> }, : : }, }, : : } <modify-target> 以下のうちどれか一種を指定。 SPL_MODIFY_X SPL_MODIFY_Y SPL_MODIFY_SCALE SPL_MODIFY_R SPL_MODIFY_G SPL_MODIFY_B SPL_MODIFY_A SPL_MODIFY_ROT <value-mode> 以下のうち、どちらかを指定。指定されない場合は SPL_VALUE_INT 扱いになる。 SPL_VALUE_INT <value>を整数で指定。 SPL_VALUE_NUM <value>を実数で指定。 <time> キーの時刻 <value> <time>で指定された時刻における値(値の形式は<value-mode>で指定)
- UI_GENERIC_ANIM_PLAY
-
自身の代表ノードに設定されたスプラインアニメーションを再生する。
実行前に、UI_GENERIC_ANIM_SET_SPLINE でアニメーション情報が設定されている必要がある。
- UI_GENERIC_ANIM_PLAY
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_ANIM_PLAY)
- UI_GENERIC_ANIM_PLAY
- UI_GENERIC_ANIM_STOP
-
自身の代表ノードに設定されたスプラインアニメーションが再生中の場合に、それを停止する。
- UI_GENERIC_ANIM_STOP
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_ANIM_STOP)
- UI_GENERIC_ANIM_STOP
- UI_GENERIC_IS_ANIM
-
自身の代表ノードが現在アニメーション中か否かを返す。
- UI_GENERIC_IS_ANIM
pParent UI_*( ... ) <is-animating> = sysCommand(pChild, UI_GENERIC_IS_ANIM) <is-animating> trueでアニメーション中、falseで停止中
- UI_GENERIC_IS_ANIM
- UI_GENERIC_SET_COLOR
-
標準プロパティ .alpha および .color を設定する。
- UI_GENERIC_SET_COLOR
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_SET_COLOR, <alpha>, <rgb>)
- UI_GENERIC_SET_COLOR
- UI_GENERIC_SET_SCALE
-
標準プロパティ .scaleX および .scaleYを設定する。
- UI_GENERIC_SET_SCALE
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_SET_SCALE, <scale-x>, <scale-y>)
- UI_GENERIC_SET_SCALE
- UI_GENERIC_SET_ROT
-
標準プロパティ .rot を設定する。
- UI_GENERIC_SET_ROT
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_SET_ROT, <rot>)
- UI_GENERIC_SET_ROT
- UI_GENERIC_SET_VISIBLE
-
標準プロパティ .visible を設定する。
- UI_GENERIC_SET_VISIBLE
pParent UI_*( ... ) sysCommand(pChild, UI_GENERIC_SET_VISIBLE, <visible>)
- UI_GENERIC_SET_VISIBLE