RPGツクールXP講座



RPGの作り方 Lv2

 Lv2では、少し高度ことをやってみたいと思います。と言っても、まだまだ基本の範疇です。
 それなりにツクールを使ったことがある人にとっては、当たり前のことばかりですので、必要に応じて飛ばして読んでください。
 

始める前の下準備

 これから説明をしていくために、専用のプロジェクトを作ります。みなさんも、同じことをして確認する場合は、同じようにプロジェクトを作って準備してください。

 Lv1からデータを引き継ぎますが、区別するため、フォルダ名とタイトルは、ともに「test2」にします。


ゲームの基本設定

 Lv1では、何も考えずに適当に作りましたが、Lv2では、ゲームの基本設定を決めて作りたいと思います。

◆世界設定
 ごく平凡なファンタジー世界です。ツクールの標準素材などがファンタジー向けなので、ファンタジーにします。

◆人物設定
 主人公は、アルシェス。最初から設定されているキャラをそのまま使います。
 駆け出しの冒険者で、冒険とお宝を求めて旅をしています。
 主人公の仲間も、あらかじめ登録されているキャラを使いましょう。
 シーフのドロシー、クレリックのグロリア、メイジのヒルダを使うこととします。
 
◆ストーリー設定
 アルシェスは、すごいお宝が眠ると噂される洞窟を探検するために、フレイザという村へやってきます。
 そこで知り合った他の冒険者といっしょに、洞窟を探検します。
 しかし、いくら探してもお宝が見つかりません。次第に冒険者たちは、噂の出所を疑いはじめ、村人の秘密を……。

 という感じです。とりあえずは、このくらいでいいでしょう。


初期設定

◆データベースの設定
 データベースの設定は、最初から設定されているものを使いますので、ほとんど変更しませんが、初期パーティだけは、変更しておきます。
 データベースの「システム」の「初期パーティ」の、アルシェス以外を削除してください。
 これで、アルシェス一人の状態から始まります。

▼アルシェス以外を削除





マップを作る

 Lv1で、森と洞窟を作りましたが、これだけでは足りないので、もう少し付け足します。


◆フレイザ村の外観
 フレイザ村の外観マップを作ります。

 マップツリーの「test2」の部分を右クリックしてメニューを出し、「マップの作成」を選択します。

▼新しいマップを作成


 今度は、名前のところにちゃんと「フレイザ」と書きました。マップが多くなると番号では区別しにくいので、ちゃんと分かりやすい名前をつけたほうが良いでしょう。
 ちなみに、003というマップIDを残したのは、後で参照しやすくするためです。(別に無くてもかまいません)

 とりあえず、宿屋と道具屋、村長の家、の3箇所を作ります。最低限これだけあれば、当面は足りるでしょう。

▼フレイザ村の外観マップ


 

◆フレイザ村の内装
 フレイザ村の内装マップを作ります。宿屋、道具屋、村長の家、の3つを作ります。

 マップツリーの「003 フレイザ」の部分を右クリックしてメニューを出し、「マップの作成」を選択します。
 今回は、前回までと違って、「003 フレイザ」を右クリックしているので、「003 フレイザ」の「子マップ」としてマップが作られます。
 このように、村の内装マップなどは、村の外観マップの「子マップ」として作った方が分かりやすくて良いです。

▼新しいマップを作成


 タイルセットは、内装用のものになっています。
 またBGMは、村のBGMと共通なので、設定しません。


◆タイルセットの設定変更
 内装のタイルセットの設定を変えたいので、データベースを開き、タイルセットタブをクリックしてください。
 タイルセット名のリストから、「024:農村 内装」を選択し、オートタイルの3つ目に「053:Wall01」を設定します。
 このオートタイルは、壁の上の天井部分に使います。
 このチップは、「通行:ブロックは、□」「プライオリティは、☆5」に設定します。

▼タイルセットの設定



 宿屋のマップを描いてみました。とりあえず下記のような感じにしておきます。

▼フレイザ村の内装【宿屋】


 同じようにして、道具屋と村長の家も作ります。



