やさしいウディタ講座10:条件分岐の基本!イベント内容を振り分ける

無料のゲーム開発ツール「ウディタ(WOLF RPGエディター)」の基本的な使い方を、初心者さん向けに紹介するこの企画。

前回「やさしいウディタ講座9:ランダムエンカウントで戦闘を発生させる」では、ランダムエンカウントによる戦闘イベントを作りました。

今回はイベント内容の振り分けに便利、条件分岐の使い方を紹介しましょう。

「やさしいウディタ講座」- もくじ
現在公開中の講座をまとめたページ。「ウディタのことがよくわからない」「簡単な機能から覚えたい」などの初心者さんは、初期の講座から読むのがおすすめです。
>>WOLF RPGエディター|公式サイト
公式サイトにはウディタの使い方を詳しく解説している、マニュアルやガイドが公開されています。ウディタを学ぶ際の必須となる教科書です。ぜひ参考にしましょう。

ウディタの「条件分岐」とは?

「〇〇が■■のとき、△△△を実行する」

こんな感じの条件をつけた命令のことです。

  • 「バケツの水の量」が「1リットル未満」のとき、「水を注ぎ続ける」
  • 「バケツの水の量」が「1リットル以上」のとき、「水を注ぐのを止める」

上のような複数の条件を作ります。これによって、その次に実行する内容を振り分けることができるんですね。

スポンサーリンク

変数と組み合わせるのが一般的

ウディタで条件分岐を使う場合、主に「変数」と組み合わせます。

変数の中身を見て、条件の内容と合致するかどうかを判断。その後、実行するコマンドを変える感じです。

  • 変数Aの中身が0のとき、「文章の表示」を実行。
  • 変数Aの中身が1のとき、「変数Bに10を代入」を実行。

なので、ウディタの変数を全く知らない人の場合、今回の講座内容を読むと少し難しく感じるかと思います。

すごく初歩的な部分だけでも構いません。以下の講座で変数の仕組みを理解しつつ、今回の講座を読み進めることをおすすめします。

条件分岐で咲いている花が変化するイベントを作る

ウディタで条件分岐を活用したイベントの作り方を解説しましょう。

この講座を参考にする前に

やさしいウディタ講座では「サンプルゲームのData」を使って解説しています。「空データ基本システム入りData」でやっても大丈夫ですが、後者のDataにはグラフィックなどの素材があまり入っていません。講座の解説どおりにできない場合も考えられます。もし素材が足りなければサンプルゲームのDataフォルダ内にあるものをコピーし、同名のフォルダ内に入れておけば対応可能です。

  1. 人物に話しかける。
  2. 咲いている花の画像が変わる。

上のようなイベントを作りますよ~!少し長いですけど、ついてきてくださいね。

マップに花のマップイベントを設置

今回のイベント用に、適当なマップを作っておいてください。

マップの作り方の基本は、「やさしいウディタ講座1:マップを作ってみよう」が参考になります。

マップが完成したら、その中に「花のマップイベント」を置きます。この辺かな~と思った部分にカーソルを合わせ、ダブルクリック。マップイベント画面を開きます。

ウディタ マップイベントを作る

グラフィックを決めましょう。「グラフィックの選択」を開いて、左の一覧から「タイルセット」を選択。

ウディタ マップイベント グラフィックの選択

今回は「白い花」の画像を選んでみました。画像が決まったらOKボタンをクリックして作業完了。

マップイベントのメイン画面に戻りましょう。

ウディタ マップイベント画面

  • イベント名は「花」に決定。わかりやすければ何でもオッケー。
  • 移動ルートは「動かない
  • 起動条件は「決定キーで実行

ここからが重要。条件分岐の判断に必要変数を設定します。

花のマップイベント自身が持つ、「セルフ変数0」を利用しましょうか。

起動条件の部分に注目。一番上のボックスにチェックを入れ、「Self0:セルフ変数0」が「0」と「同じ」に設定してください。

ウディタ マップイベント 起動条件

次の作業に移りましょう。

花のマップイベントに画像が異なる別バージョンを作る

今回作るイベントでは、条件分岐によって花の画像を変えるのが目的です。なので、先程作った花のマップイベントに別バージョンを作っておきます

別バージョンは、ページを増やすことで可能です。

花のマップイベント画面で、名前の横にある「新規ページ」をクリック。「ページ2」が追加されるはずです。

