From 8f0980c58f12afeadf43388dea8aab75e8b2f37b Mon Sep 17 00:00:00 2001 From: mattsc Date: Sun, 15 Jun 2014 19:33:42 -0700 Subject: [PATCH] battle_calcs: provide default value for resistance modifiers This is done for cases when the value cannot be read from the unit_info table, which might happen in some UMC. This fixes a rare bug affecting the Fast Micro AI attack evaluation --- data/ai/lua/battle_calcs.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/ai/lua/battle_calcs.lua b/data/ai/lua/battle_calcs.lua index 1ff308744f1..c966acd13fb 100644 --- a/data/ai/lua/battle_calcs.lua +++ b/data/ai/lua/battle_calcs.lua @@ -115,7 +115,7 @@ function battle_calcs.strike_damage(attacker, defender, att_weapon, def_weapon, local att_damage = attacker_info.attacks[att_weapon].damage -- Opponent resistance modifier - local att_multiplier = defender_info.resist_mod[attacker_info.attacks[att_weapon].type] + local att_multiplier = defender_info.resist_mod[attacker_info.attacks[att_weapon].type] or 1 -- TOD modifier att_multiplier = att_multiplier * AH.get_unit_time_of_day_bonus(attacker_info.alignment, att_lawful_bonus) @@ -127,7 +127,7 @@ function battle_calcs.strike_damage(attacker, defender, att_weapon, def_weapon, def_damage = defender_info.attacks[def_weapon].damage -- Opponent resistance modifier - def_multiplier = attacker_info.resist_mod[defender_info.attacks[def_weapon].type] + def_multiplier = attacker_info.resist_mod[defender_info.attacks[def_weapon].type] or 1 -- TOD modifier def_multiplier = def_multiplier * AH.get_unit_time_of_day_bonus(defender_info.alignment, def_lawful_bonus)