今回は、分岐について説明します。
分岐とは条件を満たしているかどうかを判定し、それによって次の処理を変える制御のことです。
ゲームであれば、好感度やフラグの有無によってストーリーが分岐していく展開に使えます。
ティラノスクリプトで分岐の処理を行うには[if]タグを使い、書き方は以下の通りです。
[if exp="条件"]
条件が満たされた時の処理
[endif]
最後の[endif]タグは、[if]タグの最後には必ず入れなければなりません。
この他にも、[if]タグと一緒に使うタグには[elsif]と[else]タグがあります。
これらのタグの書き方は以下の通りです
[if exp="条件1"]
条件1が満たされた時の処理
[elsif exp="条件2"]
条件1が満たされず、条件2が満たされた時の処理
[else]
条件1も2も満たされなかった時の処理
[endif]
式の大小を表す記号
条件の部分には、変数の値を比較する式が入ります。代表的な式は以下の通りです。
f.x > f.y f.xはf.yより大きいか
f.x < f.y f.xはf.yより小さいか
f.x >= f.y f.xはf.y以上か
f.x <= f.y f.xはf.y以下か
f.x == f.y f.xはf.yと等しいか
注意:プログラムにおいて、”等しい”ということを表す記号は”=”ではなく”==”です。
慣れないうちは間違えやすいので、気をつけましょう。
また、論理式を使うこともできます。論理式自体については説明しきれませんが、大体こんな感じです。
条件1 && 条件2 条件1と条件2がともに満たされている
条件1 || 条件2 条件1と条件2のいずれかが満たされている
!(条件) 条件が満たされていない状態
いろいろ説明してきましたが、とりあえずここでは実践的なプログラムを組んでみましょう。
たとえば、好感度によってエンディングを分岐させる場合、このような書き方になります。
好感度を表す変数を仮に"koukan"とし、この値が
80以上:トゥルーエンド
40以上79以下:ノーマルエンド
39以下:バッドエンド
だとすると、
[if exp="80 <= koukan"]
おめでとう!トゥルーエンドです!
[elsif exp="40 <= koukan && koukan <=79"]
ノーマルエンドです。
[else]
残念、バッドエンドです。次はがんばりましょう。
[endif]
という感じになります。
おまけ:
変数のAの値が、X以上(より大きい)Y以下(未満)という条件を記述したい場合、上の例に示したように
X <=(<) A && A <=(<) Y
という風にすれば、数学における X < A < Yに近い形になるので、少しは見やすくなります。
たとえばよく言われる”友達以上恋人未満”という状態は
友達 <= koukan && koukan < 恋人
このように表されます。
コメント0
関連する動画0
ご意見・ご感想