whileをつかって君が「はい」と言うまで質問するのをやめない!
今回は、スクリプトの繰り返し処理をつくってみます。 NNNには繰り返しようのコマンドはwhileしかありません。for等はありませんので、whileで代用してください スクリプトは新たに作らずに、前回作ったselect_testに追加します
今回もフィルム作成からはじめます まずは、「姫を助けた後」という名前でフィルムを作ります
コマ数は2個にしてみましょう
1コマめには、背景だけを設定します
2コマめには、背景と立ち絵を設定します
1コマめに、めっせーじを1つ入れます
2コマめにもメッセージを1ついれておきます
つぎに、繰り返し用のフィルムをつくります。名前は「そんなひどい」にしておいてください
コマ数は1つです
さっきとは、違う背景と、立ち絵を設定してみましょう
メッセージを設定します
これでフィルムの準備はできました。次に変数をつかいます
NNNでは変数は、あらかじめ準備しておく必要があります。 変数ウィンドウを探して、 「PLAY変数」ボタンを押します。 使われてないエリアをさがします。 [0]とだけかかれているところが使われてないエリアです。
その上で右クリックメニューをひらき、「変更」を選びます
1行入力ダイアログが出ますので、そこに「王女の愛」と入力します これで、「王女の愛」という変数が使用できるようになりました
シナリオウィンドウを選び、必要なら一番上までスクロールさせておきます 一番上には、前回作った「選択肢前」フィルムを表示するコマンドがはいっていますね まずは、そのコマンドを選択します。
「新規」ボタンをおして、その位置に新規コマンドを挿入します 3回押して、3つ作っておいてください
新たにつくったコマンドのうち一番上を選び、「姫を助けた後」フィルムを設定します
次に2番目のコマンドを選び、右クリックめにゅーから 「計算」を選びます
テキスト入力ダイアログが出ますので、そこに 王女の愛 = 0; と入力してください。 これで、このコマンドが実行されると、「王女の愛」という変数の値が0に設定されます
3つ目のコマンドに、右クリックメニューから 「while」を選びます。 やっと、whileがでてきました これからが本番です
whileを設定すると、自動的に1つの子コマンドが追加されます まずは、whileの中身(条件)を設定します whileコマンドの上で右クリックメニューをひらき、「内容修正」を選びます
1行入力ダイアログが出ますので ここにwhileの条件をいれます。 王女の愛 == 0 と、入れてください。 条件には ;(セミコロン)は付けないので注意してください == とは、比較演算子で、この場合は、「王女の愛」が0だったら という条件になります この条件が成立している間、子コマンド(群)が実行されます
次にwhileの子コマンドをつくります。 whileの下のNOPの上で右クリックメニューを開き、 [選択肢]-[2個]を選びます
これで、whileの子コマンドとして、選択肢が設定されました。 ちなみに、選択肢の子コマンドは、whileの孫コマンドになります 選択肢の作り方は前回行っているので、簡単にすすめます。 SELECTの上で右クリックメニューを開き、「内容修正」を選びます
テキスト入力ダイアログが出ますので、 はい いいえ と2行入力します
次に選択肢の中身を設定します 1つ目のNOPの上で右クリックメニューを開き、「計算」を選びます
テキスト入力ダイアログが開きますので、そこに 王女の愛 = 1; と入力してください。 はい、を選んだら、「王女の愛」が1になるということですね
いいえ、をえらんだ場合のコマンドも設定します こちらは、「そんなひどい」フィルムを設定します
この時点で、このようなシナリオ構成になります
whileで実行される子コマンドは、赤枠でかこまれた部分になります
では、保存してから、ビルドして実行してみましょう
こんかい作ったフィルムまできました
なんか言ってますね
だが断る!
いいえを選びます
やはりこうきたか
もういちどいいえを選びます
やっぱりだめです
どうしてもいやなんじゃよ
と、なんど「いいえ」を選んでも、しつこく繰返されます あきらめて「はい」を選ぶことにしましょう
やっとぬけられ、前回作った部分に到着しました