Project1

标题: nil can't be coerced into fixnum [打印本页]

作者: 靈夢    时间: 2016-5-3 00:07
标题: nil can't be coerced into fixnum
不好意思最近问题真的很多,我测试游戏 一切正常,但是我只要一把用对象是我方hp0的药品用在活人身上,rtab脚本就会出错
出错的部分行数
#------------------------------------------------- -------------------------
  # ● ダメージ演算
  #------------------------------------------------- -------------------------
  def damage_effect(battler, item)
    if item == 2
        self.hp ​​+= self.recover_hp[battler]
      self.sp += self.recover_sp[battler]
      if self.recover_sp[battler] != 0
        self.damage_sp[battler] = -self.recover_sp[battler]
      end
    else
      if self.damage[battler].class != String
        self.hp ​​-= self.damage[battler]
      end
    end
    for i in self.state_p[battler]
      add_state(i)
    end
    for i in self.state_m[battler]
      remove_state(i)
    end
  end

使用复活技能不会出错 但是药品会出错
提示是
nil can't be coerced into fixnum
如果有需要 我再发工程上来....
作者: yang1zhi    时间: 2016-5-3 12:16
判断里面加个self.hp == 0来判断被使用者是不是0HP的人
作者: 靈夢    时间: 2016-5-3 19:18
请问具体该怎么加?我加self.hp ​​== 0到这段脚本中,使用复活药都出错!
作者: 578783944    时间: 2016-5-3 19:30
查看 Game_Battler 3 中 item_effect(item) 方法下 :
  1. if ((item.scope == 3 || item.scope == 4) && (self.hp == 0)) || ((item.scope == 5 || item.scope == 6) && (self.hp >= 1))
  2.   return false
  3. end
复制代码
有没有改动
作者: 靈夢    时间: 2016-5-3 20:14
没有改动,但是Game_Battler 3 被RTAB重新定义过的,上面我发的那段脚本是RTAB报错,抱歉我刚开始问题没有描述清楚,我该从RTAB中哪里加入这段呢?
作者: 靈夢    时间: 2016-5-3 20:25
问题解决了 谢谢你们帮助




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