ページ2に画面を切り替えたら、先程と同じように、グラフィックを決めてください。ここでは「黄色い花」にしてみました。ページ1と違ければ画像は何でも構いません。

ウディタ マップイベント画面

移動ルートや起動条件などは、ページ1と同じ内容で。

起動条件の変数の部分を変えます。「Self0:セルフ変数0」が「1」と「同じ」にしてください。

ウディタ マップイベント 起動条件

「1」の部分が、ページ1との違いです。

ここを間違えると、狙ったとおりにイベントが実行されません。忘れずに変更してくださいね。

花のマップイベントの設定はこれで終わり。セーブして内容を保存しましょう。

試しにテストプレイ。マップイベントを設置した部分に、白い花が咲いています。

ウディタ ゲーム画面

このマップイベントのセルフ変数0が「0と同じ」だからです。ウディタの場合、セルフ変数のような、数字用の変数の初期値は「0」が基本

該当の変数を何もいじっていないと中身が必ず0なので、ページ1の起動条件を満たします。結果として、ページ1の白い花の画像が表示されるってことです。

人のマップイベントを設置

花のマップイベントのすぐそばに、人のマップイベントを置きます。

ウディタ マップイベントの設置

魔法使いっぽい人物にしましょうか。

ウディタ マップイベント画面

  • イベント名は「魔法使い」に決定。好きな名前をつけてください。
  • 移動ルートは「動かない
  • 起動条件は「決定キーで実行

続いてコマンドを入力します。今回の目玉、条件分岐のコマンドもここでやりますので、しっかり読み進めてくださいね。

画面右側のコマンド欄をダブルクリック、もしくはコマンド入力ウィンドウ表示ボタンを押し、コマンド画面を開きましょう。

まずは最初の演出として、「話しかけたら何か喋るコマンド」を作ってみます

1 文章の表示」で、適当なセリフを打ち込んでください。

ウディタ イベントコマンド 文章の表示

終わったら入力ボタンを押し、コマンドの入力は完了。

ウディタ マップイベント コマンド

コマンド欄に文章が表示されていれば大丈夫です。

条件分岐コマンドを入力する

ここからが今回講座のメイン、条件分岐コマンドの作業です!

先程打ち込んだ文章は条件分岐よりも先に実行させたいので、コマンド欄に表示されている文章コマンドの下に、条件分岐コマンドを入力してください。

コマンド画面を開いたら、「7 条件(変数)」を選択。

ウディタ イベントコマンド 条件(変数)

画面の右側で条件を決められます。「Self」ボタンを選択状態に。これによって、現在作業中のマップ内に設置した、全マップイベントの各セルフ変数を選べます。

ウディタ イベントコマンド 条件(変数)

プルダウンメニューを開き、「花のマップイベントのセルフ変数0」を指定。今回の例だと「Ev6 花:Self0」がそれです。ちなみに「花」と書かれた部分には、自分でつけたマップイベント名が反映されます。

その隣の「数値」や「と同じ」の部分も、条件分岐で必要な項目です。

花のマップイベント(Ev6)を思い出してください。

ページ1に「Self0:セルフ変数0が0と同じ

ページ2に「Self0:セルフ変数0が1と同じ

起動条件を上の内容にしましたよね?この内容をそのまま、条件にします。

ウディタ イベントコマンド 条件(変数)

上の画像のように、条件(変数)のコマンド内容を2つ設定しましょう。使用する項目にチェックを入れるのを忘れずに。

画面の上に「3変数を連動」と書かれています。ここにチェックを入れると、比較の対象にしたい変数を3つ全て同じものにできます。作業の手間を省くのに便利。チェックを外せば、それぞれ別の変数を指定できます。

今回は2種類の条件以外は使いません。

なので、上から3番目の条件の項目「上記以外の場合」を作成は不要。チェックを入れずに入力ボタンを押して、コマンド入力を終えます。

コマンド欄を見ましょう。

ウディタ マップイベント コマンド

条件分岐のコマンドが表示されているはず。内容の間違いに気づいた場合、コマンド部分をダブルクリックすれば修正できます。

変数に数字を代入する

もう少しで終わりますよ!頑張りましょう~。

コマンド欄の条件分岐の部分に注目。「◇分岐:【数字】…」直後の行には、コマンドを入力できます(何個でも可能)。この条件を満たしたときだけ、その後に入れたコマンドのイベントが発生する仕組みです。

