在技能备注里写<双刃技能 数字>
比如<双刃技能 2> 那么就是除以2
想要扣除此次伤害百分比的hp的话
class Game_Battler < Game_BattlerBase def make_damage_value(user, item) value = item.damage.eval(user, self, $game_variables) value *= item_element_rate(user, item) value *= pdr if item.physical? value *= mdr if item.magical? value *= rec if item.damage.recover? value = apply_critical(value) if @result.critical value = apply_variance(value, item.damage.variance) value = apply_guard(value) @result.make_damage(value.to_i, item) if item.note =~ /<双刃技能\s*(\d+)>/ user.hp -= (value/$1.to_f).to_i end end end
class Game_Battler < Game_BattlerBase
def make_damage_value(user, item)
value = item.damage.eval(user, self, $game_variables)
value *= item_element_rate(user, item)
value *= pdr if item.physical?
value *= mdr if item.magical?
value *= rec if item.damage.recover?
value = apply_critical(value) if @result.critical
value = apply_variance(value, item.damage.variance)
value = apply_guard(value)
@result.make_damage(value.to_i, item)
if item.note =~ /<双刃技能\s*(\d+)>/
user.hp -= (value/$1.to_f).to_i
end
end
end
想要扣除最大hp的百分比的话
class Game_Battler < Game_BattlerBase def item_apply(user, item) if item.note =~ /<双刃技能\s*(\d+)>/ user.hp -= (user.mhp/$1.to_f).to_i end @result.clear @result.used = item_test(user, item) @result.missed = (@result.used && rand >= item_hit(user, item)) @result.evaded = (!@result.missed && rand < item_eva(user, item)) if @result.hit? unless item.damage.none? @result.critical = (rand < item_cri(user, item)) make_damage_value(user, item) execute_damage(user) end item.effects.each {|effect| item_effect_apply(user, item, effect) } item_user_effect(user, item) end end end
class Game_Battler < Game_BattlerBase
def item_apply(user, item)
if item.note =~ /<双刃技能\s*(\d+)>/
user.hp -= (user.mhp/$1.to_f).to_i
end
@result.clear
@result.used = item_test(user, item)
@result.missed = (@result.used && rand >= item_hit(user, item))
@result.evaded = (!@result.missed && rand < item_eva(user, item))
if @result.hit?
unless item.damage.none?
@result.critical = (rand < item_cri(user, item))
make_damage_value(user, item)
execute_damage(user)
end
item.effects.each {|effect| item_effect_apply(user, item, effect) }
item_user_effect(user, item)
end
end
end
|