/*: * @author Jonas Everaert * @plugindesc Move any event to the player * * * @help * Move any event marked with in the event's note section to * the player. */ (function() { let pluginParams = $plugins.filter(function(p) { return p.description.contains('') && p.status; })[0]; /// gets the events indicated with "" in the notes function getPlayerLightEvents() { let events = []; if ($dataMap != null) { for (eventId in $dataMap.events) { if ($gameMap.event(eventId) != null && $gameMap.event(eventId).event().note.contains("")) { console.log($gameMap.event(eventId).event()); events.push(eventId); } } } return events; } /// Event ids containing "" let events = getPlayerLightEvents(); // Get new events for new map player is transferred to let oldGamePlayer_performTransfer = Game_Player.prototype.performTransfer; Game_Player.prototype.performTransfer = function() { oldGamePlayer_performTransfer.call(this); events = getPlayerLightEvents(); }; // Called every frame // Move event to player let update = Window_Base.prototype.update; Window_Base.prototype.update = function() { update.call(this); for (i = 0; i < events.length; i++) { let event = $gameMap._events[events[i]]; //event.moveStraight(event.findDirectionTo($gamePlayer._realX, $gamePlayer._realY)); event.setMoveSpeed($gamePlayer.realMoveSpeed()); event.moveTowardPlayer(); } }; })();