ページ 11

【解決済】特定のリージョンIDを通過した際にコモンイベント

Posted: 2017年3月26日(日) 14:40
by iichico
類似するプラグインが既ににありましたら、申し訳ありません。
作業効率を上げるため、指定のリージョンIDを「通過」した場合にコモンイベントを実行するプラグインを必要としています。

準公式プラグインのYEP_RegionEventsを導入すれば、希望する挙動になるかと思っておりましたが、
マウスで移動した際は実行されたり、されなかったりすることに気が付きました。
(キーボード操作で移動した場合は、上記のプラグインでもコモンイベントが実行されます)

マウスで移動しても、同じイベントをトリガー「プレイヤーから接触」でマップに設定した場合、
希望する挙動をしますので、あくまでも「踏んだ」状態にならなければイベントが発動しないのではないかと推察しています。

プラグインでなくても改善する方法をご存知の方がいらっしゃいましたら、教えて頂けないでしょうか。

Re: 特定のリージョンIDを通過した際にコモンイベント

Posted: 2017年3月26日(日) 16:01
by トリアコンタン
こんにちは!
並列処理のイベントで解決する方法を提案します。
プレイヤーの座標を監視して、変更した場合にリージョンをチェックして
指定した値(この場合は[5])であればコモンイベントを呼び出します。

コード: 全て選択

◆変数の操作:#0002 2:x = プレイヤーのマップX
◆変数の操作:#0003 3:y = プレイヤーのマップY
◆条件分岐:2:x ≠ 27:X(前の値)
  ◆スイッチの操作:#0010 座標変更 = ON
  ◆
:分岐終了
◆条件分岐:3:y ≠ 28:Y(前の値)
  ◆スイッチの操作:#0010 座標変更 = ON
  ◆
:分岐終了
◆条件分岐:座標変更がON
  ◆変数の操作:#0027 27:X(前の値) = 2:x
  ◆変数の操作:#0028 28:Y(前の値) = 3:y
  ◆指定位置の情報取得:1:指定位置のリージョン, リージョンID, ({2:x},{3:y})
  ◆条件分岐:1:指定位置のリージョン = 5
    ◆コモンイベント:指定リージョンを通過
    ◆
  :分岐終了
  ◆スイッチの操作:#0010 座標変更 = OFF
  ◆
:分岐終了
◆ウェイト:4フレーム

Re: 特定のリージョンIDを通過した際にコモンイベント

Posted: 2017年3月26日(日) 17:02
by iichico
トリアコンタン様、いつもありがとうございます。

教えて頂いた方法で、希望する動作となりました。
当初、マップの該当箇所にすべてイベントを設置しておりましたが、おかげで作業を省くことができました。

リージョン以外にも、色々と活用が出来そうです。
本当にありがとうございました!