ランダムトークとタイマ¶
ランダムトーク¶
$喋り間隔 を 3 以上にすると、OnSecondChange(毎秒)のたびに残り時間を数え、0 未満になると自動で喋ります。
条件は次のとおりです。
- ほかに応答するものがなく、ベースウェアが喋れる状態(
OnSecondChangeの Reference3 が0でない)。 - 画面から見切れていない(見切れていても喋る設定にすれば別)。
喋る内容は、*OnTalk があればそれ、なければ名前のない文(*)です。喋ったあとは、残り時間が 喋り間隔 を 喋り間隔誤差(%)の範囲でばらつかせた値にリセットされます。
トーク予約¶
$次のトーク=名前 や $次からN回目のトーク=名前 で、ランダムトークの内容を予約できます(喋りとトーク予約)。予約があるとき、ランダムトークの代わりにその文が実行されます。
タイマ¶
$名前タイマ=秒数 を代入すると、その秒数のあとに *名前 が実行されます。
- 秒数は
OnSecondChangeのたびに減り、0 になると発動します。変数名前タイマに残り時間が入ります。 - 発動するのは、ほかに喋るものがなく、喋れる状態のときです。喋れない間は待ちます。
- 発動後、タイマは削除されます(発動中に再設定した場合は残ります)。
*名前がないときは、代わりに*OnSatoriTimerが実行されます。(A0)にタイマの名前、(A1)に遅れた秒数が入ります(Mc201-11以降。OnSatoriTimer)。- 秒数を 1 未満にすると、そのタイマを解除します。
$全タイマ解除=実行ですべて解除します。 - タイマはセーブされ、次回起動時に復元されます($タイマ変数はセーブしないを有効にすると保存されません)。
優先順位¶
OnSecondChange で応答が決まる順序は、次のとおりです。
- 押しっぱなし(ホールド)の判定による文
- タイマ
- ランダムトーク
OnSatoriSecondChange