ASTER::ACTION::ObjectControl::Sleep ( LPRO Direct )

関連 : Set Sleep (ByName)


パラメータ .1

オブジェクトインスタンスを選択 (コンディションで選択された条件に一致するオブジェクトを指定)


パラメータ .2

文字列で三つのパラメータをまとめて送信する.

e.g. "30,-1,30"

30 FrameTimes (sleep) , -1 (repetition = infinite loop) , 30 FrameTimes (waiting)

  1. 時間単位はアプリケーションのフレームタイム、+値の整数を入力してください。プラス符号のみ利用できます。

  2. 繰り返し (repetition value) は -1 が無限ループ、0 は Sleep 動作の中止、+1 以上の数値が繰り返し回数指定になります。

  3. 時間単位はアプリケーションのフレームタイム、+値の整数を入力してください。次回 Sleep までの待機時間です。


注意点.1

e.g. (構文エラーの例)

   " -30 , 9,  -30,"   <!--マイナス符号を利用してはいけない値にマイナス符号を利用、不要なカンマの挿入. -->
  

注意点.2

可読性向上のためホワイトスペース挿入に制限はありません。以下例も書式エラーにはなりません。

e.g. ( ホワイトスペースを挿入した例 )

  " + 3 0  ,   - 1 ,   + 3 0  "
  

注意点.3

repetition -1 は待機時間を挟んで無限に Sleep 動作を繰り返す指定、+1 以上の数値は指定待機時間後に再度 Sleep に入る処理を何回繰り返すかを示します。

e.g. "-1" « 無限に繰り返す

e.g. " 0" « Sleep 命令の解除・無効化

e.g. " 1" « 1 回実行する.

e.g. " 2" « 2 回繰り返す..

e.g. " 3" « 3 回繰り返す…


注意点.4

Sleep 動作中のオブジェクトインスタンスに新規 Sleep 命令を発行すると新しい値で上書きされます。

この仕様が Sleep 動作の repetition 延長を可能にしていて、同時に Sleep 動作の停止・中断も可能にしています。


注意点.5


注意点.6

Sleep と Stop はどちらも効果は「一時停止」で機能的に似ていますが、Stop は Sleep よりも上位の基本命令で Null 以外の全動作に対応しています。




注意点.7 Stop と Sleep の違い

Sleep は「時間指定」と「繰り返し指定」を持つ「停止命令」としてデザインされ、命令に対して新しい命令で設定上書きが可能です。

Stop には「時間 (frame times)」「繰り返し (repetition) 」指定が無く、代わりに「切り替え (toggle) 」命令があります。 Stop は Sleep 中のインスタンスも停止できますが、Sleep は Stop 命令に介入できません。Stop 中のインスタンスに Sleep 命令を発行すると停止した状態で Sleep 命令が発行されます。Stop が解除された時点から Sleep 命令の実行に移ります。

各命令には上位下位区別があり、最上位命令である Reject は優先実行と命令の上書き禁止、そして下位命令である Stop や Sleep の影響を受けません。Stop は Sleep の上位命令で、Sleep は Stop の下位命令です。