RPGツクールMV:お城の中にいろいろな人を作る

ここでは、話しかけるたびに言うことが変わったり、話したときの状態(レベルや、他の人に話しかけたか、など)によって話すことが変わる人を作る方法について説明します。主にイベントの「条件分岐」「スイッチ」「変数」という機能を使います。ちなみに、これらの機能を組み合わせてイベントを作ることは、いわゆる「プログラミング」そのものです。

ここでは、説明のために中級編の「王国の城」の記事で作ったマップを使っています。あくまで説明のために使うだけなので、このマップでなくとも記事に書かれていることと同じことはできます。

1回目と2回目で違うこをと話す王妃様を作る(セルフスイッチ)

最初に話したときだけ「ああ、勇者様。よく来てくださいました。どうか娘を取り戻してください」と言い、2回目以降は「こんな時に、聖なる剣があれば…」とつぶやくようになる、しゃべった回数でセリフの変わる王妃様を作ってみます。このような、場合によって話すことが変わる人を作る方法として、セルフスイッチという機能があります。ここでは、セルフスイッチを使ってセリフを変える方法について説明します。

イベント編集モードにしておいてから、王妃様を置きたいタイルで右クリックして「新規」を選びます。

イベントの画像やオプションなどを設定します。

まず、王妃様が最初にしゃべりかけたときに話すセリフを入れます。話すようにするには、文章の表示の処理を使います。

実行内容の一番上のところで右クリックして「新規」を選びます。

「文章の表示」を選びます。

1回目にしゃべるセリフを入れます。顔も設定します。

こんな感じになりました。テストプレイをしてみると、

文章に入れたとおりにしゃべります。しかし、このままでは何度話しかけても同じことを話します。そこで、スイッチというのを使います。

1回目に話をした直後に、セルフスイッチの操作という処理を入れます。

このボタンを押して、

このままOKを押します。

すると、このようになります。王妃様がしゃべった後で、セリフスイッチがONになるようになりました。しかし、これではまだセリフは変わりません。この次に、ウィンドウの上にある「EVページ作成」のボタンを押して、新しいイベントのページを作ります。

これのボタンを押します。

すると、このように左上に「2」と書かれたタブができて、新しいイベントのページができます。ここで「出現条件」というところの「セルフスイッチ」のところにチェックを入れて、スイッチAを選びます。

こうすると、このイベントの2番のページは「セルフスイッチAがONになっていた時に実行される」ようになります。

実際にこのページにセリフを入れて、試してみましょう。

このように入れています。画像やオプションなども設定しておきます。

こうなりました。では、テストプレイしてみましょう。

1回目は、イベントページ1の文章をしゃべりますが…

2回目は別のことをしゃべりました。3回目以降は、何度話しても同じことをしゃべります。これは、2回目にしゃべったときはセルフスイッチの操作をしていないからです。試しに、2回目にしゃべったときに、セルフスイッチAをOFFにしてみましょう。

こんな感じです。

実行内容はこうなります。これでテストプレイすると、イベントページ1と2のセリフを交互にしゃべるようになります。このように、セルフスイッチを使うことで、同じ人でも話すたびに違うことを話せるようにできます。

ただし、セルフスイッチはあくまでONとOFFの切り替えしかできないので、スイッチひとつでは2種類のセリフを切り替えることしかできません。話すたびにどんどん内容を変えていきたければ、スイッチのB、Cなども使う必要があります。たとえば、3回目にしゃべるとさらに違うことを言うようにする場合は、スイッチBを使います。

イベントの3ページ目を作り、セルフスイッチBがONになっているときに、これが実行されるように出現条件を設定します。

そして、イベントの2ページの最後の処理に、セルフスイッチBをONにする処理を入れます。こうすると、王妃様は1回目はページ1の内容を、2回目はページ2の内容を、3回目以降はページ3の内容をしゃべるようになります。

ここで二つ重要なことがあります。ひとつは、イベントを実行するかどうか(出現条件)のチェックは、ページ番号が大きいほうから小さいほうに順番にされるということです。二つ目は、セルフスイッチは「一人の人の中でだけ有効」ということです。順番に説明しましょう。

イベントページは番号の大きいほうから条件がチェックされる

イベントの1-3のページは、王妃様が「どれをしゃべるか」を考えている、頭の中のようなものです。王妃様は「セルフスイッチ」のどれがONになっているかをチェックしていき、AがONならページ2を実行し、BがONならページ3を実行し、どれもONでなければページ1を実行します。

最初はどのスイッチもONではないので、ページ1が実行されます。

王妃様の頭の中(イベントの処理)はこんな感じです。こういうことを考えた結果、ページ1のセリフをしゃべります。

では、一度しゃべってスイッチAがONになった後で、話しかけられた時はどうでしょう。

王妃様はこう考えて、ページ2のセリフをしゃべります。


そして、ページ2の内容をしゃべったあとは、セルフスイッチBをONにします。このあと、さらに話しかけられるとどうでしょうか。

こう考えて、ページ3のセリフをしゃべります…という感じであってそうなのですが、ちょっと待ってください。よく考えると、スイッチAもONになってますよね。

王妃様の頭の中はこんな感じになってそうです。でも、実際にはページ3の内容だけをしゃべります。つまり、スイッチAがONであることは無視し、スイッチBがONであることだけを王妃様は見ています。

こんなことになるのは、王妃様は「イベントのページ番号が高いほうから順番に、しゃべる条件を見ている」からです。具体的に言うと、スイッチAだけがONのときは、実際には下のように考えています。