◆森
 Lv1で作った森を少し縦に伸ばして拡張します。

▼森



◆マップ移動イベントで各マップをつなぐ
 マップ移動イベントを設置して、村の外観マップの各家の入り口と、各内装マップをつなぎます。
 また、村の北の出口と森の南端をつなぎます。
 これで、すべてのマップがつながります。


◆動作確認
 テストプレイをして、すべてのマップにちゃんと移動できるか、マップにおかしい部分は無いか確認してください。


オープニングを作る 1

 設定も出来ましたし、マップも作りましたので、ゲームらしくオープニングイベントを設定して、ゲームを開始することにしましょう。

 オープニングは、下記のようにします。
・真っ黒な画面に文字だけ表示して、ちょっとした説明をする
・説明が終わったら、村長の家から始まる
・村長の家には、クレリックのグロリアが居て、村長の腰痛を治療している
・村長にお宝のことを聞くが相手にされない
・グロリアに家を連れ出され、成り行きで仲間になる


◆オープニング用のマップを作る
 オープニング用の真っ黒なマップを作ります。
 これは、簡単です。今までどおり、普通に新しいマップを作ってください。これで出来上がりです。
 作ったばかりのマップは、真っ白だと思いますが、この状態で、ちゃんと真っ黒に表示されます。


◆パーティの初期位置の設定
 オープニング用のマップからゲームを始めますので、オープニング用のマップに、主人公の初期位置を設定します。
 オープニング用のマップの真ん中よりやや上の位置を右クリックしてメニューを出し、「プレイヤーの初期位置」を選択します。
 「S」と書かれたイベントチップのようなものが表示されればOKです。(バックの色が白だと少し見にくいですが)


◆主人公を消す
 最初、主人公が見えない状態で始めたいので、データベースを開いて、アクターの設定を変更します。
 アルシェスのキャラクターグラフィックを「(None)」にします。

▼アルシェスのキャラクターグラフィックを変更




◆オープニングイベントの設定
 オープニング用のマップの適当な位置をダブルクリックして、イベントを作成します。
 実行内容は、下図のようにしました。
 トリガーが、自動実行になっている点に注目してください。
 自動実行にすることで、マップが表示されると同時に、イベントが始まります。
 
▼イベント内容


 順番に解説します。

 「BGMの演奏」と、「ウェイト」が連続している部分は、BGMをフェードイン(小さな音から徐々に大きくすること)させようとしているものです。
 最初のBGMの演奏のボリュームは50で、10ずつ大きくなって、最後は80になっています。
 「ウェイト」は、指定時間待つ命令です。ウェイトを10フレームにすると、0.5秒待ちます。
 つまり、この一連のイベントで、BGMのボリュームが、0.5秒ごとに少しづつ大きくなって、最後には普通の音量になるわけです。(このゲームでは、音量80を基準としています)
 
 次に「画面の色調変更」で、下図のように設定します。

▼画面の色調変更 真っ暗に


 これで、画面が真っ暗になります。

 次に、「アクターのグラフィック変更」で、アルシェスのグラフィック(001-Fighter01.png)を設定します。(バトラーグラフィックも忘れずに設定してください)
 先に、データベースの設定で、アルシェスのグラフィックを無しにしていますので、ここで元に戻すわけです。
 しかし、この時点では、画面を真っ暗にしているので、元に戻しても、アルシェスのグラフィックは、見えません。

 次に「画面の色調変更」で、下図のように設定します。

