コンテンツにスキップ

コミュニケート

別のゴーストと会話する機能です。

話しかけられたとき(OnCommunicate)

OnCommunicate は、Reference0 が相手の名前、Reference1 が話しかけの内容です(user はユーザーで、ユーザ に読み替えられます)。

里々は、相手の名前「話しかけの内容」 を作り、その文字列に合う文を探して実行します。

文の名前の付け方

文の名前を、タブか全角空白で区切って複数の語にします。語の最後が 「 のものが、相手の名前です。

*さくら「 こんにちは おはよう
:こんにちは。

この文は、相手が「さくら」のとき、話しかけの内容に「こんにちは」か「おはよう」が含まれていると候補になります。相手の名前を特定しない文は、名前に 「 の語を持たない文です。

探し方

  • 相手の名前がわかっている(「 を含む)ときは、その名前の文だけを対象にします。名前が 「 だけの文は、どの相手にも当たります。
  • 一致した語には点数がつきます。一致しない語があると減点され、一定の点数を超えたものが候補です。最高点の候補が複数あれば、その中から 1 つを選びます。
  • $コミュニケートの検索方法で 合計文字数 にすると、一致した語の文字数の合計で点数をつけます。
  • 見つからなかったときは *COMMUNICATE該当なし を実行します。

話しかけるとき

文の 1 行目を → で始めると、相手のゴーストに話しかけます。

*OnTalk
→さくら「こんにちは」
  • → のあとに、隣で起動しているゴーストの名前を書くと、その相手を指定します。書かなかったとき、または見つからなかったときは、隣で起動している最初のゴーストです。
  • 応答に To・Reference0 として相手の名前を付けます。

ループの打ち切り

会話が繰り返されるのを防ぐため、次のときは会話を打ち切ります。

  • 辞書に、続行の指示(→)がない。
  • 自分が返す文が、過去の会話ですでに返したものと同じ。
  • 相手の話しかけの内容が、過去にすでに現れた。

≫ と ≧

文の中から、別のコミュニケート用の文へジャンプします(制御構造)。