最初にページ3の条件(スイッチBがON)をチェックして、スイッチBがOFFだと分かったので、次にページ2の条件(スイッチAがON)をチェックしています。それでスイッチAがONならば、スイッチ2のセリフをしゃべるわけです。

スイッチBとAが両方ONのときは、ページ3の条件「スイッチBがON」を先に見て、王妃様はこのページをしゃべればいいんだと分かります。その結果、ページ3のセリフをしゃべるだけになり、ページ2やページ1は無視されます。

ややこしいのですが、一つのタイル(人、物)に対してイベントページが二つ以上あるときは、必ずこのように「番号の大きいページから」順番に条件がチェックされていきます。このことは、一人の人にいろいろなことをしゃべらせたい時には知っておく必要があります。もし、条件が思った通りに動かないなと思ったら、この条件のチェックされる順序(ページ番号の順序)のせいではないかと疑ってみてください。

セルフスイッチは「一人の人の中でだけ有効」

セルフスイッチは、王妃様とか王様とか、しゃべる人によってそれぞれ別のスイッチとして扱われます。これはつまり「王妃様のセルフスイッチA」と「王様のセルフスイッチA」は違うものだ、という意味です。

王妃様を上の記事で3つのページをつくって、セルフスイッチA,Bをつかってセリフを変えるように作ってあるとしましょう。

ここで、王様を上のような感じで作ります。ページ1でセリフをしゃべったあと、セルフスイッチAをONにします。

ページ2は、セルフスイッチAがONのときにしゃべるようにします。これで、王様に2回目にしゃべったときは、ページ2の内容をしゃべるはずです。

さて、王妃様も1回目しゃべりかけると、セルフスイッチAがONになるようにしました。では、もし王妃様に1回だけしゃべってから、王様にしゃべるとどうなるでしょうか?

答えはこうなります。つまり、王様はセルフスイッチAはOFFだと思うわけです。これは、王妃様のセルフスイッチAをONにしても、王様のセルフスイッチAはONにならないからです。セルフスイッチは、それぞれの人ごとに分かれていて、同じ名前(AとかBとか)が付いていても、別のスイッチとして扱われます。

王様の気分としては、こんな感じです。セルフスイッチは、それぞれの人ごとに分かれているのです。もし、王様と王妃様で共通のスイッチを使いたいときは、「セルフスイッチ」ではなく普通の「スイッチ」を使います。これについては、占い師を作るところで説明します。

いろいろなことを助言してくれる大臣を作る(変数を使う)

ここまでで、セルフスイッチを使って話しかけた回数によって、違うことを話す人の作り方を説明しました。セルフスイッチはAからDまであるので、これを使って5つまでのセリフの切り替えができます。しかし、6つ以上にしたいときはどうすればいいのでしょうか。方法はいくつかありますが、ここでは「変数」を使う方法について説明します。

まずは大臣を置きましょう。イベント編集モードにしてから、大臣を置きたいタイルを右クリックして「新規」を選びます。

イベントの1ページ目は、条件を無しにして自己紹介をするようにします。

こんな感じですね。

さて、大臣も1回話しかけたら、2回目からは違うセリフを言うようにしたいわけですが、セルフスイッチではなく「変数の操作」を選びます。

変数は「単独」を選び、0001というのを選んでおきます(最初から選ばれています)。操作は「加算」として、オペランドは「定数」で数値を1にします。

ここで、0001と書かれたところをクリックしてください。

こんな画面になるので、0001を選んでおいてから、名前を「大臣に話した回数」にしてOKを押します。

こうなります。これでOKを押します。

実行内容はこうなりました。この「変数の操作」のところでは何をしているかというと、「大臣に話した回数を1増やす(回数に1加える)」ということをしています。「大臣に話した回数」はゲームが始まった時点では0になっているので、一度話すと回数が1増えるので、結果的に1になるはずです。

では、次にイベントページを作成してページ2を作りましょう。

出現条件をこのようにします。これは「大臣に話した回数が1以上ならこのページを実行する」という意味です。

ページ2はこのような感じで、ページ1とは違うセリフを入れます。これで、テストプレイしてみましょう。

1回目はページ1のセリフを話します。

2回目は、ページ2のセリフを話していますね。3回以上話しても、ページ2の内容をしゃべります。これは、大臣の頭の中で次のように考えているからです。

最初に話しかけたときは、このように考えてページ1の内容をしゃべります。しゃべったあとに、大臣は「大臣と話した回数」を1増やします。

2回目にしゃべったときは、「大臣と話した回数」が1になっているので、ページ2のセリフをしゃべります。セルフスイッチとできていることは同じですが、スイッチのON・OFFではなくて、「大臣と話した回数」の数字をチェックしているところが違います。このような、数字をカウントしたり増やしたり減らしたりできる仕組みのことを「変数」といいます。

変数は、スイッチと違って数字をカウントできるので、ページの種類を区別するのは4つまで、というような制限がありません。ページ3は「大臣と話した回数」≥2、ページ4は「大臣と話した回数」≥3、というようにしていき、大臣と話したあとに、必ず「大臣と話した回数」を1増やすようにすれば、いくつでもページを増やせます。

例えば、ページ2をこのような感じにして、

ページ3をこのようにすると、大臣に話しかけるごとに、ページ1、ページ2、ページ3と順番に内容を話してくれます。

ここで、ページ4をこのようにしてみます。変数の操作のところで、加算ではなく「代入」を選んでいます。

