summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/fight.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2009-11-05 14:03:55 +0100
committerAdam Borowski <kilobyte@angband.pl>2009-11-05 14:05:58 +0100
commit63e4d7c54fd5932861cbc7649d33e7d52a43b1c2 (patch)
tree295b7f996f7b4b4becb52b2ad1ca93bb28d976bc /crawl-ref/source/fight.cc
parent6f79556d0925802980b55bc86784bef753163c31 (diff)
downloadcrawl-ref-63e4d7c54fd5932861cbc7649d33e7d52a43b1c2.tar.gz
crawl-ref-63e4d7c54fd5932861cbc7649d33e7d52a43b1c2.zip
Let clubs (small ordinary ones only) stun back-coshed targets for 1-3 turns.
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r--crawl-ref/source/fight.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc
index b41ca53319..77b954b513 100644
--- a/crawl-ref/source/fight.cc
+++ b/crawl-ref/source/fight.cc
@@ -2021,6 +2021,19 @@ bool melee_attack::player_monattk_hit_effects(bool mondied)
return player_monattk_final_hit_effects(true);
}
+ if (stab_attempt && stab_bonus > 0 && weapon
+ && weapon->base_type == OBJ_WEAPONS && weapon->sub_type == WPN_CLUB
+ && damage_done + special_damage > random2(defender->get_experience_level())
+ && !defender_as_monster()->has_ench(ENCH_CONFUSION)
+ && mons_class_is_confusable(defender->id()))
+ {
+ if (defender_as_monster()->add_ench(mon_enchant(ENCH_CONFUSION, 0,
+ KC_YOU, 20+random2(30)))) // 1-3 turns
+ {
+ mprf("%s is stunned!", defender->name(DESC_NOCAP_THE).c_str());
+ }
+ }
+
return player_monattk_final_hit_effects(false);
}