def slip_damage_effect
# ダメージを設定
n = 0
for i in @states
#在先前的脚本已经做了定义,每个连续伤害BUFF有自己固定的伤害值,这个值就是$data_states[i].poi。
n += $data_states[i].poi
end
#判定是否为连续伤害SP,若状态包含4号状态防御,就判定为连续伤害SP的状态。
#HP、SP都损伤的场合
if $data_states[i].guard_element_set.include?(4)
self.damage["slip"] = n
self.damage_sp["slip"] = n
# 分散
if self.damage["slip"].abs > 0
amp = [self.damage["slip"].abs * 15 / 100, 1].max
self.damage["slip"] += rand(amp+1) + rand(amp+1) - amp
end
self.hp -= self.damage["slip"]
self.sp -= self.damage_sp["slip"]
#SP损伤的场合
elsif $data_states[i].guard_element_set.include?(3)
self.damage_sp["slip"] = n
self.sp -= self.damage_sp["slip"]
#HP损伤的场合
else
self.damage["slip"] = n
# 分散
if self.damage["slip"].abs > 0
amp = [self.damage["slip"].abs * 15 / 100, 1].max
self.damage["slip"] += rand(amp+1) + rand(amp+1) - amp
end
# HP からダメージを減算
self.hp -= self.damage["slip"]
end
# メソッド終了
return true
end