▼画面の色調変更 元に戻す


 これで、画面が元の明るさに戻ります。
 ここで、時間を40フレームに設定しているところがポイントです。
 これにより、画面が2秒間かけて(40フレーム=2秒)、徐々に明るくなるため、アルシェスのグラフィックが、徐々に現れてきます。
 画面の色調変更のすぐ後に、ウェイト45フレームが設定してあるのは、明るくなるまでの時間待つためです。

 次は、文章表示です。
 その前に、「文章表示オプション変更」で、文章位置を中、ウィンドウ枠を非表示に設定してあります。これにより、画面の真ん中にウィンドウ無しで文字のみ表示されるようになります。
 そして「文章の表示」で、ちょっとした説明を表示します。

 次は、BGMのフェードアウトです。BGMを徐々に消していきます。ここで、フェードアウトの時間が設定できますが、これはフレームではなく秒で設定します。ここでは、4秒にしています。

 次に「画面の色調変更」で、さっきと同じように、画面を真っ暗にしています。時間を40フレームに設定してありますので、2秒かけてゆっくり暗くなります。

 最後に、ウェイトで45フレーム待ってから、「場所移動」で村長の家の入り口の2歩下へ移動します。


 ここまでで、オープニング用マップのイベントは終わりです。
 次は、村長の家のイベントです。


オープニングを作る 2

 村長の家のオープニングイベントを作ります。
 このあたりから、イベント実行内容が長くなりますので、適当に省きながら説明します。
 細かい点は、サンプルゲームをダウンロードして、ツクールで開いて見てください。


◆村長の家のオープニングイベント
 村長の家のマップを下図のように作り、下図の位置に村長とグロリアのグラフィックを設定したイベントを設置します。
 また、マップの見えないところに、魔法アニメのグラフィックを表示するためのイベントを設置します。(一番左にあるのがそうです。あの位置は、マップチップにプライオリティ☆5のチップが設定されているので、イベントは隠れて見えません)

▼村長の家のマップ



◆イベントの設定
 グロリアのグラフィックを設定したイベントに、オープニング用のイベントを書きます。
 これも、自動実行です。
 
▼グロリアのイベントの内容 その1


 今までにも使ったコマンドの説明は省きます。

 新しいコマンドに「イベントの位置設定」があります。これは、イベントの表示位置を変える命令です。
 ここでは、[004]のイベントを、村長のイベントに重なるように移動させています。
 [004]のイベントは、魔法アニメのグラフィックを設定しただけのイベントです。下図のように設定されています。

▼魔法効果のイベントの内容


 グラフィックは、「185-Light02.png」の一番上のものです。少し色調を変化させています。
 「停止時アニメ」にチェックすること、ふわふわとアニメします。

 このイベントは、村長のイベントの上に重ねて表示するわけですが、イベントが重なったときの表示順は、イベントIDの大きいものが上、小さいものが下、と決まっています。
 したがって、この魔法効果のイベントのイベントIDが、村長のものより小さいと、下に表示されるので見えません。この点に、注意しましょう。 
 ちなみに、「最前面に表示」にチェックしておけば、イベントIDに関わらず、上に表示されますが、とりあえず今回は使いません。

▼グロリアのイベントの内容 その2


 「効果音の演奏」は、ドアをノックする音です。

 「イベントの位置設定」で、魔法アニメのイベントをマップの見えない位置に移動させて消します。

 次に、「移動ルートの設定」というのが出てきました。これは、色んなことに使える便利なコマンドなので、覚えておきましょう。
 ここでは、村長のグラフィックを変更するのに使っています。
 [EV002]というのが、村長のイベントで、それに対して「112-Civilian12.png」というグラフィックに変更するように設定してあります。
 「移動完了までウェイト」は、「移動ルートの設定」で指定されている動作をすべて終了するまで待つコマンドです。

 次の「移動ルートの設定」は、「このイベント、下を向く」と設定されています。
 「このイベント」とは、このコマンドが書かれているイベントのことです。この場合は、グロリアのイベントということになります。
 「下を向く」は、文字通り下を向かせるコマンドです。これで、グロリアは、下を向くわけです。
 
 次の「移動ルートの設定」は、「プレイヤー、すり抜けON、上に移動、上に移動、上に移動、すり抜けOFF」と設定されています。
 「プレイヤー」とは、プレイヤーがコントロールするキャラクター、主人公のことです。
 「すり抜けON」とは、障害物(通行負荷のチップ)でもすり抜けて通れるようにするコマンドです。
 この時点では、主人公は通行不可のチップの上に居ますので、「すり抜けON」にしてやらないと移動できませんのでそうしています。
 「上に移動」が3つありますので、主人公は、上に3歩歩きます。
 最後に「すり抜けOFF」で、元に戻してすり抜けないようにします。

 その後は、「文章の表示」と「移動ルートの設定」の連続で、演出をしています。
 
 最後に、「場所移動」で村の外観マップへの村長の家の前に移動します。
 このとき、向きを右にしておきます。なぜなら、右側にグロリアのイベントを置く予定だからです。


