Project1

标题: 关于for nil:NilClass [打印本页]

作者: yangjunyin2002    时间: 2013-8-8 09:59
标题: 关于for nil:NilClass
我相信很多游戏都会出现这种错误,然后呢,似乎没有什么解决的办法= =
话说,就是,那个,呃,...貌似说是因为未定义...

于是今天我的游戏脚本出错了,是横版战斗脚本(横战脚本出错很正常= =)然后求解决。
问题是:为什么“+”会...




果然脚本问题应该问P叔他们,苏联君貌似也会脚本吧...
@丿梁丶小柒 @Password @小小刀886 @I爱幻想 @Luciffer @protosssonny  
作者: 小小刀886    时间: 2013-8-8 13:43
  1.   #--------------------------------------------------------------------------
  2.   # ++ Base Screen Position (and bitmap height)
  3.   #--------------------------------------------------------------------------
  4.   def base_position
  5.     return if self.index == nil
  6.     # バトラー画像のサイズをチェックしY座標を修正
  7.     bitmap = Bitmap.new("Graphics/Battlers/" + @battler_name) if !self.anime_on
  8.     bitmap = Bitmap.new("Graphics/Characters/" + @battler_name) if self.anime_on && N01::WALK_ANIME
  9.     bitmap = Bitmap.new("Graphics/Characters/" + @battler_name + "_1") if self.anime_on && !N01::WALK_ANIME
  10.     height = bitmap.height
  11.     @base_position_x = self.screen_x + self.position_plus[0]
  12.     # 3.4a
  13.     # Animated enemies
  14.     if self.anime_on
  15.       frame_height = height / N01::ANIME_KIND
  16.       @base_position_y = self.screen_y + self.position_plus[1] - frame_height / 3 # 3.4a
  17.     # Default battlers
  18.     else
  19.       @base_position_y = self.screen_y + self.position_plus[1] - height / 3 # 3.4a
  20.     end
  21.     bitmap.dispose
  22.     # バックアタック時はX軸を逆に
  23.     if $back_attack && N01::BACK_ATTACK
  24.       @base_position_x = Graphics.width - self.screen_x - self.position_plus[0]
  25.     end
  26.   end
复制代码
覆盖2058~2083试试
作者: Password    时间: 2013-8-8 13:50
其实,像加号等号什么的出现未定义的话……
以我的经验……一般错误的地方都不在本行,有的还距离很远呢……
作者: clear仔    时间: 2013-8-8 14:00
该类的实例screen_x或position_plus的第1个元素没有被定义就进行加减。

作者: bbaugle    时间: 2013-8-8 17:45
self.position_plus[1]没有被定义而已
作者: yangjunyin2002    时间: 2013-8-9 07:49
bbaugle 发表于 2013-8-8 17:45
self.position_plus[1]没有被定义而已

那肿么办?
作者: end55rpg    时间: 2013-8-9 09:29
按字面意思修改:
class NilClass
def self.+(a)
return ""
end
end
应该是这样写的。。。
作者: yangjunyin2002    时间: 2013-8-9 09:32
@protosssonny P叔有邮箱神马的吗?我把单独范例发给你,你帮我看看吧~~~




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