自作エンカウント2
ツクール標準のエンカウントは、1歩ごとに出現判定がありますが、
1〜2歩で出現したり、全然出現しない場合もある等、少々気になります。
このイベントは、前もって出現歩数を決めておき、規定歩数歩いたときに
出現するようになっています。
まずは、↓のイベントを作ります。
================================================
マップイベント:自動的に始まる
出現条件:特に無し
−使用変数−
[0001:敵出現歩数]−敵が出現するまでの歩数
================================================
◆変数の操作:[0001:敵出現歩数]代入,乱数[40〜50]
◆イベントの一時消去
================================================
このイベントで、マップに入った際に敵が出現するまでの歩数を指定します。
乱数の値はマップの広さや出現率に応じて適宜調整して下さい。
次に、↓のイベントを作ります。
================================================
マップイベント:定期的に並列処理
出現条件:特に無し
−使用変数−
[0001:敵出現歩数]−敵が出現するまでの歩数
[0002:X座標]−主人公のX座標
[0003:Y座標]−主人公のY座標
[0004:処理用X座標]−処理用のX座標
[0005:処理用Y座標]−処理用のY座標
================================================
◆変数の操作:[0002:X座標]代入,主人公のX座標
◆変数の操作:[0003:Y座標]代入,主人公のY座標
◆条件分岐:変数[0002:X座標]がV[0004]以外
◆変数の操作:[0001:敵出現歩数]減算,1
:分岐終了
◆条件分岐:変数[0003:Y座標]がV[0005]以外
◆変数の操作:[0001:敵出現歩数]減算,1
:分岐終了
◆変数の操作:[0004:処理用X座標]代入,主人公のX座標
◆変数の操作:[0005:処理用Y座標]代入,主人公のY座標
◆条件分岐:変数[0001:敵出現歩数]が0
◆変数の操作:[0001:敵出現歩数]代入,乱数[40〜50]
〜〜ここに戦闘用の処理を記述〜〜
:分岐終了
================================================
このイベントでは、敵の出現判定を行います。
主人公の座標が移動した場合に出現歩数を1ずつ減算し、0になったら出現します。
具体的には、変数2〜3で現在の座標を取得し、それが変数4〜5と異なっていれば移動したと判定しています。
変数4〜5には、移動前の座標が代入されます。
必ず出現歩数0の分岐内で、歩数を再設定して下さい。(設定しないとバグります)