オープニングを作る 3

 さあ、これでオープニングイベントも最後です。


◆村長の家の前のオープニングイベント
 フレイザ村の外観マップの村長の家の前に、グロリアのグラフィックを設定したイベントを作ります。

▼フレイザ村の外観マップ 村長の家の前


 グロリアのイベントを置く位置は、前のイベントの最後で「場所移動」で主人公を移動させた位置のひとマス右です。


◆イベントの設定
 グロリアのグラフィックを設定したイベントに、オープニング用のイベントを書きます。
 これも、自動実行です。
 
▼グロリアのイベントの内容


 今までにも使ったコマンドの説明は省きます。

 「MEの演奏」で、仲間が加わったときの音楽を流します。

 「アクターの入れ替え」で、パーティに仲間を加えます。ここでは、グロリアを加えています。「アクターの入れ替え」は、仲間をパーティからはずすときにも使います。

 「スイッチの操作」で、[0001]をONにしています。

▼スイッチの操作


 これは、宝箱のところでやった、スイッチによるページ切り替えと同じことをするためです。
 宝箱では、宝箱のイベントのみ、ページ切り替えをすればよかったのでセルフスイッチを使ったわけですが、ここでは他のいくつかのイベントも同様にページを切り替えるため、通常のスイッチを使います。

 スイッチ[0001]をONにすることで、オープニングイベントを終了させます。そのために、オープニングイベントに使ったすべてのイベントに、2ページ目を作り、2ページ目の条件に、スイッチ[0001]を指定します。
 2ページ目は、グラフィックも実行内容も何も指定しません。これにより、スイッチ[0001]がONになると、それらのイベントは、消えて見えなくなるわけです。


◆自動実行イベントの停止
 オープニングイベントで、自動実行のイベントをいくつか作りました。
 自動実行のイベントで注意しなければならないことにひとつに、「忘れずに停止させておく」ということがあります。
 自動実行のイベントは、停止させないと何度でも繰り返し実行されますので、停止させないとゲームが進まなくなります。
 そこで、自動実行イベントの最後で、スイッチなどでページを切り替えるようにしておきます。2ページ目に切り替われば、自動実行イベントは止まります。
 ちなみに、オープニング用マップと村長の家の自動実行イベントは、最後にスイッチを使ってページを切り替えたりしていませんでしたが、それでもイベントが繰り返し実行されることはありませんでした。
 これは、それらのイベントの最後で、場所移動をしていたためです。別のマップへいくと、元のマップのイベントは終了します。
 ただし、もう一度、自動実行イベントの置いてあるマップに入ると、また自動実行が始まってしまいますので、オープニングイベントがすべて終わってから、まとめてひとつのスイッチでページ切り替えをして、すべての自動実行イベントを停止させているわけです。


◆動作確認
 テストプレイをして、確認してみましょう。イベントの設定に間違いが無ければ、オープニングが行われるはずです。

 なお、この時点では、まだおかしなことがあります。それは、オープニングが終わったあと、村長の家に入ると、居るはずの村長が居ないことです。これは、村長のイベントの2ページ目に何も設定していないためですが、とりあえずここは後回しにします。


変数を使う 数値の代入

 さて、いよいよ変数です。変数がよく理解できないという人は多いですね。初心者がつまずく、最も代表的なポイントです。
 ここでは、変数の使い方をいくつか勉強してみましょう。

◆変数とは
 変数とは、データを記録しておくための仕組みです。
 また、変数を使うと計算も出来ます。
 変数の主な使い方は、この「記録」と「計算」です。


