はじめに
初心者お断り、中級者以上でも知らない人は多い変数呼び出し値。
今回はその中でも特にマイナーかもしれない、主人公/イベントの座標に注目してみる。
【基礎知識】主人公/イベントの座標関連の変数呼び出し値
9100000+
10*Y+
X
→ イベント
Yの座標を取得or入力(※1)
(
X = 0:マップX座標(通常[1マスを1と換算]) 1:マップY座標(通常)
2:マップX座標(精密[0.5マスを1換算]) 3:マップY座標(精密)
4:イベントの高さ(ピクセル数))
9180000+
X
→ 主人公の座標を取得or入力。Xの指定内容は(※1)と同じ。
9190000+
X
→ このイベントの座標を取得or入力。Xの指定方法は(※1)と同じ。
〜以上、ウディタマニュアルより引用〜
【裏ワザ】仲間の座標関連の変数呼び出し値
9100000+
10*Y+
X
→
Y番目の仲間の座標を取得or入力。Xの指定方法は(※1)と同じ。
マニュアルには掲載されていないが、この数値を代入するとちゃんと仲間Yの〜という説明文が表示される。
検索しても見つからなかったため、たぶんこのページのデータ(及び執筆者のtwitter)が最初の情報と思われる。
【実践編】変数に代入してイベントを移動させる
【サンプル】
■変数操作: このEvのセルフ変数0 = 9190000 + 0 ……
(1)
■変数操作: V[このEvのセルフ変数0] = 9 + 0 ……
(2)
■変数操作: このEvのセルフ変数0 = 9190001 + 0 ……
(3)
■変数操作: V[このEvのセルフ変数0] = 9 + 0 ……
(4)
(1)まず適当な変数に指定したいイベント・主人公に応じた変数を代入する。
このとき、右辺の設定のチェックボックス「データを呼ばない」を入れておくこと。
入れないと現在の座標が代入される。
(2)移動先にしたい座標を入力。
(3)(4)X座標のついでにY座標も代入する。
これで、変数で指定した座標にイベント・主人公が移動する。
このとき歩行時アニメはされず、移動速度は元のイベントの移動速度に依存する。
場所移動の対象
先程の変数を代入する方法でも移動は可能だが、移動時間がかかるのが難点。
一瞬で移動させたい場合はコマンド「場所移動」を使用すると便利。
主人公の移動の他、各イベント・このイベントの移動が可能。
また、変数を指定することで、その変数の番号のイベントを移動させることも可能。
……おわかりいただけただろうか。
お気づきの通り、場所移動だと
仲間の位置を移動させることができません。
たぶん使う機会が無いであろう、仲間の場所移動は不可能なのか?
場所移動の対象の裏ワザ
結論から言えば、対象の変数を指定することで可能。
変数の値 | 移動するもの |
-1 | このイベント (マニュアルに記述有) |
-2 | 主人公(※) |
-3 | 仲間1 |
-4 | 仲間2 |
-5 | 仲間3 |
-6 | 仲間4 |
-7 | 仲間5 |
この通り、変数に-3〜-7を代入することで、仲間の場所移動が可能になります。
尚、変数に-2を代入すると主人公の場所移動が一応可能ですが、
対象を変数にするとマップ指定が出来ず、
強制的にマップ番号0番のマップに移動されます。
もっとも、普通なら対象を[主人公]に指定するので、そう問題は起きないと思いますが。