Project1

标题: 这段错误提示是什么意思?恋′挂机求教 [打印本页]

作者: sqing520    时间: 2014-1-25 11:51
标题: 这段错误提示是什么意思?恋′挂机求教
本帖最后由 sqing520 于 2014-1-26 14:47 编辑


作者: sqing520    时间: 2014-1-25 11:58
谁知道怎么解决啊?
作者: sqing520    时间: 2014-1-25 12:05
没人知道吗
作者: sqing520    时间: 2014-1-25 12:18
  1. #--------------------------------------------------------------------------
  2.   # ● 检查鼠标处是否有自定义的事件并返回类型
  3.   #--------------------------------------------------------------------------
  4.   def check_event_custom(mouse_x, mouse_y)
  5.     for event in $game_map.events.values #循环所有事件检查
  6.       event_width = RPG::Cache.character(event.character_name,event.character_hue).width / 4
  7.       event_height = RPG::Cache.character(event.character_name,event.character_hue).height / 4
  8.       if mouse_x > event.screen_x - event_width / 2 and mouse_x < event.screen_x + event_width / 2 and mouse_y + 32 > event.screen_y + 32 - event_height and mouse_y + 32 < event.screen_y + 32
  9.         for i in 0...event.list.size
  10.           if event.list[i].parameters[0] == "Item" #类型判断
  11.             event.flag = 1
  12.           elsif event.list[i].parameters[0] == "Npc" #类型判断
  13.             event.flag = 2
  14.           else
  15.             event.flag = 0 if $game_player.get_mouse_sta != 2 #无标志
  16.           end
  17.           return event.flag #返回事件类型标志
  18.         end
  19.       end
  20.     end
  21.     return 0 if $game_player.get_mouse_sta != 2 #如果不是在跟随鼠标状态,则返回无标志
  22.     return $mouse_icon_id #使鼠标图不变化
  23.   end
复制代码
这段  for i in 0...event.list.size是不是和某个事件有冲突啊?
作者: 天地有正气    时间: 2014-1-25 12:59
连贴了...
就错误提示来看,错误原因是event.list.size为nil。
作者: 恐惧剑刃    时间: 2014-1-25 17:31
$game_map.events 的“事件”都是Game_Event
循环一下
list是Game_Event的属性,可以直接 “.”
由于list获取的是执行内容的数组 所以可以 size

脚本本身没有问题,
应该是你不会正确使用
作者: 风若·飘絮    时间: 2014-1-26 12:42
又是楼主。。好吧。。楼主你学点脚本总没错的。。。
作者: sqing520    时间: 2014-1-26 14:31
$game_map.events 的“事件”都是Game_Event
循环一下
list是Game_Event的属性,可以直接 “.”
由于list获取的是执行内容的数组 所以可以 size
是什么意思?求图教程
作者: sqing520    时间: 2014-1-26 15:00
恋′挂机 发表于 2014-1-25 17:31
$game_map.events 的“事件”都是Game_Event
循环一下
list是Game_Event的属性,可以直接 “.”

恋′挂机 发表于 2014-1-25 17:31
$game_map.events 的“事件”都是Game_Event
循环一下
list是Game_Event的属性,可以直接 “.”
这句怎么理解?求解决
作者: 恐惧剑刃    时间: 2014-1-26 15:12
是这样的

在Scene_Title
新游戏时(默认脚本Scene_Title 127行)
$game_map           = Game_Map.new

因此$game_map是Game_Map类的一个对象

找到Game_Map类

看到三十行
attr_reader   :events

这样是定义了一个可读的events属性

再向下

设置 setup 那里

74行

发现会把当前地图上所有的事件循环一遍
并且给 events 这个哈希代值
主键是事件id 值 是 Game_Event(相应的)

所以 $game_map.events 都是Game_Event

而 list 是 Game_Event 执行的内容
比如事件中显示文章,条件分歧等等

list是数组

所以size是可以的

至于那个报错,我建议多看看范例吧



这个只是说原脚本应该是没有问题的
具体要解决这个问题需要多看范例的设置(我不信没有范例!)




建议楼主不要用这个脚本了吧)【大雾】
作者: sqing520    时间: 2014-1-26 15:13
风若·飘絮 发表于 2014-1-26 12:42
又是楼主。。好吧。。楼主你学点脚本总没错的。。。

不是每次测试都遇到这种情况,但是频率也挺高的,在没添加事件之前还很正常,一添加事件后就开始了
作者: sqing520    时间: 2014-1-26 15:22
恋′挂机 发表于 2014-1-26 15:12
这个只是说原脚本应该是没有问题的
具体要解决这个问题需要多看范例的设置(我不信没有范例!)

我所过过这个报错信息,但是没有有关这类的报错解决教程啊,而且报错不是每次运行都会出现。只是频率有点高而已




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