RPGツクールMZ・MVのデフォルトで用意されている乗り物は小型船・大型船・飛行船です。
地上での乗り物は用意されていません。
ここでは地上での乗り物を通常イベントで作成します。
目次
サンプル
サンプルプロジェクトにするほどでもなかったので、イベントデータを含んだ Map001.json をアップしました。
新規プロジェクトを作成し、dataフォルダ内に入れて上書きしてください。
待機ページ
◆隊列メンバーの集合
◆隊列歩行の変更:OFF
◆移動ルートの設定:このイベント (ウェイト)
: :◇すり抜けON
: :◇プレイヤーに近づく
◆移動ルートの設定:プレイヤー (ウェイト)
: :◇画像:Nature(2)
: :◇移動速度:5
◆メニュー禁止の変更:禁止
◆エンカウント禁止の変更:禁止
◆BGMの保存
◆BGMの演奏:Field4 (90, 100, 0)
◆スイッチの操作:#0001 S1 = ON
乗車中ページ
◆条件分岐:ボタン[決定]がトリガーされている
◆変数の操作:#0001 X = プレイヤーのマップX
◆変数の操作:#0002 Y = プレイヤーのマップY
◆イベントの位置設定:このイベント, ({X},{Y})
◆移動ルートの設定:このイベント (ウェイト)
: :◇すり抜けOFF
◆移動ルートの設定:プレイヤー (ウェイト)
: :◇移動速度:4
◆隊列メンバーの集合
◆ウェイト:1フレーム
◆隊列歩行の変更:ON
◆メニュー禁止の変更:許可
◆エンカウント禁止の変更:許可
◆BGMの再開
◆スイッチの操作:#0001 S1 = OFF
◆
:分岐終了
注意点
降車するのが「ボタン[決定]がトリガーされている」等のデフォルトではタッチ操作に反応するものがありません。
スクリプトかピクチャボタン等での対応が必要です。
rpgmaker-script-wiki.xyz/mousekeyevent_kowazamv.php
決定キーが押されていればtrue
Input.isPressed('ok')
キャンセルキーが押されていればtrue
Input.isPressed('cancel')
右クリックされた瞬間のみtrueを返す
TouchInput.isCancelled()
条件分岐スクリプトを使用することで、対応が可能です。
Input.isPressed('ok') || Input.isPressed('cancel') || TouchInput.isCancelled()
しかし、この処理にすると重くなるので、並列処理内でウェイト1を入れる事で改善します。
◆条件分岐:スクリプト:Input.isPressed('ok') || Input.isPressed('cancel') || TouchInput.isCancelled()
◆変数の操作:#0001 X = プレイヤーのマップX
◆変数の操作:#0002 Y = プレイヤーのマップY
◆イベントの位置設定:このイベント, ({X},{Y})
◆移動ルートの設定:このイベント (ウェイト)
: :◇すり抜けOFF
◆移動ルートの設定:プレイヤー (ウェイト)
: :◇移動速度:4
◆隊列メンバーの集合
◆ウェイト:1フレーム
◆隊列歩行の変更:ON
◆メニュー禁止の変更:許可
◆エンカウント禁止の変更:許可
◆BGMの再開
◆スイッチの操作:#0001 S1 = OFF
◆
:分岐終了
◆ウェイト:1フレーム
移動範囲の変更
使用するタイルセットを複製し、移動できるタイルの設定を変更したものを用意します。
乗車時・降車時のイベント内容に下記コマンド等を組み込むと、柔軟に変更が可能です。
◆タイルセットの変更:フィールド(豚)

コメントを投稿するにはログインしてください。