8.マップの移動設定

「フィールド」、「村」、「森」の3つのマップが完成しましたので、各マップを行き来できるように移動するイベントを設定していきます。

ここからはイベントコマンドを使っていきますが、ウディタには様々なイベントコマンドが備わっており、機能が多すぎて混乱してしまうかもしれませんが、本記事の説明からひとつひとつ理解していくことで使いこなせるようになりますので、頑張っていきましょう!

フィールドマップからの移動設定

まずは前のステップの最後で説明した「マップ選択ウィンドウ」を表示します。
ツールバーの中央右にある「マップ選択」のアイコンを押します。
メニューから「表示>マップ選択ウィンドウ」でもOKです。

「マップ選択ウィンドウ」を表示したら、「0:フィールド」を選びましょう。

フィールドマップに切り替わったら、イベントレイヤーを選択します。

村のシンボルがある場所にカーソルを移動させます。
ここから村のマップに移動するイベントを設定していきます。

マウスの左ボタンをダブルクリックすると「イベントエディタ」が表示されます。
また、村のシンボルの上にイベントアイコンが表示されました。

「イベントの名前」「イベントの起動条件」を設定していきます。
イベントの上に主人公キャラが載ったら、移動するようにするため、「イベントの起動条件」「プレイヤー接触」に設定します。

次は移動するというコマンドを設定していきます。

「イベントエディタ」の右側にある「コマンド入力ウィンドウ表示」ボタンを押します。
また、現在空白のイベントコマンドが記述されていく「イベントコマンド表示欄」のアクティブになっているブルーの部分をマウスの左ボタンでダブルクリックしたり、右クリックメニューで表示されるメニューからも「イベントコマンド入力ウィンドウ」を開くことができます。
「Enter」キーか「Space」キーを押すだけでも表示可能です。

「場所移動」のコマンドを選択します。

「対象」を「主人公」を選び、「移動先を見ながら指定」ボタンを押します。

「場所移動地点の選択ウィンドウ」が表示されますので、移動させたいマップを左の「マップ一覧」から選びます。今回は「1:村」ですね。
次にマップの画像が表示されている画面で移動させたいポイントをクリックします。今回は村マップの上側にある道に続く場所にしました。ギリギリのところから1~2マス空けるのがポイントです!
移動させたいポイントを間違えたら、もう一度正しいポイントをクリックすれば修正されます。
右下の「OKボタン」を押します。

「移動先マップ」「移動先座標」に「場所移動地点の選択」で程設定した内容が反映されています。
「場所移動時オプション」として、トランジション(マップが切り替わる際の画面演出)を設定できるので、好みで設定してください。「トランジションを行う[暗転有り・遅い]」がマップが切り替わるのに雰囲気がでて良いと思います。
内容を確認にしたら、下の「入力ボタン」を押します。

「イベントコマンド表示欄」に今設定した場所移動コマンドが入力されています。
こまめにセーブということで、「セーブボタン」でしっかり保存しておきましょう。


同じように今度は森のマップに移動するイベントを設定していきます。
「名前」「起動条件」を設定していきます。
森は明確なシンボルが無く、イベントアイコンを中心とした範囲に入ったら、イベントが起動するように「接触範囲拡張」で調整します。
説明用の赤枠と同じ色なのでわかりにくいですが、内側の太い赤枠がイベントが起動する範囲になります。

「場所移動」のイベントコマンドを入力します。
前回「場所移動」コマンドを使用した際の設定が入力されていますが、上書きされるので、そのままで大丈夫です。
「対象」が主人公となっているのを確認し、「移動先を見ながら指定」ボタンを押します。

マップ一覧から「2:森」を選び、マップ画面の一番下から1マス空けた位置を選択し、「OKボタン」を押します。
森のマップは広いので、マップを一気にスクロールさせたり、画面上にならんだ「1/2,1/4,1/8」で縮小表示させて目的のポイントを表示させましょう。

内容を確認し、「場所移動時オプション」(トランジション)の選択などもしたら、「入力ボタン」を押します。

またこまめにセーブということで、「セーブボタン」を押しましょう。
これでフィールドから各場所への移動設定が完了しました。

イベントウィンドウや各イベントコマンドで表示されるウィンドウは作業の邪魔になったら、いつでもウィンドウの右上の☓ボタンを押して消すことが出来ます。
セーブをしていなくとも、マップを切り替えたりしない限りは編集中のイベント内容が消えたりすることはありません。
でも、こまめなセーブは忘れずに!

村マップからの移動設定

今度は村のマップ内に場所移動イベントを設置していきます。
「マップ選択ウィンドウ」「1:村」を選択します。

村マップの一番上の道部分にイベントを設置します。
「イベントの名前」「イベントの起動条件」を設定していきます。
道幅があるので、「接触範囲拡張」で調整します。
小さい木にはみ出ていますが、小さい木には主人公キャラは移動できないので、このままで構いません。

少し省略して、「場所移動」のイベントコマンドを入力し、「移動先を見ながら指定」ボタンを押します。

村マップは道が上下にあるので、上の道からフィールドに移動した時はフィールドマップの村のシンボルの1マス上に移動するように設定してみました。

今度は村マップの下の道にも移動を設置していきます。
内容はほぼ同じですので、上の道のイベントを右クリックしてメニューを表示させ、「イベントコピー」を使ってコピーすれば楽です。
イベントを選択した状態で「Cキー」でもコピーできます。

