$gameMap.eraseEvent(n);
こちらは試しましたが、ダメでした。
イベントIDが取得できないくらい完全にイベントを削除する方法はないでしょうか?
やりたいこととしては、
「イベントAにもっとも近いイベント(仮にB)を取得ししたあと、イベントAをイベントBに一歩近づける」
ということです。
「イベントAにもっとも近いイベントの取得」は下記URLのコードを実行していますが、イベントBを一時消去しても、イベントAはイベントBが消去した座標に向かっていきます。
viewtopic.php?t=6762
コード: 全て選択
let vid = 22; // 取得する変数番号
let min = 20; // 最大距離
let get = null;
$gameMap.events().forEach(function(event){
let distance = $gameMap.distance($gamePlayer.x,$gamePlayer.y,event.x,event.y);
if (min >= distance) { min = distance; get = event; }
});
$gameVariables.setValue(vid, get ? get.eventId() : 0);
ちなみに、「イベントAがイベントBに近づく」は下記のコードで実現しています。
https://qiita.com/krmbn0576/items/ea2c5007d709d7a1d2ab
コード: 全て選択
this.moveTowardCharacter($gameMap.event(イベントBのID))