こうすると、ページ4のセリフを話した後は、大臣と話した回数が1に戻されて、次に話しかけたときはページ2のセリフを話します。

大臣の気分としては、こんな感じですね。「変数」を使うことで、たくさんの違うことを話すようにしたり、好きな番号のページに戻るようにできます。「変数」はこれ以外にも、たくさんの使い方があります。使い方については、それぞれ他の記事で説明していきます。

うろうろ歩く町の人を作る

町の中を、好き勝手に歩き回り、話しかけると挨拶だけする町人を作ってみましょう。

町人が最初にいてほしいタイルに、イベントを作成します。

ポイントは「自律移動」のところを「ランダム」にすることと、オプションを「歩行アニメ」にすることです。これで、おばあさんが町の中を勝手に歩き回ります。

セリフも作っておきます。

これで完成です。テストプレイしてみましょう。

元気に歩き回っています。

話しかけると、挨拶もしてくれます。止まっている人しかいないと味気ないですが、歩いている人がいると、多少なりとも活気がある感じがします。

ただ、この人は完全に気まぐれに歩いてしまい、歩く範囲を決めることができません。場合によっては、道をふさいでしまって、困ることもあります。

こんなふうになってしまうと、アイテム屋にいくことができません。このようなことを防ぐために、歩くルートを決めることもできます。ただし説明が長くなるので、それについてはRPG ツクールMV 初心者講座「町の人を作る」 を読んでみてください。

兵士と話した後でしか話しをしてくれない占い師を作る

Aさんとしゃべった後だとBさんのセリフが変わる、というように、他の人と話すことが条件になっている人を作るには、スイッチを使います。上のほうで、話すたびに話すことが変わる人を作るときに、セルフスイッチというのを使いましたが、それとよく似ています。

セルフスイッチと普通のスイッチの違いは、セルフスイッチは一人の人の中だけでスイッチが切り替わるのに対して、普通のスイッチは「ゲームの中のすべての人(イベント)」で同時に切り替わるという点です。実際にやってみましょう。

兵士に話しかけると「聖なる剣は盗まれてしまった。どこに行ったか分からない」といい、その次に占い師に話しかけると「探し物は、大きな山にあるようです。」と教えてくれるようにしてみます。ただし、兵士に話さずに占い師に話すと、今日の天気についてしか教えてくれないことにしてみます。

まずは兵士を作ります。場所はどこでもいいです。イベント編集モードにしてから、兵士を置きたいタイルの上で右クリックして「新規」を選びます。

イベントの編集ウィンドウでは、画像に兵士を選び、オプションの「足踏みアニメーション」をチェックしておきます。このあたりは、イベントの内容とは直接関係ないので、好きに設定しても大丈夫です。たとえば、好みによって歩き回らせるようにしてもかまいません。

こんな感じです。

セリフは、実行内容のところで右クリックして「新規」を選び「文章の表示」を選んで入力します。

顔と文章を入力します。

実行内容はこんな感じになりました。この「文章」の下の菱形のところに、スイッチの変更処理を追加します。


右クリックで「新規」を選びます。

ここで、スイッチの操作を選びます。

操作するスイッチを選ぶ画面が出るので、0001というところをクリックします。

このような、スイッチに名前を付けられる画面が出るので、0001に「兵士に話しかけた」と付けておきましょう。名前は付けなくても、ゲームの動作自体に影響はないのですが、何も書かないでおくとスイッチを何の目的に使ったのか分からなくなってしまいます。書いておくことで、後から見たときに用途が分かって便利です。

これでOKを押します。

操作のところはONを選びます。すべてのスイッチは、ゲームが始まった時点ではOFFになっています。ONにすることで、ゲーム中で「兵士に話しかけた」ことを記憶することができます。

これで兵士については終わりです。念のため、テストプレイしておきましょう。

普通に話しができます。スイッチの操作もされているはずですが、まだ兵士しか作っていないので、この段階では分かりません。

さて、RPGツクールの画面に戻って、占い師を追加します。

このあたりに追加してみます。

兵士に話してない(「兵士に話しかけた」スイッチがOFFのとき)は、天気の話をするようにしたいので、セリフはこのようにしてみます。

イベントページの1番のタブの内容は、こんな感じになります。

次に、EVページのコピーと貼り付けを使って、2ページ目のタブを作ります。(EVページの新規作成でもよいです)

張り付けた時点では、1ページ目と全く同じになってるはずです。「出現条件」の「スイッチ」にチェックを入れて、「0001 兵士と話しかけた」スイッチを選びます。

こんな感じです。スイッチのチェックは二つありますが、上下のどちらを選んでも同じ実行結果になります。

セリフはこのような感じで、聖なる剣のありかを何となく教えるようにします。

これで占い師は完成です。占い師に話しかけても、スイッチの操作はしていません。これでテストプレイしてみましょう。

兵士と話しをせずに、占い師と話しをすると、天気のことを話します。


しかし、兵士に一度話しをしてから、占い師のところに行くと…

セリフが変わりました。スイッチの操作を入れることで、兵士に話をした後だけ、占い師のセリフが変わるようになりました。ちなみに、この後は何度話しかけても、占い師のセリフは同じです。さらに、話すたびにセリフを変えたければ、セルフスイッチを使うなどする必要があります。

これで、兵士に話した後だけ、剣のありかをそれとなく教えてくれる占い師ができました。ここではイベントページをふたつ使って、スイッチがONのときとOFFのときに話すことを変えましたが、イベントページひとつだけで実現する方法もあります。それについても説明しておきましょう。

