ignore_wraith_form = TRUE;
break;
}
- dam = dam * calc_vuln_elec_rate(target_ptr) / 100;
- if (target_ptr->resist_elec)
- dam = (dam + 2) / 3;
- if (is_oppose_elec(target_ptr))
- dam = (dam + 2) / 3;
+ dam = dam * calc_elec_damage_rate(target_ptr) / 100;
break;
case GF_POIS:
return 0;
}
- /* Vulnerability (Ouch!) */
- dam = dam * calc_vuln_elec_rate(creature_ptr) / 100;
-
- /* Resist the damage */
- if (creature_ptr->resist_elec)
- dam = (dam + 2) / 3;
- if (double_resist)
- dam = (dam + 2) / 3;
+ dam = dam * calc_elec_damage_rate(creature_ptr) / 100;
if (aura || !check_multishadow(creature_ptr)) {
if ((!(double_resist || creature_ptr->resist_elec)) && one_in_(HURT_CHANCE))
}
-PERCENTAGE calc_vuln_elec_rate(player_type *creature_ptr)
+PERCENTAGE calc_elec_damage_rate(player_type *creature_ptr)
{
PERCENTAGE per = 100;
int i;
}
}
}
+
+ if (creature_ptr->resist_elec)
+ per = (per + 2) / 3;
+ if (is_oppose_elec(creature_ptr))
+ per = (per + 2) / 3;
+
return per;
}
#include "player/player-status.h"
PERCENTAGE calc_acid_damage_rate(player_type *creature_ptr);
-PERCENTAGE calc_vuln_elec_rate(player_type *creature_ptr);
+PERCENTAGE calc_elec_damage_rate(player_type *creature_ptr);
PERCENTAGE calc_vuln_fire_rate(player_type *creature_ptr);
PERCENTAGE calc_vuln_cold_rate(player_type *creature_ptr);
PERCENTAGE calc_vuln_lite_rate(player_type *creature_ptr);