◆実際に使ってみよう
 では、実際にやってみましょう。
 まず最初に、変数に数値を記録し、ちゃんと記録されているか確認します。
 とりあえず、フレイザ村の村長の家の近くに、イベントを設置します。

 イベントを作ったら、実行内容のところをダブルクリックし、イベントコマンドのリストから「変数の操作」を選びます。
 
▼変数の設定画面 その1


 変数の操作の設定画面が出ます。「ここをクリック」と書いてあるところをクリックします。
 そうすると、下記のような画面が出ます。
 
▼変数の選択と名前の管理


 ここで、どの変数を操作するのかを選択します。
 ここでは、[0010]を選択します。
 番号だけでは、分かりにくいので、名前のところに名前を書いて分かりやすくします。とりあえず「話した回数」という名前をつけました。
 OKボタンを押します。先ほどの画面に戻ります。
 操作対象の変数が、[0010:話した回数]になっているのが分かると思います。

▼変数の設定画面 その2


 これで、操作する変数を設定できましたので、次に操作の内容を決めます。

▼変数の設定画面 その3


 上図ように設定します。
 「操作」の項目は、「代入」を選択します。
 オペランドの項目は、「23」に設定します。
 これで、変数の[0010]に23という数値を代入する、という処理が行えます。
 ちなみに、代入というのは、変数にデータを入れて記録することです。この場合、23という数値を入れて記録します。

 さて、これで変数に数値は記録できますが、本当に記録されているのか確認しないと分かりません。
 そこで、文章の表示で変数の値を表示することにします。

▼イベント内容


 文章表示の内容は「変数の値は、¥V[0010]です。」としています。
 この"¥V[0010]"の部分で変数の値を表示します。"¥V[n]"が変数表示の命令で、[n]の部分に変数番号が入ります。
 今回の場合、変数[0010]番の内容を表示したいので、"¥V[0010]"と書いています。

 ※ここでは、文字化けが起きないように"¥"を全角で書いていますが、実際には半角で書いてください。


◆動作確認
 テストプレーをして、この人物に話しかけてみてください。
 変数には、23を代入しているわけですから、この人物は下図のように「変数の値は、23です。」と話すはずです。

▼テストプレーの結果




変数を使う 乱数の代入

 先ほど作った、数値の代入のイベントを改造して、今度は乱数の代入をやってみましょう。

◆乱数とは
 コンピューターがランダムに(不規則に)発生させた値を乱数と言います。
 ゲームに不規則性を出したいときに使います。

◆実際に使ってみよう
 では、実際にやってみましょう。
 前回作った、「変数に数値を記録し確認する」人物のイベントを改造しますので、ダブルクリックして開きます。

▼イベントの内容


 実行内容の「変数の操作」の部分を右クリックしてメニューを出し「編集」を選んでください。
 変数の操作の設定画面が出ます。

▼変数の設定画面


 上図ように設定します。
 オペランドの項目に注目してください。乱数が選択され、値が、「1〜200」に設定されています。
 これで、「1〜200」の範囲で乱数を発生させ、変数の[0010]に代入する、という処理が行えます。
 

◆動作確認
 テストプレーをして、この人物に話しかけてみてください。
 前回は、何度話しかけても必ず「変数の値は、23です。」と言いましたが、今回は乱数ですので、話しかけるたびに違う数字を言うはずです。


変数を使う 計算

 次は、変数を使って計算をしてみたいと思います。
 ツクールXPで出来る計算は、加算、減算、乗算、除算、剰余、の5つです。
 加算は、足し算、"+"のことです。
 減算は、引き算、"−"のことです。
 乗算は、掛け算、"*"のことです。(ここでは掛け算は、"*"で表します)
 除算は、割り算、"/"のことです。(ここでは割り算は、"/"で表します)
 剰余は、割り算の余り、"%"のことです。(ここでは余りは、"%"で表します)


◆実際に使ってみよう
 では、実際にやってみましょう。
 「10+4」を計算します。
 前回、前々回に使った人物のイベントを改造しますので、ダブルクリックして開きます。
 そして、実行内容を下記のように設定してください。

