TOPへ

今日からはじめるRPGツクールVX講座

第17回 「ダンジョンに仕掛けを作ろう2」

初心者向けRPGツクールVX講座、第17回目です。
第16回では、テストプレイで使える機能など知っておくと便利な機能を紹介しました。
今回は、再び本編に戻って、魔王城2階のイベントを作っていきたいと思います。

STEP40.魔王城の仕掛けをイメージする2

魔王城の2階は、魔王の部屋がある最後のフロアです。魔王の部屋は、マップ左上の赤い絨毯に囲まれた玉座のある空間です。今回は部屋に通じる通路に、通せんぼする門番を置いてみたいと思います。この門番は秘密の暗号を伝えないとどいてくれないので、プレイヤーは秘密の暗号を探さなければなりません。

魔王城・2階の仕掛けを考えてみました。

  • 魔王の部屋の前で門番(モンスター)が通せんぼしている
  • 秘密の暗号を伝えると、門番がどいてくれて魔王の部屋に入れるようになる
  • 秘密の暗号は3ケタの数字で、2階にある看板に書かれている

大まかなイメージとしては、2階にある看板を調べて秘密の暗号を知り、それを門番に伝えることで魔王の部屋に入れるようになるという流れです。

まず、魔王の部屋に通じる通路に門番(モンスター)のイベントを置いて先へ進めないようにします。「魔王城・2階」(025,038)にある看板を調べると秘密の暗号(3ケタの数字)を知ることができるようにします。その暗号を門番に伝えると、門番がどいてくれます(門番のイベントが消える)。

ここで重要となるのが、3ケタの数字で表された秘密の暗号を門番に伝える方法です。一番シンプルなのは、スイッチを使うやり方です。暗号の書かれた石像を調べた時点でスイッチをONにして、その状態で門番に話しかけると門番が消える……という風にすれば、イベントとしては成立します。しかし、それでは暗号が存在する意味がほとんどありません。そこで新たに紹介したい機能が、イベントコマンド[数値入力の処理]です。これはプレイヤーに数値を入力させ、その数値を任意の変数に代入できるという機能です。

次のステップでは、実際にこの機能を使ってプレイヤーに秘密の暗号を入力させるイベントを作っていきます。

STEP41.変数の応用

秘密の暗号を用意する

はじめに、プレイヤーに入力させる秘密の暗号を決めておきましょう。この暗号は3ケタの数字です。どんな数字でもよいので「123」としておきます。

看板のイベントを作成する


●イベントの新規作成

秘密の暗号が決まったら、それをプレイヤーに教えるイベント(看板)を用意します。「魔王城・2階」(025,038)にカーソルを合わせて右クリック、ポップアップメニューから[イベントの作成]を選びます。


●グラフィック・オプションの設定

すでにマップに看板のタイルが置いてあるので、グラフィックを設定する必要はありません。[プライオリティ]は[通常キャラと同じ]にしておきます。[自律移動][オプション][トリガー]は初期設定のままでかまいません。


●イベントコマンド[文章の表示]

メッセージで、プレイヤーに秘密の暗号を教えてあげましょう。[実行内容]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にある[文章の表示]を選びます。これで看板を調べると秘密の暗号がわかるようになりました。

門番のイベントを作成する


●新規イベントの作成

次に門番を作成します。モンスターが通路を塞ぐようにしたいので「魔王城・2階」(015,027)に配置します。ここにカーソルを合わせて右クリック、ポップアップメニューから[イベントの作成]を選んでください。


●グラフィック・オプション設定

[グラフィック]をダブルクリックしてモンスターの絵を設定します。Monsterの上の段、一番右の絵を選択します。[自律移動][オプション][プライオリティ][トリガー]の設定は変更しません。

※ここではイベントグラフィックとして、[Monster]にある悪魔の絵を選びましたが、RPGツクールVXの体験版にはこの画像は入っていません。体験版をご利用の方はご注意ください。

[文章の表示]でメッセージを入力


●イベントコマンド[文章の表示]