さきほど、占い師のイベントはこんな感じで作りました。このイベントをいったん削除して、最初から作り直します。

作り直したところです。ここまでは同じですが、左側の「出現条件」は今度は使いません。

実行内容のところで右クリックして「新規」を選んだあと、「条件分岐」を選びます。

このようなウィンドウが出るので、「スイッチ」を選んで「0001 兵士に話しかけた」が「ON」となるように選択肢から選び、左下にある「条件を満たさないときの分岐を作成」にチェックを入れてから OK を押します。

そうすると、こうなります。「条件分岐」のすぐ下にある菱形のところで右クリックし、ここに「兵士に話しかけた後」の文章を、文章の表示で入れます。

ここに「文章の表示」を入れます。

こんな感じで入れます。すると、

このように、文章の表示の処理が入ります。次に「それ以外のとき」と書かれたすぐしたの菱形で右クリックして、今度は「兵士に話しかける前の」文章を入れます。

ここに文章の表示を入れます。

これを入れると、

こうなります。これで、兵士に話しかけた後(兵士に話しかけたスイッチがON)のときは上の文章をしゃべり、そうでないとき(兵士に話しかけたスイッチがOFF)のときは、下の文章をしゃべるようになります。実際にテストプレイして試してみてください。

このように、条件分岐という処理を使うと、イベントページを複数作らなくても、スイッチを使ってイベントの内容を変えることもできます。「出現条件」が簡単なとき(スイッチひとつがONかOFFかだけを調べるようなとき)は、イベントページを複数使うほうが簡単なことが多いです。しかし、イベントページの左側にある「出現条件」が複雑になってくると、イベントページを分ける方法では、思ったように条件を指定できなくなってきます。この条件分岐という処理を使うと、かなり複雑な条件もかけるので、どうしても書けないときはこちらの方法を思い出してください。

条件分岐については、RPGツクールMV 初心者講座のイベントとは?のページに詳しく書かれています。複雑なイベントを作りたいときは、こちらを読むと参考になります。

以上で、条件分岐を使っていろんな人を使う方法の説明は終わりです。

RPGツクールMV:アイテムショップを作る

アイテムショップは、イベントの作成で作ります。

このマップの右上にアイテムショップの店員さんを置く場合を例にして、アイテムショップの作り方を説明します。マップの見た目は、アイテムショップ作りとは関係ありません。どんなマップの、どこにでも同じようにしてアイテムショップを作れます。


最初に、イベントのアイコンを押して「イベント編集モード」にします。

アイテムショップを作りたいタイルで右クリックして「新規」を選びます。

イベントの編集画面で、画像とオプション(足踏みアニメ)を設定しておきます。名前も「アイテムショップ」などわかりやすいものを付けておきましょう。アイテムショップを複数作るときは、たとえば「王国城のアイテムショップ」
「 魔王城の秘密の店」のような感じで、どこにあるショップなのか区別がつくようにしておきます。

次に、実行内容の一番上の欄でメニューを出し、新規を選びます。

3のタブのところに「ショップの処理…」というのがあるので、それを選びます。

すると、ショップで売るアイテムを選ぶ画面が出ます。

右クリックして「編集」を選ぶか、空欄をダブルクリックします。

「商品」のところから、RPGツクールで最初から用意されているアイテムが選べます。追加したいアイテムを選んでOKを押しましょう。価格は「標準」にすると、アイテムに設定されている価格がそのまま使われます。値段を変えたい場合は、指定のほうにチェックを入れて、売りたい値段を右の欄に入れます。

最初から選べる、4つのアイテムを全部登録してみました。下にある「購入のみ」にチェックを入れると、アイテムを買うことはできるけど、売ることができないお店になります。

選んだ画像が表示され、アイテムショップ(店員さん)ができました。テストプレイしてみましょう。

店員さんに話しかける(スペースキーを押すかマウスでクリックする)と、ちゃんと4つのアイテムを売ってくれます。お金がないので、どれも買えませんが…

これでアイテムショップ自体はできてるのですが、店員さんが何も言わないのは少し味気ない感じがします。そこで、ショップの処理に入る前に、店員さんが「いらっしゃいませー」というようにしてみます。

店員さんの上で右クリックして「編集」を選び、イベントの編集画面を出します。ショップの処理という項目があるので、その上で右クリックして「新規」を選びます(編集ではありません)。すでに登録されている「処理」の上で右クリックして「新規」を選ぶと、その処理の直前に別の処理を追加できます。

「文章の表示」を選んで…

こんな感じで、顔とセリフを入れてみました。

ついでに、ショップの処理の後にもこんな「文章の表示」の処理を追加してみました。

実行内容はこんな感じになります。テストプレイしてみましょう。

ちゃんと挨拶してくれるようになりました。

ショップの処理になったあとで、ショップの画面から「やめる」を選ぶと…

「また、よろしくねー!」と言ってくれます。ちゃんと店員さんが対応してくれている感じになりましたね。

もし、処理を入れる場所を間違ってしまったら、位置を変えたい処理の上で右クリックして「切り取り」を選んで、次に移動させたい場所で右クリックして「貼り付け」することで移動できます。

例えば、こんな感じでショップの処理の後に、いらっしゃいませーが入ってしまったとしましょう。これをショップの処理の前に移動させたいときは、

「切り取り」のメニューを使って切り取ります。

「ショップの処理」を選んで、貼り付けます。

