发生NoMethodError,nil的未定义方法:NilClass

时间:2015-08-28 09:34:28

标签: ruby methods null

首先,我知道它已被发布,我已经看过大部分问题帖子,但我仍然不明白它是如何工作的。

所以我收到了错误:

Script 'Terrain Tag Detection ~' line 115: NoMethodError occurred.

undefined method '[]' for nil:NilClass

我的'地形标签检测〜'脚本如下所示:http://pastebin.com/PUypTwJs(无法正确粘贴代码,是的,它是关于口袋妖怪的。)

1 个答案:

答案 0 :(得分:0)

这意味着您的@map = WildPokemon.fetch($game_map.map_id)方法不会返回并且您希望访问@map变量。

您可以在代码中添加支票,如下所示:

@map = WildPokemon.fetch($game_map.map_id)
if @map.present?
    @enemy = @map[0][rand(@map[0].size)]
    @level = @map[1][rand(@map[1].size)]
end