class Game_Actor
def attack_effect(attacker)
clear_action_results
unless attack_effective?(attacker)
@skipped = true
return
end
if rand(100) >= calc_hit(attacker) # 计算命中率
@missed = true
return
end
if rand(100) < calc_eva(attacker) # 计算闪躲率
@evaded = true
return
end
make_attack_damage_value(attacker) # 计算伤害
if $data_armors[@armor1_id].name=="金钱盾"
calc_me = @hp_damage/5.0
calc_me = calc_me.to_i
$game_party.gain_gold(-calc_me)
if $game_party.gold >= calc_me
@hp_damage -= calc_me
else
@hp_damage -= $game_party.gold
end
end
execute_damage(attacker) # 伤害效果
if @hp_damage == 0 # 判断是否有物理伤害
return
end
apply_state_changes(attacker) # 增减状态
end
end