ふれあい
pet_interaction/ の下のファイル1つが、ふれあい1つです。MODにはしがみつき、カニのあいさつ、ごちそう、コーヒーの差し入れ、演奏を聴くの5つが入っています。くりまんじゅうが草むしりカードを終えたばかりの子にコーヒーを渡す、コーヒーの差し入れを例に見てみましょう。
{
"initiators": [
{ "pets": ["chiikawa:kurimanju"], "pose": "hand_over" }
],
"partners": [
{
"pets": ["chiikawa:chiikawa", "chiikawa:hachiware", "chiikawa:usagi"],
"pose": "drink",
"begin": { "reaction": "happy", "voice": "given_coffee" }
},
{
"pets": ["chiikawa:rakko"],
"pose": "drink",
"begin": { "voice": "given_coffee" }
}
],
"partner_finished": { "slip": "chiikawa:weeding", "within_ticks": 2400 },
"partner_eager_ticks": 1200,
"chance": 0.25,
"notice_distance": 12.0,
"approach_distance": 1,
"reservation_ticks": 400,
"duration_ticks": 80,
"cooldown_ticks": 24000
}誰と誰が演じるか。 initiators は始める側、partners は声をかけられる側で、どちらもグループごとに書きます。pets にはキャラクターのidか、# で始まるエンティティタグを並べます。なかまは、自分が最初に出てくるグループのとおりに演じます。partners の順番は好みの順番でもあり、始める側は前に書かれた子から探します。こうすれば1つのファイルの中で、キャラクターごとに違う反応ができます。同じようにしがみつかれても、ちいかわは泣き、ラッコは動じません。
それぞれがどう演じるか。 pose はふれあいのあいだずっととっている姿勢です。begin、now_and_then、end は、それぞれ会ったとき、途中でときどき、終わるときにすることで、どれにも animation 動き、reaction 表情(happy、hurt、confused)、voice セリフのタイミングを書けます。どれも省略できます。now_and_then にはさらに every_ticks で、どれくらいおきにするかを書きます。セリフのタイミングはそのキャラクター自身のセリフファイルから探すので、どの子も自分の言葉でしゃべります。
姿勢や動きに使えるのは、MODにすでにあるアニメーションだけです。cling、clung_to、crab_greeting、hand_over、drink、eat、sit、clap。そのアニメーションがないキャラクターは、ただ立っています。
いつ演じるか。
| フィールド | 意味 |
|---|---|
partner_state | 省略可。相手が何をしているときか。idle ひま(デフォルト)か、playing_music 演奏中。演奏中のときは相手は止まらず、誰でも観客として来られます |
partner_finished | 省略可。相手がどれくらい前までに、どのお仕事カードを終えている必要があるか |
hands_over | 省略可。始める側が持ち物から出して、相手にその場で食べてもらうもの。アイテムかタグを書きます。持ち物になければ演じません |
partner_eager_ticks | 省略可。このあと相手がどれくらいのあいだお仕事にやる気が出るか。デフォルトは0 |
chance | まわりを見回すたびに、このふれあいを思いつく確率 |
notice_distance | 相手がどこまで近くにいれば思いつくか。なかまが見えるのは最大16ブロックまでです |
approach_distance | 始める側がどこまで近づいたら演じはじめるか |
reservation_ticks | 始める側が歩いていくのに使える時間。相手もそのあいだ待ちます |
duration_ticks | 演じる時間 |
cooldown_ticks | 同じ2匹が演じたあと、次にこのふれあいを演じるまでの時間 |
