查看: 2119|回复: 1

[已经解决] 无视防御力出错……

  [复制链接]
梦石
0
星屑
724
在线时间
685 小时
注册时间
2009-5-29
回帖
332
发表于 2009-11-2 12:39:05 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 saturnfjh 于 2009-11-2 15:01 编辑

遇到个问题,在战斗特技伤害计算的地方会出错……
提示红色行语法错误?这是为什么?

   def make_obj_damage_value(user, obj)
    damage = obj.base_damage                        # 获取基本伤害
    if damage > 0                                   # 伤害为正# 无视防御力以外
      if obj.ignore_defense
      damage *= (user.atk*obj.atk_f+user.spi*obj.atk_f)/10000
      else
      damage *= (user.atk*obj.atk_f*(1- self.def/(200+user.atk+self.def)+user.spi*obj.atk_f*(1-self.spi/(170+user.spi+self.spi))/10000
      end   
   damage = 1 if damage < 0                      # 减少为 0
    elsif        damage < 0                                # 伤害为负数
        damage *= (user.atk*obj.atk_f+user.spi*obj.atk_f)/10000
    end
      @critical = (rand(100) < attacker.cri)        # 判断会心一击
      @critical = false if prevent_critical         # 防止会心一击?
      damage *= 2 if @critical                      # 会心一击修正
    damage *= elements_max_rate(obj.element_set)    # 属性修正
    damage /= 100
    damage = apply_variance(damage, obj.variance)   # 分散
    damage = apply_guard(damage)                    # 防御修正
    if obj.damage_to_mp  
      @mp_damage = damage.round                           # MP 伤害
    else
      @hp_damage = damage.round                           # HP 伤害
    end
  end
梦石
0
星屑
724
在线时间
685 小时
注册时间
2009-5-29
回帖
332
 楼主| 发表于 2009-11-2 15:01:17 | 显示全部楼层
少写了两个括号……问题解决……ORZ..
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部