▼イベントの内容


 1行目では、変数[0010]に、10を代入しています。(「操作の項目=代入」「オペランドの項目=10」)
 2行目では、変数[0010]に、4を加算しています。(「操作の項目=加算」「オペランドの項目=4」)
 3行目で、変数[0010]に記録されている値を表示します。



◆動作確認
 テストプレーをして、この人物に話しかけてみてください。
 変数[0010]には、10を代入して、次に4を加算しているわけですから、この人物は下図のように「変数の値は、14です。」と話すはずです。

▼テストプレーの結果





◆他の計算の場合
 他の計算も試してみましょう。

 もし、下記のようなイベント内容なら、
 ◆変数の操作:[0010:話した回数]=10(10を代入)
 ◆変数の操作:[0010:話した回数]-=4(4を減算)
 答えは、6になるはずです。

 もし、下記のようなイベント内容なら、
 ◆変数の操作:[0010:話した回数]=10
 ◆変数の操作:[0010:話した回数]*=4(4を乗算)
 答えは、40になるはずです。

 もし、下記のようなイベント内容なら、
 ◆変数の操作:[0010:話した回数]=10
 ◆変数の操作:[0010:話した回数]/=4(4を除算)
 答えは、2になるはずです。(実際には2.5ですが、小数点以下は切り捨てられます)

 もし、下記のようなイベント内容なら、
 ◆変数の操作:[0010:話した回数]=10
 ◆変数の操作:[0010:話した回数]%=4(4の剰余)
 答えは、2になるはずです。

 色々やって、確認してみましょう。


変数を使う 回数のカウント

 今まで作ってきた変数を利用したイベントは、実際にゲームで使えるものではありませんでした。
 次は、変数を使ったカウントを利用して、実際にゲームで使えるものを作ってみましょう。

◆カウントとは
 変数を使って、回数を数えることをカウントと言います。
 ゲーム中に、ある出来事が何回起こったか調べるのに使います。

◆実際に使ってみよう
 では、実際にやってみましょう。
 また、例の人物のイベントを改造しますので、ダブルクリックして開きます。


▼イベントの内容 1ページ目


 ここでは、選択肢を使ってプレイヤーに「はい」か「いいえ」かを選ばせ、「はい」を選んだら、情報を与えるようにしています。
 そして、情報を与えたら、変数[0010:話した回数]に、1を加算します。(このとき、変数[0010:話した回数]に記録されている値は、1になります。なぜなら、変数の値は、ゲーム開始時にすべて0になっているからです。0に1を加算するので、変数[0010:話した回数]の値は、1になります。)


▼イベントの内容 2ページ目


 2ページ目の条件に、「変数[0010:話した回数]が1以上」と設定されています。
 したがって、1ページ目のイベントが実行され、「はい」を選んで情報を聞いた場合のみ、2ページ目に切り替わります。
 2ページ目のイベント実行内容は、主人公を冷たくあしらって、その後再び、変数[0010:話した回数]に、1を加算します。(このとき、変数[0010:話した回数]に記録されている値は、2になります)


▼イベントの内容 3ページ目


 3ページ目の条件に、「変数[0010:話した回数]が2以上」と設定されています。
 したがって、2ページ目のイベントが実行され、変数[0010:話した回数]の値が2になると、この3ページ目に切り替わります。
 3ページ目のイベント実行内容は、主人公を冷たくあしらうものですが、ここに前にも使った"¥V[0010]"という表記が使われています。これにより、3回目以降、この人物と話すと「もう3回目だぞ!」「もう4回目だぞ!」というふうに、話すたびに数字が増えていきます。
 ちなみに、この3ページ目だけ、「文章の表示」をする前に「変数の操作」で加算をしています。これは、後に加算すると、加算した結果が表示されるのが、次に話しかけたときになってしまうからです。回数を正しく反映させるために、表示の前に加算しています。
 

◆動作確認
 これで、変数の値を加算してカウントすることにより、話すたびに内容が変わる人物を作ることが出来ました。
 テストプレーをして、この人物に話しかけてみてください。正しく、動作するでしょうか?


