指定位置まで移動させる




RPGツクール3,4にあった命令です。
5はやってナイので知りませんが。
「主人公が何処にいるか知らんがこの位置まで移動させたいんだ!」
という時に使うと便利です。

ただし、途中で障害物があると指定した位置まで行ってくれません。
まあ、「すり抜け開始」を設定しておけばちゃんとたどり着きますけど。

それもヘンなので主人公の位置がある程度予想がつくのなら迂回させてくださいネ。


このイベントは演出したい場所に組み込んでください。
単体で使っても構いませんが。

 ◆変数の操作:[目的位置X]代入,座標X=指定の座標Xを代入します。
 ◆変数の操作:[目的位置Y]代入,座標Y=指定の座標Yを代入します。
 ◆現在の場所を記憶:[現在位置M],[現在位置X],[現在位置Y]
 ◆条件分岐:変数[現在位置X]がV[目的位置X]より大きい=条件に当てはまらない場合の処理内容も設定しておきます。
  ◆変数の操作:[現在位置X]減算,[目的位置X]=移動距離Xを計算します。
  ◆スイッチの操作:[左移動ON]をONにする=後々分岐させるのに使います。
  ◆
 :◆それ以外の場合
   ◆変数の操作:[目的位置X]減算,[現在位置X]=移動距離Xを計算します。
   ◆
 :分岐終了
 ◆条件分岐:変数[現在位置Y]がV[目的位置Y]より大きい=条件に当てはまらない場合の処理内容も設定しておきます。
  ◆変数の操作:[現在位置Y]減算,[目的位置Y]=移動距離Yを計算します。
  ◆スイッチの操作:[上移動ON]をONにする=後々分岐させるのに使います。
  ◆
 :それ以外の場合
  ◆変数の操作:[目的位置Y]減算,[現在位置Y]=移動距離Yを計算します。
  ◆
 :分岐終了
 ◆条件分岐:スイッチ[左移動ON]がON=条件に当てはまらない場合の処理内容も設定しておきます。
  ◆変数の操作:[移動距離]代入,変数[現在位置X]の値
  ◆ラベルの設定:1番
   ◆条件分岐:変数[移動距離]が0より大きい
    ◆キャラクターの移動:主人公,左へ移動
    ◆指定動作の全実行
    ◆変数の操作:[移動距離]減算,1
    ◆指定ラベルへ飛ぶ:1番
    ◆
  :分岐終了
  ◆
 :それ以外の場合
  ◆変数の操作:[移動距離]代入,変数[目的位置X]の値
  ◆ラベルの設定:2番
   ◆条件分岐:変数[移動距離]が0より大きい
    ◆キャラクターの移動:主人公,右へ移動
    ◆指定動作の全実行
    ◆変数の操作:[移動距離]減算,1
    ◆指定ラベルへ飛ぶ:2番
    ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
 ◆条件分岐:スイッチ[上移動ON]がON=条件に当てはまらない場合の処理内容も設定しておきます。
  ◆変数の操作:[移動距離]代入,変数[現在位置Y]の値
  ◆ラベルの設定:3番
   ◆条件分岐:変数[移動距離]が0より大きい
    ◆キャラクターの移動:主人公,上へ移動
    ◆指定動作の全実行
    ◆変数の操作:[移動距離]減算,1
    ◆指定ラベルへ飛ぶ:3番
    ◆
  :分岐終了
  ◆
 :それ以外の場合
  ◆変数の操作:[移動距離]代入,変数[目的位置Y]の値
  ◆ラベルの設定:4番
   ◆条件分岐:変数[移動距離]が0より大きい
    ◆キャラクターの移動:主人公,下へ移動
    ◆指定動作の全実行
    ◆変数の操作:[移動距離]減算,1
    ◆指定ラベルへ飛ぶ:4番
    ◆
  :分岐終了
  ◆
 :分岐終了
 ◆スイッチの操作:[左移動ON〜上移動ON]をOFFにする
 ◆変数の操作:[目的位置X〜移動距離]代入,0
 ◆



これで指定位置へ移動してくれます。
でも突然ひらめいてソッコーで組んだのでヘンかも(汗)。
UPさせる際にタイプミスしてたりとか……。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜追記〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

ていうか、このプログラム、頭の2行を省いて
コモンイベントに突っ込んで、組み込みたい場所に

 ◆変数の操作:[目的位置X]代入,座標X  ◆変数の操作:[目的位置Y]代入,座標Y  ◆イベントの呼び出し:場所移動

で、いいんじゃなかろうか。
あんな長いのイチイチ、コピペするより楽なんじゃ……(ダメクソ!)。


目次に戻る


Ads by TOK2