基本的な条件分岐

はじめに


 いたるところで使われている条件分岐。分岐と聞いて、よくアドベンチャーゲームなどで出てくる選択肢を思い浮かべる人がいるかもしれません。
 また、自分の作りたいRPGは一本道だから、条件分岐は必要ないと考える人がいるかもしれません。
 ですがそんなことはありません。宝箱を開けたり、鍵のかかった扉を開けたり、いつもの町で事件が発生するイベントを作ったり……そういったものにも、条件分岐が必要になります。

ここでは、最も基本的な条件分岐として、鍵のかかった扉を開けるイベントを考えてみたいと思います。

鍵のかかった扉を開けるイベント


 下の図のように、扉があって、鍵がかかっているとします。この扉に設定するイベントで、
鍵開け名人(トレジャーハンター)が仲間にいるか、いないかで流れが変わるようにしたいと思います。

image66.jpg

 一連の流れは下の図のようになります。

image63.pngimage64.png

 まず大きな分岐として、スイッチを使います。最初はスイッチOFFなので左側の処理が行われます。
 そして、トレジャーハンターが仲間にいるとスイッチ1ONになり、次にイベントを開始したときに右側の処理が行われ、別の場所に移動できます。

 これをIRM3で実現するには、少しコツがいります。

image65.png

 これがIRM3での基本的な表現です。
 先ほどとの違いを感じたでしょうか。なにより、先程は矢印で2つにわかれたのに対し、こちらでは上から下に一本の流れしかありません。これはプログラムなどでも同様で、どんな処理でも横に並べて記述したりはしません。
 しかし、よく文章を見るとトレジャーハンターが仲間にいる → コード番号3に移動というように、次にどのコードを実行するかの分岐があります。
 その他、色のついたコードが新しく現れてきましたね(GOTOなど)。

 また、コード番号0の文章を見てもらいたいのですが、トレジャーハンターが仲間にいるときの移動先は書いてありますが、仲間にいない時の移動先が書いてありません。ちなみにこの移動先は自分で好きに決めることができます。 
 これがIRM3で気をつける点で、
 条件分岐において、仲間にいるときは、自分で好きなコードの移動先を決めることができるが、仲間にいないときは、すぐ下のコードが実行される
 ということです。
 
 仲間にいるとき、コードの実行順番は0 → 3 → 4 → 5……となります。
 仲間にいないとき、そのままでは、上から下に実行されるので、0 → 1 → 2 → 3 → 4 → 5……(GOTOはひとまず無視してください)となってしまいます。
 つまり、せっかく分岐させたのに、仲間にいないとき、「扉が開かない……」と言ったくせにすぐ「鍵を開けた!」と言って鍵を開けてしまいます。

 これを防ぐために、色つきのコードが新たに必要になります。
 仲間にいるときは、コードの実行順番は0 → 3……なのでコード番号2GOTOは実行されません。
 一方、仲間にいないときは、GOTOが実行され、コード番号5に移動します。(GOTOは、分岐なしで強制的に指定コードに移動します。)
 それにより、「鍵を開けた!」などのコードが飛ばすことができます。コード番号5何もしないは、このように、GOTOの移動先としてよく用いられます。

 これをIRM3の実際の画面で記述したものを、載せておきます。
 (トレジャーハンターがトレジャーになっているのは、仲間の名前の文字制限のためです。5文字が限界です。)

image67.png

これで、非常に基本的ではありますが、条件分岐を使うことができます。後はこれの組み合わせで、様々なゲームを作ることができます。



コメントを投稿するには画像の文字を半角数字で入力してください。


画像認証

  • 最終更新:2012-02-19 19:13:53

このWIKIを編集するにはパスワード入力が必要です

認証パスワード