[実行内容]と書かれた下にある「◆」のマークをダブルクリックして、イベントコマンドの一覧から[文章の表示]を選択します。キャラクターのグラフィックに合った顔グラフィック(Monsterの上の段、一番右の絵)を選び、メッセージを入力します。先へ進むためには秘密の暗号を答える必要がある旨を伝える内容であればかまいません。


●イベントコマンド[文章の表示]

続いて、もうひとつ[文章の表示]を設定し、秘密の暗号を入力をうながすメッセージを表示させます。このメッセージは次に設定する数値入力の処理]と組み合わせて表示されることになります。

[数値入力の処理]を設定する


●イベントコマンド一覧1ページ目

[文章の表示]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にあるイベントコマンド[数値入力の処理]を選んでください。


●イベントコマンド[数値入力の処理]


●[変数]ダイアログ

イベントコマンド[数値入力の処理]は[変数の操作]と似たような機能です。[数値を受け取る変数]というのは、文字通りプレイヤーが入力した数字の受け取り先の変数のことです。ここで指定された変数の中に数字が代入されます。「…」をクリックすると[変数]のダイアログが出てきます。プレイヤーが入力した数値を受け取る変数を指定します。ここでは0002番の変数を使用します。わかりやすいように「秘密の暗号」という名前をつけました。[桁数]というのは入力される数字のケタ(桁)のことです。秘密の暗号は「123」ですので3ケタ、「3」と入力します。


●[数値入力の処理]設定後

[条件分岐]の設定

上で設定した[数値入力の処理]ではプレイヤーが入力した3ケタの数字を、変数[0002番:秘密の暗号]の中に代入することしかできません。そこで変数[0002番:秘密の暗号]に代入された数値が、正解の暗号「123」と同じかどうかを確認する必要があります。そのために設定するのがイベントコマンド[条件分岐]です。これは、スイッチや変数の状態だけでなく、特定のアイテムを所持しているか、特定のメンバーがパーティーにいるかなど、さまざまな“条件”を満たしているかをチェックし、その結果によってイベント内容を“分岐”させるものです。


●イベントコマンド一覧1ページ目

これは細かく説明するよりも、実際に操作してみたほうが直感的にわかりやすいと思います。[数値入力の処理]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にあるイベントコマンド[条件分岐]を選んでください。


●[条件分岐]ダイアログ

[条件分岐]ダイアログではタブが4つもあり、設定できる条件がたくさんあって難しそうに見えますが、いちどに指定できる条件はひとつです。今回指定したい条件は、変数[0002番:秘密の暗号]の中の数値についてですので、タブ1にある[変数]にチェックをつけます。

※条件分岐は選択可能な項目が多数あります。ここではわかりやすさを優先するため[変数]以外の条件項目については触れていません。


●[条件分岐]にて[変数]を指定

初期状態では、変数[0001番:石版を壊した数]が選択されていると思います。右にある「…」をクリックして[変数]ダイアログから[0002番:秘密の暗号]を選択してください。正解となる暗号(数値)は最初に「123」と決めてありますので、[定数]にチェックがついたまま「123」と入力すればOKです。

その下の項目の初期状態は「と同値」となっています。ちょっとわかりにくいですが、ここは変数[0002番:秘密の暗号]に代入された数値(プレイヤーが入力した数字)と、指定した[定数](123)を比較する方法を示しています。つまり[0002番:秘密の暗号]の中の数値と「123」が同値(同じ)かどうかを比較するという意味になります。今回は、入力された数字が「123」以外ではNGとしますので、この箇所は「と同値」のままでかまいません。ちなみに「▼」をクリックすることで「以上」「以下」「以外」など、さまざまな条件に変更することができます。これらはイベントの内容に応じて使い分けることになります。なお[条件に当てはまらない場合の処理を設定]にはチェックを入れたままにしておいてください。


●[条件分岐]設定後

イベントコマンド[条件分岐]を設定すると、写真のような表示内容になります。青い字で「条件分岐:変数[0002番:秘密の暗号]==123」、「それ以外の場合」、「分岐終了」と書かれていて、「条件分岐:変数[0002番:秘密の暗号]==123」と「それ以外の場合」の下に一文字分下がったところに「◆」があります。

