diff options
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r-- | crawl-ref/source/fight.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index 9f1f518690..e2e10491df 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -3427,7 +3427,7 @@ std::string melee_attack::mons_weapon_desc() if (!you.can_see(attacker)) return (""); - if (weapon && attacker->id() != MONS_DANCING_WEAPON) + if (weapon) { std::string result = ""; const item_def wpn = *weapon; @@ -3438,8 +3438,13 @@ std::string melee_attack::mons_weapon_desc() if (dx == 2 && dy <= 2 || dy == 2 && dx <= 2) result += " from afar"; } - result += " with "; - result += weapon->name(DESC_NOCAP_A); + + if (attacker->id() != MONS_DANCING_WEAPON) + { + result += " with "; + result += weapon->name(DESC_NOCAP_A); + } + return result; } @@ -3736,7 +3741,7 @@ void melee_attack::mons_apply_attack_flavour(const mon_attack_def &attk) break; case AF_DRAIN_STR: - if ((one_chance_in(20) || (damage_done > 0 && one_chance_in(3))) + if ((one_chance_in(20) || damage_done > 0 && one_chance_in(3)) && defender->res_negative_energy() < random2(4)) { defender->drain_stat(STAT_STRENGTH, 1, attacker); |