1.
イベントスクリプトにおいて、 「はい」「いいえ」の選択肢が出てくるものについて解説する。 「はい」「いいえ」の選択肢 を出すスクリプトは YesNo(会話文) である。 Set a,YesNo(この者達を仲間にしますか?) このように選択肢を与えて、プレイヤーに選ばせる。 「はい」を選ぶと、変数aに1(true)が代入され 「いいえ」を選ぶと、変数aに0(false)が代入される。 変数aに格納されているのが1か0かで イベントを分岐させるわけである。 Set a,YesNo(この者達を仲間にしますか?) if(a==1) { 「はい」を選んだので、仲間になります。 } if(a==0) { 「いいえ」を選んだので、仲間になりません } というように組むのが基本である。 2.
CPU陣営がイベントを発生させたときの 対処も考えておく必要がある。 あるイベントを例示して解説を行う。 // No50.人材A加入 if (Flag[50]==false) { Set a,AreaKuni[10] Set b,true if(KuniPlayer[a]==1) { (会話文など) Set b,YesNo(この者を仲間にしますか?) if(b==1) { (「喜んで仲間になりましょう」みたいな会話文) } if(b==0) { (「そうですか、残念です。」的な会話文) } } if(b==1) { CharSet 10,%人材A } Set Flag[50],true } 赤字の Set b,true の部分は プレイヤー、CPU共通のスクリプト部分の あらかじめ b にtrueを格納する。 プレイヤーは、その後のプレイヤー専用のスクリプトで 「はい」「いいえ」を選ばされ、その選択肢によって 再び b に true か false が格納される。 その後、プレイヤー、CPU共通のスクリプトで b が true の場合に人材Aが仲間になる (下の方の赤字の部分)。 3.
デフォルトのワットサルトのように 何回も選択肢を選ばされる場合はどうするか。 CPUへの対処は簡単である。 何回選択肢が出ようと、結局は二択でしかないので、上記のスクリプトとそう変わらない。 例えば、1.「賢者を訪ねてみますか?」で分岐して 「はい」を選んだ場合 2.『おぬしは誰じゃ?』という問いかけられ 「世界を救うもの」→「いいえ」を選べば、さらに 3.『では、誰なんじゃ?』と問われる。そこで 「強きもの」→「いいえ」という選択をすると ワットサルトは仲間になる。 最後のSet c,YesNo(「強いもの」) という選択如何によって ワットサルトが仲間になるかどうか分かれるのである。 この最終的な分岐点のSet c,YesNo(「強きもの」) に合わせて変数を管理し、CPU陣営への対処をすればよい。 4.
サンプルスクリプト。 ・YesとNoの分岐。 Cpuの選択はYes。
|