これは「条件分岐:変数[0002番:秘密の暗号]==123」が成立する場合はその下にある「◆」に続くイベント内容を、「それ以外の場合」にはその下にある「◆」に続くイベント内容を実行するという意味になります。ややこしいですが、「分岐終了」までが、このイベントコマンド[条件分岐]の及ぶ範囲となります。この範囲に、成立した条件ごとの内容を挟み込む形で、それぞれに応じたイベントを別個に組んでいくことになります。

正解の場合のイベント設定


●プレイヤーが正解(123)を入力した場合

「条件分岐:変数[0002番:秘密の暗号]==123」が成立した場合、つまりプレイヤーが正解を入力できた場合のイベント内容を設定します。


●イベントコマンド[文章の表示]

まずは、プレイヤーに正解したことをメッセージで教えてあげましょう。「条件分岐:変数[0002番:秘密の暗号]==123」の下にある「◆」をクリック、イベントコマンド一覧の1ページ目にある[文章の表示]を選びます。


●イベントコマンド[スイッチの操作]

同じイベントが繰り返されないようにスイッチを設定しておきます。下にある「◆」をダブルクリックしてイベントコマンド一覧の1ページ目にある[スイッチの操作]を選びます。[スイッチ]の項目は[単独]にチェックがついた状態で右側にある「…」をクリックします。


●[スイッチ]ダイアログ

ここでは新たに0006番のスイッチを使用します。スイッチの名前はわかりやすいように「秘密の暗号に正解」にしました。[操作]は[ON]の状態のままで[OK]をクリックします。これで正解のときのイベントは完成です。

不正解の場合のイベント設定


●プレイヤーが不正解だった場合

「それ以外の場合」が成立した場合、つまり間違った暗号を入力してしまった場合のイベント内容を設定します。


●イベントコマンド[文章の表示]

プレイヤーに不正解であることをメッセージで教えてあげましょう。「それ以外の場合」の下にある「◆」をクリック、イベントコマンド一覧の1ページ目にある[文章の表示]を選びます。これで不正解のときのイベントは完成です。

イベントの2ページ目を作る

2ページ目の役割は暗号の入力に正解した後の状態、つまり門番が消えている状態を表現することです。イベントの編集画面の上の方にある[イベントページ作成]をクリックして2ページ目を新規作成します。


●出現条件[スイッチ]

イベントの出現条件は[スイッチ]にチェックを入れます。ここで参照するスイッチは[0006:秘密の暗号に正解]です。


●2ページ目完成

イベントの出現条件以外、2ページ目の内容は設定しません。グラフィックは選択せず、[プライオリティ][自律移動][オプション][トリガー]も初期設定のままにします。これで門番のイベントは完成です。

テストプレイで確認

以上で、暗号の書かれた看板、暗号を答えさせる門番のイベントが用意できました。最後に忘れずにテストプレイをしておきましょう。チェックポイントは以下の項目です。

  • 「魔王城・2階」(025,038)にある看板を調べて秘密の暗号(123)を知ることができるか?
  • 「魔王城・2階」(015,027)にいる門番(モンスター)に話しかけたとき[数値入力の処理]が実行されるか?
  • 上記[数値入力の処理]の際、123を入力したとき正解のメッセージが表示されるか?
  • 同じく[数値入力の処理]の際、123以外を入力したとき不正解のメッセージが表示されるか?
  • 秘密の暗号に正解した後、「魔王城・2階」(015,027)の門番が消えているか?

イベントがうまく実行されない場合は[数値入力の処理][条件分岐]の設定に問題がある可能性があります。今回の講座を読み返しながら、1項目ずつ確認してみましょう。

第17回はここまでです。次回は、魔王との対決イベントを作る前に、モンスターの作り方について紹介しておきます。

今回のプロジェクトデータ:vx_kouza17.exe (423KB)
※RPGツクールVX体験版では[プロジェクトを開く]の機能を使うことができません。こちらのサンプルデータを読み込むためにはRPGツクールVX製品版が必要となります。あらかじめご了承ください。

目次に戻る