すると、こんな感じで「貼り付け」をした処理の直前に、さきほど「切り取り」した処理がコピーされます。これで、処理の順番を変えることができます。

なお、売るアイテムを新しく作りたいときは、データベースの画面の「アイテム」のタブで新しく作る必要があります。これについては、別の記事で説明します。

武器ショップも作る

ついでに武器のお店も作ってみましょう。やり方は、アイテムショップを作るときと同じで、違うのは商品を選ぶ画面で「武器」を選ぶところです。

武器のチェックを押すと、最初からある4つの武器を選べるようになります。

全部の武器を登録してみました。ついでに防具も登録してみましょう。防具を追加したいときは、商品の画面で「防具」を選びます。

防具も最初から4種類用意されています。

全部登録していました。武器と防具を同時に売ることもできます。もちろん、このリストに登録すれば、アイテムも一緒に売ることもできます。

店員さんのセリフも入れてみました。

完成したイベントはこんな感じです。テストプレイしてみましょう。

武器ショップができました。店員さんも、ちゃんと対応してくれてます。

武器と防具の両方とも売ってます。お金がなくて買えませんが…

何も買わなくても挨拶してくれます。武器や防具も新しく作ることができますが、これも別の記事で紹介する予定です。

倒れたメンバーを復活してくれるシスターを作る

戦闘で味方がやられて戦闘不能になったときに、復活する方法がないとゲームを進める上で困ってしまいますよね。アイテムで復活させるというのも良いですが、たいていのゲームでは復活してくれる人(シスターとか神官とか)が用意されています。ここでは、倒れたメンバーを復活してくれるシスターを置いてみます。

シスターも、イベント編集モードで作ります。シスターを置きたい場所で右クリックして「新規」を選びます。

画像を選んで、オプションで足踏みにしています。ここでは画像を左向きのものを選んでますが、置く場所によって画像の向きは一番よいものを選んでください。

倒れた状態から復活させるには「ステートの変更」をいう処理を選びます。ステートというのは、キャラクターに起こる何か異常な状態(ステート)のことを言います。キャラクターは倒されてしまうと「戦闘不能」という状態(ステート)になります。この状態になっていると、そのキャラクターは戦うことができなくなります。この「戦闘不能」の状態を消す(解除する)ことができれば、倒れた状態から復活して、また戦うことができるようになるわけです。

「ステートの変更」を選ぶと「誰の」「どの状態(ステート)」を変更するかを選べます。「操作」のところにある「付与」は、その状態にするという意味で、「解除」は、その状態がない状態に戻すという意味です。

シスターには、パーティ全員の戦闘不能を解除してもらいたいので、下のように設定します。

これで、誰が倒れても復活してくれます。(全員倒れたらゲームオーバーですけどね)

雰囲気を出すために、それっぽいセリフも作りましょう。

こんな感じにしてみました。さて、テストプレイをしてみたいところですが…さすがに、誰かを戦闘不能にするには時間がかかって大変なので、シスターと逆の「誰かを絶対に戦闘不能にしてしまう」というテスト用の悪魔も用意してみます。

間違ってしゃべらないように、少し行きにくい場所においておきます。作り方はシスターとほぼ同じですが、違うのは「戦闘不能」を解除するのではなく「付与」するところです。

パーティ全体を戦闘不能にするとゲームオーバーになるので、2番目にいるキャラを必ず戦闘不能にするようにしてみます。(ごめんねテレーゼ!)

こんな感じです。テスト用なのでセリフは付けてません(付けても良いです)。

シスターと悪魔の両方が配置されました。ではテストプレイをしてみましょう。

話しかけると、一見何も起こりませんが…

テレーゼが倒れてます!恐るべき悪魔!

この状態で、シスターのところに行って話しかけると…

やはり何も起らないように見えますが、

ちゃんと戦闘不能から戻っています。でもHPは1になってます。もしHPも回復させたければ、戦闘不能のステータスを変更したあとに、さらにHPの増減という処理を入れて、HPを回復させる必要があります。ここでは、シスターは復活させるだけの役目にすることにして、回復は「宿屋」でやってもらうことにします。

これで、復活するということ自体はできてるのですが、画面の上で何も起らないので、何かしてくれた感じが少ないですよね。そこで「画面のフラッシュ」をいう効果を入れて、何かした感じを出してみます。

戦闘不能を解除する直前に、画面がピカピカと光るようにしてみます。

光らせるには、この「画面のフラッシュ」を使います。

光らせる色を変えたり、光っている時間の長さを変えたりできます。ここでは、ひとまず何も変更しないでどうなるか試してみましょう。

こうなりました。ではテストプレイしてみましょう。

写真ではわかりにくいですが、画面が白くなって、1秒かけて元に戻ります。こうすると、何となくシスターに何かされた感じがでますよね。

効果音(SE)を付けると、さらにそれっぽくなります。効果音は「SEの演奏」で追加できます。

いろいろな効果音が用意されているので、聞いてみてよさそうなものを選びます。

ここでは、Recovery というのを選んでみました。英語の単語としては「回復」とか「復活」みたいな意味です。

画面がフラッシュするより前に音を出します。後にすると、画面のフラッシュが終わってから音がして、ちょっと間抜けな感じになります。

写真では全然わかりませんが、音が出るようになっています。音があってないなと思ったら、イベントの編集で別の効果音を選びましょう。

ちなみに、誰も倒れてない状態で話しかけても、シスターは同じように「恵あれ」をしてくれます。もちろん、何も起きませんが…

宿屋を作る