村マップの下の道にカーソルを移動させ、右クリックしてメニューから「イベント貼り付け」を使って先ほどコピーしたイベントを貼り付けます。
「Vキー」で貼り付けることもできます。

コピーしたイベントは内容は同じですが、新たなイベントとして設置されましたので、自由に編集・修正できます。
名前が同じだとややこしいので、わかるように名前を変えておきましょう。

あとは下の道のイベントは移動場所を少し変更したいので、「場所移動」の内容を修正します。
「イベントコマンド表示欄」から修正したい箇所を選んで、ダブルクリックします。

「移動先を見ながら指定」を押します。

こちらは「場所移動地点」を村のシンボルから1マス下に設定します。

「イベントエディタ」の右下にある「セーブ」ボタンか、ツールバー左の「上書き保存」でマップを保存します。

森マップからの移動設定

続いて森マップからフィールドへの移動設定を行います。
「マップ選択ウィンドウ」で「2:森」を選択します。

森マップの一番下の道部分にイベントを設置します。
「イベントの名前」「イベントの起動条件」「接触範囲拡張」を設定していきます。

少し省略して、「場所移動」のイベントコマンドを入力し、「移動先を見ながら指定」ボタンを押します。

「場所移動地点」はフィールドマップ上の森への入り口部分の道に設定します。

「イベントエディタ」の右下にある「セーブ」ボタンか、ツールバー左の「上書き保存」でマップを保存します。

テストプレイで移動の確認

これで3つのマップ間が接続され、相互に移動できるようになりました。
フィールドマップ上の適当な位置を「ゲーム開始位置」に設定してから「テストプレイ」を押し、マップ間の移動の確認をしましょう。

おまけ 主人公の向きで移動場所を変更する

テストプレイで一通り歩き回ってみると気がつくかもしれませんが、村マップで下の道からでると、フィールドマップの村シンボルの下に移動しますが、フィールドマップで村シンボルの下から入ると、村マップの上の道に移動してしまいます。
細かい部分で少し複雑な処理のため、今は飛ばしても構いませんが、おまけとしてこういった場合の対処方法を説明します。
難しい場合はウディタの理解が進んだところで読み返してみてください。

さて、やり方はいろいろ考えられるのですが、今回は「主人公の向き」を判定して、「上向き、右上向き、左上向き」で村に移動するイベントに接触した場合は村マップの下の道側に移動するように設定したいと思います。

まずは、フィールドマップで村に移動するイベントを選択し編集していきます。

イベントウィンドウで「コマンド入力ウィンドウ表示」を押します。

主人公の向きを取得

まずは主人公の向きを取得します。

イベントコマンド「変数操作+」を選択し、「このイベントSelf0」「=」「主人公」「向き」と指定していきます。
「このイベントセルフ変数0に主人公の向きの番号を代入する」という意味です。
これで主人公が向いている方向が取得できました。

主人公の向きは方向を、キーボードのテンキー(数字が並んでいるキー部分)に置き換えた番号として取得されます。
ですので、「左上(7), 上(8), 右上(9), 左(4), 右(6), 左下(1), 下(2), 右下(3)」となります。

主人公の向きによる分岐の作成

次にイベントコマンド「条件(変数)」を選択し、「このイベントSelf0」「7」「以上」という条件を設定します。

「このイベントセルフ変数0」には現在「主人公の向き」の値が入っていますので、「7以上」というのは上のテンキーの画像を見ると分かる通り、「左上(7), 上(8), 右上(9)」を表していることになります。
今回設定したかった「主人公の向き」「上向き、右上向き、左上向き」 ならと「村マップの下の道に移動」という内容にぴったりです。
あとは「「上記以外の場合」を作成」にチェックをします。こちらは他の向きの場合は「村マップの上の道に移動」するようにします。

「イベントコマンド表示欄」はこのようになりました。
最初に作っていた「場所移動コマンド」「条件分岐コマンド」に移動させます。
「場所移動コマンド」がある行をアクティブにした状態で「Xキー」を押します。
これで「場所移動コマンド」の内容が切り取られました。
ちなみに、切り取らない通常のコピーの場合は「Cキー」を押します。

「条件分岐コマンド」の「分岐:【1】」「上記以外」の下にそれぞれ貼り付けます。「Vキー」を押すとで貼り付けられます。

「上記以外」の「場所移動コマンド」は村マップの上の道に移動するものなので、そのまま。
「分岐:【1】」の「場所移動コマンド」は村マップの下の道に変更したいので、こちらは修正していきます。
「場所移動コマンド」の行をダブルクリックで修正することができます。

「移動先を見ながら指定」を押します。

村マップの下の方も道のギリギリ1マスあけたポイントを指定します。

これで完成です。
テストプレイしてみましょう。
「テストプレイ」のボタンはメイン画面以外にもイベント入力ウィンドウの右下にもありますので、こちらも活用しましょう。

こちらの説明はおまけでしたが、今後ご自分のゲームで出入り口が4方にある大きい街などを作る場合などに役立つと思います。

続いて、「STEP9 村のNPC設定」に進みましょう。

コメント(匿名投稿OK、メールアドレスとWEBサイトも任意です)