ツクール超初心者講座|条件分岐入門 4桁パスワードで開く宝箱・キャラ選択のつくり方

当ページのリンクには広告が含まれています。

今回は、RPGツクールMZの条件分岐について見ていきます。

条件分岐は、ゲームの演出を作るうえで欠かせないイベントコマンドです。この記事では、装備でセリフが変わるイベント、4桁パスワードで宝箱が開くイベント、キャラクターセレクト風のイベントという3つの例題を使って解説します。

それぞれ、内部のイベント処理を見ながら進めていきましょう。

RPGツクールMZのイベントコマンドでフロー制御の条件分岐を選ぶ画面

1. 条件分岐とは

条件分岐は、指定した条件によって処理や物語を分けるためのコマンドです。イベントコマンド1ページ目の「フロー制御」の中にあります。

条件分岐を開くと、ページごとにさまざまな条件を設定できます。

  • 1ページ目: スイッチ、変数、セルフスイッチ、タイマー
  • 2ページ目: アクターの名前、装備、職業、スキルなど
  • 3ページ目: 敵キャラクターが出現しているか、プレイヤーがどこを向いているか
  • 4ページ目: 現在の所持金、アイテムの有無

1-1. 変数で条件分岐を作る

たとえば「モブと話した回数」という変数を用意すれば、その回数が5回になったときだけ特別なセリフを出せます。条件分岐の中に、条件を満たしたときの実行内容を書いていく形です。

さらに「条件を満たさない時の分岐を作成」にチェックを入れると、階層構造のある分岐も作れます。

たとえば「5回話したとき」「4回話したとき」「それ以外」という3パターンに分けることができます。

1-2. 不等号の意味

条件分岐で使う不等号の意味は、次のとおりです。

記号意味
`=`一致した場合
`≧` / `≦`以上 / 以下
`>` / `<`超過 / 未満
`≠`一致しない場合

「同じかどうか」だけでなく、「一定以上」「一定未満」もよく使います。ここを使い分けられると、イベントの幅がかなり広がります。

2. 装備でセリフが変化するイベント

1つ目の例題は、キャラクターの装備によってNPCのセリフが変わるイベントです。条件分岐の基本として、かなり分かりやすい例です。

条件分岐のアクター条件でダンディの装備を判定する画面

2-1. 装備チェックの作り方

イベントコマンドの条件分岐を開き、2ページ目の「アクター」から「装備」を使います。

ここで見るのは、「誰が何を装備しているか」です。

一方、条件分岐の4ページ目にも武器・防具の項目があります。こちらは「パーティーが所持しているかどうか」で分岐するものです。主人公以外の誰が持っていても条件を満たします。

つまり、装備しているかを見たいなら2ページ目、持っているかを見たいなら4ページ目を使います。

条件分岐を入れ子にして剣と盾のAND条件を作るイベント画面

2-2. AND条件を作る

「かっこいい剣を装備している」かつ「かっこいい盾を装備している」という条件を作りたい場合は、条件分岐の中にさらに条件分岐を入れます。

“`text
◆条件分岐:ダンディがかっこいい剣を装備している
◆条件分岐:ダンディがかっこいい盾を装備している
◆文章:あんたかっこいいな
:それ以外の時
◆文章:かっこいい剣を持っているな
:それ以外の時
◆文章:ふっ、ダサいな
“`

このように条件分岐を入れ子にすると、「AかつB」というAND条件を作れます。

逆に、「それ以外の時」の側に別の条件分岐を置けば、「AもしくはB」というOR条件のような処理も作れます。覚えておくと、作れるイベントの幅がかなり広がります。

3. 4桁パスワードで宝箱が開くイベント

2つ目の例題は、4桁の数字を入力して、正しいパスワードなら宝箱が開くイベントです。謎解き系のイベントではよく使う形です。

RPGツクールMZの実行画面で4桁の数値を入力するパネル

3-1. 数値入力の処理を使う

イベントコマンドの「メッセージ」にある「数値入力の処理」を使います。変数の番号と桁数を指定すると、プレイヤーが数字を入力できるようになります。

今回は4桁で設定します。

4桁番号を初期化して数値入力と4649の正解判定を行うイベント画面

3-2. 正解かどうかを条件分岐で判定する

数値入力の後に条件分岐を置き、入力された変数が正解の数字と一致するかどうかで処理を分けます。

今回は、正解を4649、つまり「よろしく」にします。

“`text
◆変数の操作:4桁番号 = 0(初期化)
◆数値入力の処理:4桁番号, 4桁
◆条件分岐:4桁番号 = 4649
◆(宝箱が開く処理)
:それ以外の時
◆SEの演奏:ブザー
◆文章:間違ってるよ
“`

正解だった場合は宝箱を開く処理へ進み、違っていた場合はブザーを鳴らしてメッセージを出します。

3-3. 入力値は先に初期化する

数値入力の前には、変数に0を代入しておきます。

これをしないと、前回入力した数字が残った状態で次の入力が始まってしまいます。間違えたあとに毎回プレイヤーが数字を消すのは面倒なので、最初に0を代入してリセットしておきましょう。

3-4. 3回間違えたらヒントを出す