まずは、「分岐:【1】Ev6のセルフ0(花のマップイベント、セルフ変数0)が0と同じの場合」の後に、コマンドを入れてみましょうか。

ウディタ マップイベント コマンド

分岐の直後の空白行にカーソルを合わせ、イベントコマンドの入力画面を開きます。

3 変数操作」を選択。

ウディタ イベントコマンド 変数操作

画面の上部分にある「Self」ボタンを選択状態に。下のプルダウンメニューから「花のマップイベントのセルフ変数0(Ev6 花:Self0)」を選びます。

右端の記号を代入(=)に。右辺の左側に手動で「1」を入力。中央の記号と右の0はそのままにします。

作業が終わったら、入力ボタンをクリック。

ウディタ マップイベント コマンド

コマンド欄に、変数操作の内容が表示されていれば大丈夫。

続いて、「分岐:【2】…」の下の空白行にカーソルを合わせ、先程と同じように変数操作のコマンドを入力します。

ただし、花のマップイベントのセルフ変数0に代入する数字は、1ではなく「0」にしてください。ここを間違えるとイベントがうまく動作しません!

ウディタ マップイベント コマンド

上の画像のように入力されていればオッケー。間違っている部分があればそこをダブルクリックして、コマンド内容を修正しましょう。

ふぅ、これで作業は終了!セーブで内容を保存し、マップイベント画面を閉じます。

テストプレイで確認

ここまで作った条件分岐イベントを、テストプレイの画面で確かめてみましょう!

テストプレイのために主人公キャラの初期位置をこのマップにする場合、「やさしいウディタ講座2:人を配置・看板を調べるイベントの作り方 – 主人公キャラを自作マップ上で操作できるようにする」を参考に、作業してみてください。

白い花の前にいる魔法使いに、決定キー(Enter)で話しかけます。

ウディタ ゲーム画面

文章の表示で打ち込んだコマンド内容が出ました。至ってフツー。

続いて決定キー(Enter)を押すと…

ウディタ ゲーム画面

おおっ、白い花が黄色い花へと瞬時に変わりましたね!

何度も魔法使いに話しかけてみましょう。話しかけるたびに、白い花→黄色い花→白い花へと切り替わります。

そうなっていれば大成功!条件分岐がうまく機能している証拠です。

どうして花の画像が何度も切り替わるのか?

魔法使いに話しかける→花のセルフ変数0に「1」を代入

ページ2の黄色い花を表示

魔法使いに話しかける→花のセルフ変数0に「0」を代入

ページ1の白い花を表示

これを繰り返しているからです。

覚えておきたいのが、花のセルフ変数0の初期値は「0」だということ

なので、最初に魔法使いと話したとき、条件分岐【1】のコマンドを実行します。条件分岐【2】は条件に合わないので無視。そのままイベントが終了。

ウディタ コマンド 条件分岐

イベントが終わった後も、条件分岐【1】で花のセルフ変数0に代入した「1」は、そのまま維持されます

自分のセルフ変数0の中身が変わったことにより、花のマップイベントの起動条件が反応。ページ2の黄色い花を表示します。

ウディタ ゲーム画面

この状態で再び魔法使いに話しかけてみましょう。

最初と違って、条件分岐【2】に当てはまるので、こちらのコマンドが実行されます。条件分岐【1】は無視され、イベントが終了。

ウディタ コマンド 条件分岐

セルフ変数0の中身がまた変わりました。花のマップイベントの起動条件が反応。ページ1の白い花を表示します。

ウディタ ゲーム画面

この繰り返しです。

だから話しかけるたびに白い花が黄色い花に、黄色い花が白い花にコロコロ変わるんですね。

以上、条件分岐を活用したイベントの例でした。

この例はほんの一部にしか過ぎません。条件分岐はとても活用の幅が広いコマンドです。色々いじってみて、思い通りのイベントを作ってみましょう!

次回の講座は?

やさしいウディタ講座10はここまで。

次回「やさしいウディタ講座11:条件分岐&変数で複数イベントを変える」は、今回の続き。今回講座で作った条件分岐イベントをもとに、複数のイベントを一気に変更する方法について解説します。

今回の花と魔法使いのマップイベントをそのまま使いまわしますので、データを消さないでおくのがおすすめ。次回講座を参考にする際、手間が省かれてラクに読み進められますよ。

「やさしいウディタ講座」- もくじ
※全講座の目次ページはコチラ。