コンディションイベント関数は条件判定を行い、判定結果が有効(真)であった場合にイベントを発生させ、設定されたオーダー関数に移行します。時間との比較やCPU使用率等との比較でイベントを発生させてオーダー関数を変更することが可能です。また、判定を行う時間間隔の設定もできます。
コンディションイベント関数の例
sample.func
<FUNC_CONDITION_EVENT_REG>
<SET_CONFIG>
FuncName = CE_Test
IntervalType = EVERY_FRAME
Condition = (Second() <= 30) || (Hour() > 3)
FuncListCondition = OR_LeftWalk, OR_RightWalk
</SET_CONFIG>
</FUNC_CONDITION_EVENT_REG>
コンディションイベント関数 項目説明
項目名 | 説明 |
---|---|
<FUNC_CONDITION_EVENT_REG> </FUNC_CONDITION_EVENT_REG> | コンディションイベント関数の開始終了を指定します。 |
<SET_CONFIG> </SET_CONFIG> | この項目名で囲まれた部分でコンディションイベント関数の基本情報等を設定します。 |
FuncName | コンディションイベント関数の名前を設定します。 |
IntervalType | 条件判定の判定間隔を設定します。省略可。省略した場合はONLY_ONCE に設定されます。 各タイプの説明はこちら↓ |
Condition | この項目で設定された条件式がIntervalTypeで設定された間隔で実行(評価)され、有効・無効(真偽)を判定します。条件式の判定結果が有効(真)であった場合、イベントが発生しFuncListConditionで設定されたオーダー関数に移行します。条件式は等式・不等式・条件論理式等を使用します。 「==」「!=」「>」「>=」「<」「<=」「||」「&&」「!」 各記号の説明はこちら↓ また条件式内で「+」(加算)、「-」(減算)、「*」(乗算)、「/」(除算)、「%」(剰余)等の式も記述できます。 |
FuncListCondition | 条件判定が有効(真)であった場合にイベントが発生し、ここで設定されたオーダー関数に移行します。 |
IntervalType 項目説明
項目名 | 説明 |
---|---|
ONLY_ONCE | オーダー関数の開始時に一度だけ条件判定が実行されます。 |
EVERY_FRAME | 毎フレーム条件判定が実行されます。 |
EVERY_SECOND | 毎秒(約1秒毎に)条件判定が実行されます。 |
EVERY_MINUTE | 毎分(約1分毎に)条件判定が実行されます。 |
EVERY_HOUR | 毎時(約1時間毎に)条件判定が実行されます。 |
比較・論理演算子説明
記号 | 説明 |
---|---|
== | 左右の値が等しい時に真を返します。 例) Second() == 30 意味) 現在の秒数が30なら真。 |
!= | 左右の値が等しくない時に真を返します。 例) Second() != 30 意味) 現在の秒数が30じゃなければ真。 |
> | 左の値が右の値より大きい時に真を返します。 例) Second() > 30 意味) 現在の秒数が30より大きければ真。 |
>= | 左の値が右の値以上の時に真を返します。 例) Second() >= 30 意味) 現在の秒数が30以上なら真。 |
< | 左の値が右の値より小さい時に真を返します。 例) Second() < 30 意味) 現在の秒数が30より小さければ真。 |
<= | 左の値が右の値以下の時に真を返します。 例) Second() <= 30 意味) 現在の秒数が30以下なら真。 |
|| | 左の値が有効か右の値が有効なら真を返します。 例) (Second() <= 30) || (Hour() > 3) 意味) 現在の秒数が30以下か、現在の時間が3時より後なら真。 |
&& | 左右の値が両方有効なら真を返します。 例) (Second() <= 30) && (Hour() > 3) 意味) 現在の秒数が30以下で現在の時間が3時より後なら真。 |
! | 値が真なら偽を偽なら真を返します(反対の結果になる)。 例) !(Second() == 30) 意味) 現在の秒数が30じゃなければ真(30なら偽)。 |