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.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc
index f19d487dbb..ac73a80723 100644
--- a/crawl-ref/source/fight.cc
+++ b/crawl-ref/source/fight.cc
@@ -221,8 +221,15 @@ int calc_heavy_armour_penalty( bool random_factor )
// Heavy armour modifiers for PARM_EVASION.
if (player_wearing_slot(EQ_BODY_ARMOUR))
{
- const int ev_pen = property( you.inv[you.equip[EQ_BODY_ARMOUR]],
- PARM_EVASION );
+ int ev_pen = property( you.inv[you.equip[EQ_BODY_ARMOUR]],
+ PARM_EVASION );
+
+ // Wearing heavy armour in water is particularly cumbersome.
+ if (you.species == SP_MERFOLK && grd(you.pos()) == DNGN_DEEP_WATER
+ && player_is_swimming())
+ {
+ ev_pen *= 2;
+ }
if (ev_pen < 0 && maybe_random2(you.skills[SK_ARMOUR],
random_factor) < abs(ev_pen))