最後に、HPとMPを全快してくれる宿屋を作りましょう。宿屋だけは、なぜかイベントの簡易作成で作れます。

イベント編集モードにして、宿屋の店員を置きたい場所で右クリックして、イベントの簡易作成から「宿屋」を選びます。

宿屋の店員の画像を選び、料金を決めます。

これで、できました。テストプレイしてみたいところですが、最初の時点でキャラクターのお金がないのと、HPやMPが満タンでは回復したかわかりません。そこで、HPとMPを減らしつつ、100Gくれる悪魔を作ります(シスターのところで作った悪魔の再利用でもいいです)。

とりあえず、ここに作ります。すでに悪魔がいる場合は、編集しなおすのでも良いです。

まずは所持金を増やす処理を入れます。

100G増えるようにします。次に、HPとMPを減らします。

HPの増減という処理で、HPを増減します。

操作を「減らす」にして、オペランドの定数を100にします。これで、パーティメンバーのそれぞれのHPが100ずつ減ります。「戦闘不能を許可」にチェックをしないでおけば、HPが100ない時でも0以下にはなりません(1になります)。

MPのほうも100減らしてみます。

MPは減っても戦闘不能になったりはしないので、戦闘不能に関係するチェックはありません。

こうなりました。ではテストプレイしてみましょう。

悪魔に話しかける前はこうです。

スペースを押すかマウスでクリックして話しかけると…

100ずつ減ってますね。調子にのって何度も話しかけると…

死にそうになってます! MPは0になってますね。お金も増えてます。HPとMPを売るとお金をくれるなんて、まさしく悪魔ですね!

それはともかく、これでテストができるようになったので、宿屋に行ってみましょう。

宿屋の店員さんに話しかけて、「はい」を選んでみます。

画面が真っ暗になって、音楽が流れましたでしょうか。これでステータスを確認してみると、

ちゃんと回復してますね。お金も10G減ってます。もし、お金がないときに話しかけると、お金がないよと言われます。

お金がないときは泊めてもらえないという処理は、条件分岐という命令を使って実現しています。これについては、「スイッチと条件分岐」という記事で説明する予定です。

さて、宿屋は一応できたのですが、セリフに顔が表示されないし、画面上で歩いてもいないので、ちょっと味気ないことになっています。イベント編集モードで編集して、顔とアニメーションを付けておきます。

セリフも事務的なので、ちょっと変えてみます。

お金が足りないときのセリフにも顔をつけます。オプションで「足踏みアニメ」にするのも忘れないように。

こんな感じになりました。試してみましょう。

エルフのお姉さんがお出迎えしてくれました。

おおっと、お姉さん厳しいね!

もちろん10G以上持っていれば、ちゃんと泊めてくれます。こんな感じで、宿屋も作ることができます。

これで、ショップや宿屋などの作り方についての説明は終わります。

RPGツクールMV:お城に入れるようにする(複数マップ)

初級編ではマップはひとつだけで、魔王城などに入ることができませんでした。ここでは、魔王城や王国のお城のところまで行くと、王国のお城の中や魔王城の中に入れるようにする方法について説明します。

城に入れるようにするには、まず王国の城の中という新しいマップを作る必要があります。そして、外のマップとお城のマップをイベントを使ってお互いに移動できるようにします。そうすることで、城の中に入れるようにでききます。

まず、新しいマップを作る(複数のマップを作る)方法について説明します。

マップの編集をする画面で、右下のMAP001という項目がある表(シマシマのところ)でマウスの右ボタンをクリックし、出てくるメニューから「新規」を選びます。

そうすると、マップの設定というウィンドウが出てきますので、表示名と名前のところを「王国のお城」にしておきます。名前は何でもいいのですが、わかりやすい名前にしておいたほうが良いでしょう。「表示名」のほうは、ゲーム中にプレイヤーがこのマップに入った時に表示される名前です。普通は「名前」と同じにしておけばよいですが、あえて地名を伏せたいときには、表示名を「???」にしたり、何も入れないでおいたりします。

タイルセットのところを「外観」にしています。ここを「外観」にしておくと、町とかお城の中を作るときに便利なタイル(地形)が使えるようになります。家の中を作りたいときは「内装」にします(魔王の城のところで説明します)。

マップのサイズ(幅と高さ)は17と13になっていますが、ここを変えることでもっと大きなマップも作れます。ここでは両方とも20にしてますが、好きなサイズにして構いません。ただ、お城などのマップは壁が多くなるので、最初に設定されている13よりも少し縦方向(高さ)を大きくしておいたほうが作りやすいと思います。

あと、ここではBGMも設定しています。BGMがないと、寂しいお城になります。

OKを押すと、何も地形が置かれていないマップができます。あとは、初級編でマップを作った時と同じように、左側のパレットから地形(タイル)を選んで、マップを描いていきます。マップを描くときは、上のアイコンで「マップの編集」を選んでおくことを忘れないように。

大きなマップになると、ウィンドウの中に表示しきれなくなります。その場合は、上にある拡大、縮小のアイコンを使って表示されるサイズを変えるか、ウィンドウの右や下にあるスクロールバーを触って、表示する位置を変えます。

これは「縮小」です。左の+が書いてある虫眼鏡は「拡大」です。

実際に作ってみました。 基本的には、外のマップをつくときと同じです。少し注意が必要なのは、ブロック(壁)のように見えるタイルは、上や横からは入り込めないのですが、下からだけは入れるようになっています。

