summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/fight.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r--crawl-ref/source/fight.cc21
1 files changed, 11 insertions, 10 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc
index a41fbe6564..9bc54edda8 100644
--- a/crawl-ref/source/fight.cc
+++ b/crawl-ref/source/fight.cc
@@ -552,26 +552,27 @@ bool melee_attack::player_attack()
// always upset monster regardless of damage
behaviour_event(def, ME_WHACK, MHITYOU);
- if (player_hurt_monster())
+ player_hurt_monster();
+
+ if (damage_done > 0 || !defender_visible)
+ player_announce_hit();
+ else if (damage_done <= 0)
+ no_damage_message =
+ make_stringf("You %s %s.",
+ attack_verb.c_str(),
+ defender->name(DESC_NOCAP_THE).c_str());
+
+ if (damage_done)
player_exercise_combat_skills();
if (player_check_monster_died())
return (true);
player_sustain_passive_damage();
-
- if (damage_done < 1)
- no_damage_message =
- make_stringf("You %s %s.",
- attack_verb.c_str(),
- defender->name(DESC_NOCAP_THE).c_str());
}
else
player_warn_miss();
- if (did_hit && (damage_done > 0 || !player_monster_visible(def)))
- player_announce_hit();
-
if (did_hit && player_monattk_hit_effects(false))
return (true);