RPGツクールXP TIPS

ツクールXPを使う上でのちょっとした発見などを紹介したいと思います。

RGSSエディタサイズ調整
RGSSエディタはCTRLキーを押しながらマウスホイールを回すことによって表示文字サイズを調整できます(31段階くらい)。 しかしエディタを閉じると文字サイズはデフォルトに戻ってしまいます。全体を見渡したい時などに小さめにすると便利です。
透明色の表示用色指定
ツール>オプションで透明色の色(これが透明色になるのではなくて、透明色で指定された色を何色で表示するか決める)と マップグリッドを設定できます。アイコンに無いので見つけにくいですが、マップを設計するのに役立つと思います。
エディタでつけたマップ名をゲーム内で表示
データベースをロード(デフォルトでScene_Titleクラス内)に
$data_mapinfos = load_data("Data/MapInfos.rxdata")
を追加したあとに、スクリプト$data_mapinfos[$game_map.map_id].nameで現在いるマップの名前(エディタでつけた名前) を獲得できます。位置表示に便利です。
イベントコマンド「スクリプト」からのRGSSメソッド実行
class Interpreter内で定義したメソッド(関数)はエディタの「スクリプト」内で記述すれば実行できます。 特殊なウィンドウの表示や、RGSSで自作したイベントなどに使えます。
マップの擬似ループ
デフォルトではマップはループできません。マップの端に近づくと、画面のスクロールが止まりキャラクターが 画面端に向かって歩き出します。これはClass Game_Player#● 画面中央に来るようにマップの表示位置を設定 def center(x, y)で処理を行っています。
しかしここで制限を外し、主人公が画面の端に近づいても画面スクロールを行わせるようにすると、 マップの上と下が画面端でつながっていることがわかります。ただし、厳密にはつながっていません。 キャラの動作制限も解除して、マップの限界の境目以上に踏み込むと、見かけは同じマップにいるものの、 限界以上の座標に踏み込んだことになって他のイベントキャラクターも居ませんし、障害物判定もおかしくなります。
自作でマップループを作る場合は、マップの境目からマップ外領域に踏み込んだ直後にキャラクターの座標移動を行う といった補正をかける必要があります。しかし、画面をスクロールさせる分の余分なマップは作っておく必要はありません。 見かけだけは上下左右マップチップがループして配置されています。
マップ上に移動するキャラクターを作った場合、ループポイント付近で移動すると不具合になる可能性があります。 そのあたりも考慮してください。また、海岸線などもマップ端と端できちんとつながるようにエディタが設計されています。 当初はマップループを作る予定であったものが途中で廃止されたのでしょうか。
同名ファイルのMIDIとWMAなどの優先度
デフォルトでは、同じファイル名のMIDIファイルと他のファイルがあった場合、MIDIファイルが優先的に読み込まれるようです。 RGSSで条件分岐をかければ改変できると思います
マップに入ったとき一度だけ起こるイベント
これは2000でもよく使っていたことなのですが、そのマップに入ったときに一度だけ起こる自動実行イベントを作るときには 「イベントの一時消去」が便利です。消去されたイベントは次にそのマップに突入するまで出現せず、イベント内容も実行されません。