「壁」と言っているのは、この中央に置いたブロックです。このブロックは、上や左右からブロックに入ろうとしても。

このように、進もうとしても進めません。これは問題ないのですが、下からこのブロックに向かっていくと…

こんな感じで、壁なのに入れてしまいます。こうなることを防ぐには、壁の下に少し濃い色の壁を置きます。

これで入れなくなりました。この濃い色の壁は、下からも入れないようになっています。同じ壁に見えても、このように下から入れる壁とそうでない壁があります。これは、実は薄い色の壁にみえるタイルは、壁ではなくて屋根(壁の上の歩けるところ)を作るためのタイルだからです。たとえば、はしごなどを手前に置いたときに、上に上れるようにするために、下から入れなければ上に上ることができません。

例えば、こんな感じではしごを使って壁の上に上れるようにしたいとき、下から入れるタイルなら、

こんな感じで登れます。しかし、下から登れないタイルを屋根(屋上)にしていまうと…

このように、登れません。

ブロックに見えるものには、下から入れてしまうものがあるので、配置したあとに下から入れて(登れて)しまわないかどうか、テストしておく必要はあります。

下から入れるタイルは、パレットを見るとすぐ下にある「壁」のタイルより少し明るい色をしているので、一応見分けはつきます。

さて、魔王の城のほうも作ってみましょう。

王国のお城を作った時と同じように、マップの一覧のところでマウスを右クリックして「新規」を選びます。

名前も表示名も「魔王の城」にしました。タイルセットは「ダンジョン」にしています。BGMも設定しました。マップのサイズも幅と高さを20に変更しています。タイルセット以外は、好きなように設定して大丈夫です。

内装だと、外観のタイルセットとはまた違うタイルがいろいろあります。

いろんなタイルを置いて、魔王城っぽいものを作ってみました。

入り口を右下にして、魔王のいる場所を左上にしてみました。魔王を倒すと、すぐ右にある王女の部屋にいけるという設定にしてみました。魔方陣のある場所は、近づくと「魔王の番人」が出て、魔王の部屋に入るのを妨害するという感じの設定です。

小部屋に分かれているところは、それぞれ扉をつける予定です。空いたりしまったりする扉は、マップの編集ではなく「イベント」として作ります。

扉の作り方

扉を作りには、イベント編集モードにしてから「イベントの簡単作成」のメニューで作れます。


こうしておいてから、扉を作りたいタイルの上で右クリックします。

イベントの簡単作成のなかにある、扉を選びます。

こんなパネルがでるので、OKを押します。画像のところでダブルクリックすれば、扉の絵をかえることもできます。

こんな感じで4か所ほど扉を作ってみました。テストプレイをするために、パーティの初期位置を魔王の城の入り口にしましょう。

データベースの「システム」のタブの右のほうにある、初期位置の「プレイヤー」のところで、魔王の城の入り口を選びます。

こんな感じです。これでOKをしてテストプレイをすると…

魔王城の入り口に出ました。扉の前でスペースキーを押すか、扉をクリックすると…


開けて中に入れます。ちなみに、開けることはできても閉められません。閉まる扉も作れますが、それは上級編で説明します。

マップの間を行き来できるようにする

あとは、魔王城や王国の城に出入りできるようにする必要があります。先に魔王城から出られるようにしましょう。マップの切り替え(お城の出入り)には、イベントの簡易作成で「移動」の機能を使います。

城の入り口を右クリックして、イベントの簡単作成から「移動」を選びます。

移動する先が「場所」のところで選べるので、魔王城の横のタイルを選んでおきます。

ちょっとわかりにくいですが、魔王城のすぐ右のタイルを選んでます。

入り口の二つのタイルとも、同じ場所に移動するようにイベントを設定します。これでテストプレイしてみましょう。

この状態から下に進むと…

このように、城の外に出ることができます。ただし、まだ城に入るほうはできません。城に入れるようにするには、このマップの魔王城のタイルに、イベントの簡単作成で「移動」を選び、魔王城の入り口を指定する必要があります。

このように「移動」を選んで…

「場所」のところで、魔王城の入り口を指定します。

一番下のタイルではなくて、一つ上のタイルを選んでます。ここに飛ぶようにしておけば、一歩下に移動するとまた外に出られます。一番下のタイルにすると、一度上に上がってから下がるか、横に移動する必要があってやや不自然な感じになります。

これでテストプレイしてみましょう。

この状態から、魔王城のほうに移動すると…

中に入れました!

一度設定した移動先を変更したいときは、イベント編集モードにしてから、飛び先を変更したい(とび元の)タイルを右クリックして編集を選びます。


イベントの実行内容が編集できるようになるので、「場所移動」の命令のところで右クリックして「編集」を選びます。

すると場所を選ぶパネルが出ます。

イベントの簡易作成をした時と少し違うパネルになっていますが、「直接指定」の下のボタンを押して、移動先を選んでOKを押せば変更できます。

同じようにして、王国のお城の入り口から出たときも、マップの王国の城の前に移動するように、イベントの簡易作成で設定しましょう。

王国の城は、入り口が3マスありますが、どこに移動しても外に出るようにしたいところです。同じ場所に移動させたい場合は、イベントを一つ作ったあとに、イベントの「コピー」と「貼り付け」を使うことで、簡単に隣のマスにも外に出るというイベントをコピーできます。

ここに作ったイベントを、右クリックして「コピー」して、

すぐ右のタイルに「貼り付け」ます。すると、どちらのマスも同じ場所に飛ぶようになります。

