コンテンツにスキップ

ランダムトークとタイマ

ランダムトーク

$喋り間隔 を 3 以上にすると、OnSecondChange(毎秒)のたびに残り時間を数え、0 未満になると自動で喋ります。

条件は次のとおりです。

  • ほかに応答するものがなく、ベースウェアが喋れる状態(OnSecondChange の Reference3 が 0 でない)。
  • 画面から見切れていない(見切れていても喋る設定にすれば別)。

喋る内容は、*OnTalk があればそれ、なければ名前のない文(*)です。喋ったあとは、残り時間が 喋り間隔 を 喋り間隔誤差(%)の範囲でばらつかせた値にリセットされます。

トーク予約

$次のトーク=名前 や $次からN回目のトーク=名前 で、ランダムトークの内容を予約できます(喋りとトーク予約)。予約があるとき、ランダムトークの代わりにその文が実行されます。

タイマ

$名前タイマ=秒数 を代入すると、その秒数のあとに *名前 が実行されます。

  • 秒数は OnSecondChange のたびに減り、0 になると発動します。変数 名前タイマ に残り時間が入ります。
  • 発動するのは、ほかに喋るものがなく、喋れる状態のときです。喋れない間は待ちます。
  • 発動後、タイマは削除されます(発動中に再設定した場合は残ります)。
  • *名前 がないときは、代わりに *OnSatoriTimer が実行されます。(A0) にタイマの名前、(A1) に遅れた秒数が入ります(Mc201-11以降。OnSatoriTimer)。
  • 秒数を 1 未満にすると、そのタイマを解除します。$全タイマ解除=実行 ですべて解除します。
  • タイマはセーブされ、次回起動時に復元されます($タイマ変数はセーブしないを有効にすると保存されません)。

優先順位

OnSecondChange で応答が決まる順序は、次のとおりです。

  1. 押しっぱなし(ホールド)の判定による文
  2. タイマ
  3. ランダムトーク
  4. OnSatoriSecondChange