■AnimElem【アニメ表示Elem】

▼概要
表示しているアニメのElemの位置を専用の条件式で認識する。
AnimElem単体を数値としては使えない。
アニメの番号はT-/Anim、アニメの時間はT-/AnimTime
Elemを含めた情報はT-/AnimElemT-/AnimElemTime()T-/AnimElemNo()を参照。
(指定Elemからの時間は無印Time()、指定時間後のElemはNo()から感知できる。)
アニメの存在はT-/AnimExist()T-/SelfAnimExist()から。他、File-/Airファイルについても参照。

▼情報・書式
AnimElem = (int型:基準値), (比較記号) (int型:比較値) ;等号不等号式による条件式、bool型
  • 左側の基準値へ「基準とするElem」を入れる。
    • Elemの数え方は1枚目、2枚目と1から数える。
    • 基準とするElemが存在しない場合エラーが流れる。
  • 右側の比較値には「基準値からのフレーム数」を入力。
    • 現在のElem位置から、基準としたElemの「最初の表示フレーム」までのフレーム差を
    • 比較記号で比較しその真偽を返す。
      • 使える比較記号式は、「=」「!=」「>」「>=」「<=」「<」のみ
      • なお比較値は単なる比較値なので負数でも可。
      • 仮に,=-4であれば、基準位置から4F前かどうか、の条件。
AnimElem = (int型) ;bool型
  • ,~の比較値などを省略した場合は「,=0」と同じ。


■Lv1-記述例・補足・注意点

記述例
[State 2300, gravity]
Type = veladd
Trigger1 = AnimElem = 5, >=0
y = const(movement.yaccel)
  • Elem5枚目から、毎フレーム重力加速度分を速度に加算。

補足
  • 行動の基準をAnimElem基準にしておくと
    • アニメの表示Fを調整する程度なら、ステート記述の調整が非常に楽。
    • ただしElemを増やしたい場合は、面倒な調整が必要になる。
  • なおT-/AnimElemTime()は基準値を引数にし、比較用の数値を返す。
    • AnimElemTime(5)=-2とAnimElem=5,=-2は同一、のはず。
    • 数値を返すため、そのまま数式に使用する事も可能。
  • なお現在のElemの番号を調べられるのはT-/AnimElemNo()のみ。

注意点
  • 特定アニメのみを表示させるステートでもなければAnim条件を合わせること。