diff options
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r-- | crawl-ref/source/fight.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index a0edf2bc37..b41ca53319 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -1586,6 +1586,12 @@ void melee_attack::player_weapon_auto_id() int melee_attack::player_stab_weapon_bonus(int damage) { + if (weapon && weapon->base_type == OBJ_WEAPONS + && (weapon->sub_type == WPN_CLUB || weapon->sub_type == WPN_SPEAR)) + { + goto ok_weaps; + } + switch (wpn_skill) { case SK_SHORT_BLADES: @@ -1599,6 +1605,7 @@ int melee_attack::player_stab_weapon_bonus(int damage) damage += bonus; } // fall through + ok_weaps: case SK_LONG_BLADES: damage *= 10 + you.skills[SK_STABBING] / (stab_bonus + (wpn_skill == SK_SHORT_BLADES ? 0 : 1)); |