間違った回数を別の変数でカウントすれば、3回以上間違えたときにヒントを出すこともできます。

ここで大事なのは、「3回イコール」ではなく「3回以上(≧)」にすることです。

イコールだと、3回目にはヒントが出ますが、4回目以降は条件に当てはまらなくなります。間違える人は4回目以降も間違える可能性があるので、ここは「以上」にしておくほうが自然です。

もう1つ大事なのは、間違えたときに回数を加算する処理を入れることです。これを忘れると、変数が増えないのでヒントがいつまでも出ません。

4. 名前入力でパスワード判定するイベント

パスワードイベントには、文字を入力して正解を判定するパターンもあります。

名前入力画面でひらがなのパスワードを入力している画面

4-1. 名前入力の処理を使う

イベントコマンド3ページ目の「名前入力の処理」を使います。

ただし、顔グラフィックが設定されているアクターを使うと、入力画面にその顔が表示されます。そのため、アクターの中に空のキャラクター、つまり入力用のキャラクターを用意しておくのがおすすめです。

4-2. ひらがな・カタカナの両方に対応する

判定には、条件分岐の2ページ目にある「アクター」から「名前」を使います。

たとえばカタカナの「ダンディ」でも、ひらがなの「だんでぃ」でも正解にしたい場合は、条件分岐を2つ作ります。

このとき、ラベルジャンプを使うと便利です。正解時の処理の前にラベルを貼っておき、カタカナで正解だった場合も、そのラベルにジャンプするようにします。

こうすれば、同じ処理を2箇所に書かずに済みます。あとから修正するときも、1箇所だけ直せばよくなります。

4-3. 入力後はリセットする

数値入力と同じように、名前入力の前にも初期化を入れておくと扱いやすくなります。

名前入力の前に、アクターの名前を空に変更しておきましょう。イベントコマンド1ページ目の「アクター」から「名前の変更」を選び、空文字を入れればOKです。

これで、2回目以降もまっさらな状態で入力できます。

5. キャラクターセレクトのイベント

最後の例題は、対戦ゲームなどでありそうな、プレイヤーがキャラクターを選ぶイベントです。

左右のキャラクター候補をピクチャーで表示したキャラクターセレクト画面

5-1. キャラクターセレクトの仕組み

仕組みとしては、プレイヤーを透明にした状態で、左右キーの入力によってキャラクター画像、つまりピクチャーの色を切り替えます。

初期設定では、次の処理を行います。

  1. メニューの禁止: 右上のUIが出てくるのを防ぐ
  2. プレイヤーの透明化: プレイヤーキャラを見えなくする
  3. ピクチャーの表示: 選択候補のキャラ画像をダーク、つまり薄暗い色で表示する

これで、キャラクターセレクト画面の土台ができます。

プレイヤーの左右の向きでキャラクター選択を切り替えるイベント画面

5-2. プレイヤーの向きで分岐する

今回の中心になるのは、条件分岐3ページ目の「キャラクター」から「プレイヤー」、そして「向き」を使う処理です。

  • 左を向いている時: 左側のキャラを通常色にし、右側をダークにする
  • 右を向いている時: 右側のキャラを通常色にし、左側をダークにする
  • それ以外(上下): 両方をダークにして、誰も選択されていない状態にする

この処理を並列処理で常時チェックします。

すると、左右キーを押したときに表示が切り替わり、キャラクターを選んでいるように見せられます。

5-3. 決定ボタンを判定する

選択を確定するには、条件分岐4ページ目の「ボタン」から「決定が押されている」を使います。

キャラクターが選択された状態で決定ボタンを押したら、セルフスイッチをオンにして確認画面へ移行します。

5-4. 無限ループに注意する

「いいえ」を選んでセルフスイッチをオフにし、選択画面に戻るときには注意が必要です。

そのままだと、プレイヤーがまだ左、または右を向いています。すると決定ボタンの分岐がまた発動して、無限ループにはまることがあります。

回避策は、「いいえ」を選んだあとにプレイヤーを下に向かせることです。

下を向いていれば、左右の条件分岐に入りません。これでループから抜けられます。

キャラクターセレクト終了時にメニュー許可やスイッチを戻すイベント画面

5-5. 後片付けをする

イベントが終わったら、後片付けもしておきます。

メニューの許可を元に戻す、セルフスイッチをオフにする、キャラセレクトスタートのスイッチをオフにする。こうした処理を入れておくと、同じイベントを何回でも実行しやすくなります。

まとめ

今回の条件分岐のポイントは、次のとおりです。

  • 条件分岐はフロー制御にあり、4ページにわたってさまざまな条件を設定できる
  • AND条件は、条件分岐の中に条件分岐を入れて作る
  • 不等号は使い分けが大事で、「以上」と「イコール」では挙動が変わる
  • 数値入力・名前入力は、事前に変数やアクター名を初期化する
  • プレイヤーの向きを条件に使うと、キャラセレクトのような演出ができる
  • 無限ループには注意し、ボタン判定を使うときはプレイヤーの向きで逃がす

条件分岐を使いこなせると、作れるイベントの幅が大きく広がります。

まずは装備チェック、パスワード入力、キャラクターセレクトのような小さなイベントから試してみると、条件分岐の感覚をつかみやすいはずです。