条件分岐を使う

 次は、条件分岐を使って、状況に合わせて処理を変えます。
 ゲームでは、この条件分岐を非常によく使います。実は、これまでにも使ってきました。スイッチによるページの切り替えです。「スイッチ=条件」によって「ページを切り替える=処理を分岐させる」わけですから、これも条件分岐のひとつです。

 しかしここでは、もうひとつ別の条件分岐の方法を使います。コマンドにある、その名も「条件分岐」です。
 この「条件分岐」を使うと、非常に多種多様な条件を使って分岐させることができます。
 

◆どんなイベントを作るか
 もう一人の仲間(ドロシー)を、パーティーに加えるイベントを作ります。
 グロリアが、ドロシーにお金を貸していることにします。ドロシーは、宿屋に居ます。
 村の北の出入り口のマップ移動イベントに条件分岐を追加して、ドロシーがパーティに居るか居ないかで分岐します。
 村の北の出入り口のマップ移動イベントを下図のように修正します。

▼イベントの内容


 条件分岐の設定は、下記のようになっています。 

▼条件分岐の設定


 ここでは、アクター(ドロシー)が、パーティに居るかどうかを条件にしています。
 「条件に当てはまらない場合の処理を設定」にチェックがつけてありますので、居る場合と居ない場合の両方の処理を設定できます。
 ドロシーが、パーティに居る場合は、森のマップへ場所移動します。
 ドロシーが、パーティに居ない場合は、グロリアがドロシーのことを思い出して、一歩戻るようになっています。
 スイッチの操作で、[0002:ドロシーのこと思い出す]をONにしているのは、後で別の条件分岐に使うためです。


◆ドロシーのイベント
 次にドロシーが仲間になるイベントを、宿屋に作ります。
 ドロシーは、寝ているので、布団のところにイベントを作ります。

 ▼イベントの内容


 最初の条件分岐は、スイッチの[0002:ドロシーのこと思い出す]がONになっているかどうかで分岐しています。
 スイッチ[0002:ドロシーのこと思い出す]は、先ほど作ったマップ移動イベントで、グロリアがドロシーのことを思い出したときにONにしています。ドロシーのことを思い出しているかどうかで分岐して、セリフを変えているわけです。

 次の条件分岐は、主人公がどちらの方向を向いているかで分岐しています。
 これは、ドロシーに話しかけたときの主人公の位置を調整するために行っています。
 なぜそんなことをするかというと、このイベントは、主人公がドロシーの右側にいないと、正常に動かないためです。
 そこで、主人公が右側に来るように調整しているわけです。
 ちなみに、移動速度の変更は、主人公が移動するとき、あんまり動きが速いと変なのでその調整のためです。一旦3に落として動かしてから、4に上げて戻しています。(主人公の標準速度は4です)

 これ以降のイベント実行内容は、今までやってきたことと同じような処理なので省きます。
 
 最後に、セルフスイッチの操作で、ページ切り替えをしてドロシーを消しています。宝箱のときと同じ要領です。


◆動作確認
 テストプレーをして、確認してみましょう。以下のようなことを確認します。
 ・ドロシーが仲間になる前に、村を出ようとすると、グロリアがドロシーのことを思い出して村から出られないこと
 ・ドロシーに話しかけた時、ドロシーのことを思い出しているかどうかでセリフが変わること
 ・ドロシーに話しかけた時、主人公がドロシーの上か下にいると、右へ移動すること


Lv2のまとめ

 これで、「RPGの作り方 Lv2」は、終わりです。
 ストーリーも少し出来ましたし、仲間も増えました。一応、RPGっぽいものが出来たと思います。
 次回は、戦闘などを加えて、主人公たちに冒険をさせてみましょう。

 ここまで作った分を、下記からダウンロードできます。

 サンプルゲーム「test2.exe」288KB



Last Updated : 2004-10-19

Copyright © 2004 noziko irie. All rights reserved.
http://gcg.sakura.ne.jp/tt/tt_top.htm