三つのマス全部に貼り付けました。これで、どこに移動しても城の外に出るようになりました。

外のマップのほうからも、お城の位置に来たら、お城の入り口に移動するように設定します。

ここでも、入り口より一つ上のマスに移動するようにしておきます。

このイベントも、お城の右側のタイルにコピーしておきます。

これで、お城のどちら側に入っても、お城に入れるようになりました。あとはテストプレイして試してください。

マップの移動は、入るほうと出るほうで、別々の「移動」のイベントを作る必要があります。そこが少し面倒なところですが、入るほうと出るほうを分けて設定できるおかげで、一方通行の罠の入り口なども作れるようになっています。

移動先のキャラクターの向きを固定する

細かいところですが、お城に入った時のキャラクターの向きを、必ず上のほうを向くようにしておきます。「イベントの簡単作成」でお城に入れるようにしただけだと、

このように、お城に横方向から入ったときに、

このように、横を向いた状態でお城に入ってしまいます。気にしないというのもありですが、お城に入ったのなら上を向いているのが自然な気がします。

お城に入った時にキャラクターに上を向かせるには、お城に入るイベントの設定の中で、キャラクターの向きを指定します。

イベント編集モードにしておいてから、お城に入るイベントを設定したマス(この例ではお城のマス)で右クリックして、編集を選びます。

イベントの編集画面で、実行内容の「場所移動」のところで右クリックし、メニューから「編集」を選びます。

「向き」という項目があるので、ここで「上」を選んでOKを押します。これで、お城に入った時に必ず上を向くようになります。

先に作ったマップの場合、お城の中に移動するマスは二つ作ったので、今編集したイベントをコピーしてもう一方のマスに貼り付けておきます。そうしないと、王城の左のマスに行ったときは上を向くのに、右のマスから入った時は別の方向を向いてしまう、ということが起こります。

なお、イベントが設定してあるマスの上では「貼り付け」ができません。イベントを張り付けなおすときは、先に「削除」する必要があります。削除してから、

コピーして、

貼り付けます。これで右側から入っても、必ず上を向きます。

左から入っても、


ちゃんと上を向いていますね。

なお、お城の右側のマスは、お城に海から入れるようにしない限りは、下からしか入ることができないので、「向き」の設定をしなくてもお城の中では上向き以外にはなりません。ただし、船などを置いて右の海の方向からお城に入れるようにしたときには、この設定をしないと左に向いてしまうことがあります。今は問題ないけど、将来的に問題がおこりそうな場所は、先に直しておいたほうが良いです。作ってから日数がたつと、どういう設定にしたかを忘れてしまうこともあります。

マップ間の関係をわかりやすくする(マップの階層構造)

左側のマップの一覧のところにある「王国」のマップの項目と「王国のお城」「魔王のお城」の項目を見てください。

「王国のお城」という項目が、少し右よりになっているかもしません。ここまでの操作によっては、ずれて表示されていないこともあります。この、ずれて表示されているのは「王国のお城」というマップは「王国」のマップの中にあります、ということを表しています。ずれて表示されていないと…

こんな感じになります。今はそれぞれのマップに名前を付けているので「たぶん、王国というマップが一番外のマップなんだな」とわかりますが、次のようになっていたらどうでしょう。

こうなっていると、どれが外のマップだかわかりません。ずれて表示されていると、

MAP002とMAP003は、たぶんMAP001の中にあるんだな、ということが何となくですがわかります。このような、マップがどのマップの中にあるのかという構造のことを、階層構造と言います。

ここで、MAP002をMAP001 の「外側」に出すには、以下のようにします。

MAP002の項目をマウスでクリックし、そのままマウスのボタンを離さないで、一番上にある「魔王を倒して王女を救え」のところに持っていきます。すると、「魔王を倒して王女を救え」が黄色くなります。

そこでマウスのボタンを離すと、MAP002がMAP001の「外側」に出ます。今度は、逆に外に出てしまった MAP002をMAP001の「中」に入れてみます。

MAP002をマウスでクリックし、マウスのボタンを離さないままMAP001のところに持っていきます。


そこでボタンを離すと、MAP001の中にMAP002が入ります。MAP003のところでボタンを離すと、

MAP003の中に入ります。MAP003はMAP001の中にあるので、MAP002もMAP001の中に入っているという状態になります。

こんな感じで、階層構造が作られていると、より外側にあるマップの左に、 「ー」という表示が付きます。上の状態で MAP003の左にある「-」をクリックすると、

MAP003の中にあるMAP002は表示されなくなり、MAP003の左には「+」が表示されます。この「+」は、MAP003の中に見えていないけど、他のマップがあるよということを意味しています。+を押してみると、


こんな感じで、またMAP002が表示されます。今度はMAP001の左にある「-」を押してみましょう。

MAP002もMAP003も消えましたね。これは、両方ともMAP001の中にあるからです。また「+」を押してみると、

全部表示されましたね。

マップに階層構造があるときに、マップがこのようにずれて表示されているのは、あくまで人間にとって分かりやすくするものです。階層構造を作らなくても、ゲームの動作自体には違いは出ません。ただ、マップの数が多くなってくると、どのマップとどのマップがつながっていたかを覚えていられなくなります。後で見てわかりやすくするためにも、階層構造をつかってマップの外と中の関係を分かりやすくしておきましょう。

もちろん、マップの名前をわかりやすいものにしておくことも重要です。

こんな感じですね。

以上で、マップを複数作って、それぞれの間で行き来できるようにする方法の説明は終わりです。