Project1

标题: 有人要的删除event的脚本,摘自est,亲测可用 [打印本页]

作者: if216    时间: 2018-3-12 18:43
标题: 有人要的删除event的脚本,摘自est,亲测可用
Game_Map.prototype.deleteEvent = function (eventid){
  if ($gameMap._events[eventid]) var ev = $gameMap._events[eventid];
  if (ev === undefined) return;
  for (sprite of SceneManager._scene._spriteset._tilemap.children)   
  {
    if (sprite._character == ev) SceneManager._scene._spriteset._tilemap.removeChild(sprite);
  }

  $gameMap._events[eventid] = null;

  $gameSelfSwitches.setValue([this._mapId, eventid, 'A'], false);
  $gameSelfSwitches.setValue([this._mapId, eventid, 'B'], false);
  $gameSelfSwitches.setValue([this._mapId, eventid, 'C'], false);
  $gameSelfSwitches.setValue([this._mapId, eventid, 'D'], false);
};

把上面一段放在任意脚本之后,在需要用到时调用:
$gameMap.deleteEvent(15);   //其中15是事件id

事件将被删除,但如果重新载入这个场景事件又会出现,
如果不想让他出现,就必须在删除后,用est的另外插件save下event的变化。

那就比较复杂了,不想讨论。
作者: qq36226783    时间: 2018-3-12 20:32
兄弟很感谢你,但是问题在于,敌人是随机召唤的,所以ID也是不固定的,而且“事件将被删除,但如果重新载入这个场景事件又会出现,
如果不想让他出现,就必须在删除后,用est的另外插件save下event的变化。”这个是你刚上面说的,而我遇到了的主要问题,就是重新载入场景后,不能让他出现,就等于是必须让这个事件在游戏中彻底删除。
作者: yang1zhi    时间: 2018-3-12 22:47
估计没用。重新进地图一样会刷新




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1