Project1

标题: 设置NPC时到处移动的,但每次转图回来又重置了。怎么办啊 [打印本页]

作者: heychen    时间: 2013-6-14 03:18
标题: 设置NPC时到处移动的,但每次转图回来又重置了。怎么办啊
我设定地图里的NPC是可以乱走的啊
但每次重新再进这图时技能全被投资了
作者: j433463    时间: 2013-6-14 03:44
找一找记忆事件的脚本,譬如:

http://forums.rpgmakerweb.com/in ... ber-event-position/
记住事件位置

http://forums.rpgmakerweb.com/in ... anently-erase-them/
SES事件存储器V1.0

类似这种脚本。
作者: 星小彩    时间: 2013-6-18 15:24
本帖最后由 星小彩 于 2013-6-18 15:26 编辑

我在整合系统里发现的 不过我没试的  你试试吧

保存事件位置(作者:feizhaodan)
    主要功能是当主角离开地图,再次回归时,系统自动读取角色离开时事件的位置并且使事件到那个位置上(VA默认是回来时重新将事件归为原位),所以这个脚本增强了真实性(对我而言吧,对大家来说或许没用。。)。感觉还是不错的,即插即用。
适用游戏:图块绘制的地图,事件较多的游戏


RUBY 代码复制
  1. #==============================================================================
  2. # ■ Game_Map
  3. #------------------------------------------------------------------------------
  4. #  管理地图的类。拥有卷动地图以及判断通行度的功能。
  5. #   本类的实例请参考 $game_map 。
  6. #==============================================================================
  7.  
  8. class Game_Map
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化对象
  11.   #--------------------------------------------------------------------------
  12.   alias save_event_pos_initialize initialize
  13.   def initialize
  14.     save_event_pos_initialize
  15.     @event_pos = {}
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 设置
  19.   #--------------------------------------------------------------------------
  20.   alias save_event_pos_setup setup
  21.   def setup(map_id)
  22.     save_event_pos
  23.     save_event_pos_setup(map_id)
  24.     load_event_pos
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 保存事件位置
  28.   #--------------------------------------------------------------------------
  29.   def save_event_pos
  30.     return if @map_id == 0
  31.     @event_pos[@map_id] ||= []
  32.     @events.each{|i,e|
  33.     @event_pos[@map_id][i] = [e.x,e.y]
  34.     }
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # ● 读取事件位置
  38.   #--------------------------------------------------------------------------
  39.   def load_event_pos
  40.     return if @map_id == 0
  41.     @event_pos[@map_id] ||= []
  42.     @events.each{|i,e|
  43.     next unless @event_pos[@map_id][i]
  44.     e.moveto(@event_pos[@map_id][i][0],@event_pos[@map_id][i][1])
  45.     }
  46.   end
  47. end





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