diff options
-rw-r--r-- | crawl-ref/source/fight.cc | 6 | ||||
-rw-r--r-- | crawl-ref/source/mon-util.cc | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index 66bcf8cc8c..37da54bd34 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -1365,8 +1365,12 @@ void melee_attack::player_announce_hit() std::string melee_attack::player_why_missed() { - if ((to_hit + heavy_armour_penalty/2) >= defender->melee_evasion(attacker)) + if (heavy_armour_penalty > 0 + && (to_hit + heavy_armour_penalty/2 + >= defender->melee_evasion(attacker))) + { return "Your armour prevents you from hitting "; + } else return "You miss "; } diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc index 98a7f1d2ca..0cec23aca5 100644 --- a/crawl-ref/source/mon-util.cc +++ b/crawl-ref/source/mon-util.cc @@ -5813,7 +5813,7 @@ int monsters::armour_class() const int monsters::melee_evasion(const actor *act) const { int evasion = ev; - if (paralysed() || asleep() || one_chance_in(20)) + if (paralysed() || asleep()) evasion = 0; else if (caught()) evasion /= (body_size(PSIZE_BODY) + 2); |