Project1

标题: 每次场所转移都把下一地图某事件名代入变量 [打印本页]

作者: 嘀嘀吧吧~Wu    时间: 2015-4-10 21:50
标题: 每次场所转移都把下一地图某事件名代入变量
每一次场所转移,都把下一地图1~3号事件的事件名代入1~3号变量,应该在脚本的什么地方改?
作者: 芯☆淡茹水    时间: 2015-4-11 08:53
本帖最后由 芯☆淡茹水 于 2015-4-11 08:59 编辑

酱?
  1. #==============================================================================
  2. class Game_Map
  3.   #--------------------------------------------------------------------------
  4.   # ● 设置
  5.   #     map_id : 地图 ID
  6.   #--------------------------------------------------------------------------
  7.   alias old_setup_xr setup
  8.   def setup(map_id)
  9.     map = load_data(sprintf("Data/Map%03d.rxdata", map_id))
  10.     for i in 1..3
  11.       $game_variables[i] = map.events.keys.include?(i) ? map.events[i].name : ""
  12.     end
  13.     old_setup_xr(map_id)
  14.   end
  15. end
  16. #==============================================================================
复制代码

作者: 嘀嘀吧吧~Wu    时间: 2015-4-11 11:05
本帖最后由 嘀嘀吧吧~Wu 于 2015-4-11 11:08 编辑
芯☆淡茹水 发表于 2015-4-11 08:53
酱?


谢谢,我设置的敌人事件名是这样的:   敌人1,16000,16000,350,600,280,320,260,243,35,22
我希望每次场所转移,都把以逗号分隔的事件名的第四第五部分代入变量保存,因为战斗中这两个数值代表攻击力,可能会随状态变动,变动之后要用到之前记录的变量还原。

比如,每次换地图,我只需要把该地图1~3号事件名在350和600这两个位置的数值代入两个变量保存,这个要怎么写?
作者: 芯☆淡茹水    时间: 2015-4-11 12:00
酱?
1 号事件是 1, 2 号变量; 2 号事件是 3, 4 号变量 ; 3 号事件 是 5, 6 号变量。
如果地图没有对应事件,或事件名对应的分割不存在,对应变量值为 0 。
  1. #==============================================================================
  2. class Game_Map
  3.   #--------------------------------------------------------------------------
  4.   # ● 设置
  5.   #     map_id : 地图 ID
  6.   #--------------------------------------------------------------------------
  7.   alias old_setup_xr setup
  8.   def setup(map_id)
  9.     map = load_data(sprintf("Data/Map%03d.rxdata", map_id))
  10.     for i in 1..3
  11.       if map.events.keys.include?(i)
  12.         num1 = map.events[i].name.split(/,/)[3].nil? ? 0 : map.events[i].name.split(/,/)[3].to_i
  13.         num2 = map.events[i].name.split(/,/)[4].nil? ? 0 : map.events[i].name.split(/,/)[4].to_i
  14.         $game_variables[i * 2 - 1] = num1
  15.         $game_variables[i * 2] = num2
  16.       else
  17.         $game_variables[i * 2 - 1] = $game_variables[i * 2] = 0
  18.       end
  19.     end
  20.     old_setup_xr(map_id)
  21.   end
  22. end
  23. #==============================================================================
复制代码





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