伤害的数据类。
伤害类型。
属性编号。
计算公式。
离散度。
允许必杀(true/false)。
判断伤害对象是否为空,当伤害类型为 0 时返回true。
判断伤害对象是否为 HP型为 1、3 或 5 时返回true。
判断伤害对象是否为 MP型为 2、4 或 6 时返回true。
判断伤害结果是否为恢复,当伤害类型为 3、4 时返回true。
判断伤害结果是否为吸收,当伤害类型为 5、6 时返回true。
判断伤害结果,如果是恢复,则返回 -1 ,否则返回 1 。
根据参数执行计算公式,参数 a,b,v 分别指定了技能释放者所在队伍、技能承受者所在队伍以及所需的变量。
如果伤害结果是恢复,那么就会返回一个负值。
class RPG::UsableItem::Damage def initialize @type = 0 @element_id = 0 @formula = '0' @variance = 20 @critical = false end def none? @type == 0 end def to_hp? [1,3,5].include?(@type) end def to_mp? [2,4,6].include?(@type) end def recover? [3,4].include?(@type) end def drain? [5,6].include?(@type) end def sign recover? ? -1 : 1 end def eval(a, b, v) [Kernel.eval(@formula), 0].max * sign rescue 0 end attr_accessor :type attr_accessor :element_id attr_accessor :formula attr_accessor :variance attr_accessor :critical end