查看: 2579|回复: 2

[已经解决] 设置NPC时到处移动的,但每次转图回来又重置了。怎么办啊

[复制链接]
梦石
0
星屑
60
在线时间
6 小时
注册时间
2008-1-9
回帖
80
发表于 2013-6-14 03:18:52 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
我设定地图里的NPC是可以乱走的啊
但每次重新再进这图时技能全被投资了
梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
回帖
1526
发表于 2013-6-14 03:44:30 | 显示全部楼层
找一找记忆事件的脚本,譬如:

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

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

类似这种脚本。

评分

参与人数 1星屑 +80 收起 理由
Sion + 80 感谢帮忙

查看全部评分

修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
120 小时
注册时间
2011-5-30
回帖
41
发表于 2013-6-18 15:24:52 | 显示全部楼层
本帖最后由 星小彩 于 2013-6-18 15:26 编辑

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

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


[pre lang="ruby" line="1"]#==============================================================================
# ■ Game_Map
#------------------------------------------------------------------------------
#  管理地图的类。拥有卷动地图以及判断通行度的功能。
#   本类的实例请参考 $game_map 。
#==============================================================================

class Game_Map
  #--------------------------------------------------------------------------
  # ● 初始化对象
  #--------------------------------------------------------------------------
  alias save_event_pos_initialize initialize
  def initialize
    save_event_pos_initialize
    @event_pos = {}
  end
  #--------------------------------------------------------------------------
  # ● 设置
  #--------------------------------------------------------------------------
  alias save_event_pos_setup setup
  def setup(map_id)
    save_event_pos
    save_event_pos_setup(map_id)
    load_event_pos
  end
  #--------------------------------------------------------------------------
  # ● 保存事件位置
  #--------------------------------------------------------------------------
  def save_event_pos
    return if @map_id == 0
    @event_pos[@map_id] ||= []
    @events.each{|i,e|
    @event_pos[@map_id] = [e.x,e.y]
    }
  end
  #--------------------------------------------------------------------------
  # ● 读取事件位置
  #--------------------------------------------------------------------------
  def load_event_pos
    return if @map_id == 0
    @event_pos[@map_id] ||= []
    @events.each{|i,e|
    next unless @event_pos[@map_id]
    e.moveto(@event_pos[@map_id][0],@event_pos[@map_id][1])
    }
  end
end[/pre]

评分

参与人数 1星屑 +80 收起 理由
Sion + 80 感谢帮忙

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部