summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spl-cast.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/spl-cast.cc')
-rw-r--r--crawl-ref/source/spl-cast.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/crawl-ref/source/spl-cast.cc b/crawl-ref/source/spl-cast.cc
index 69e88ec5c0..dc3026862c 100644
--- a/crawl-ref/source/spl-cast.cc
+++ b/crawl-ref/source/spl-cast.cc
@@ -870,8 +870,7 @@ static bool _spell_is_uncastable(spell_type spell)
// Normally undead can't memorise these spells, so this check is
// to catch those in Lich form. As such, we allow the Lich form
// to be extended here. -- bwr
- if (spell != SPELL_NECROMUTATION
- && undead_cannot_memorise( spell, you.is_undead ))
+ if (spell != SPELL_NECROMUTATION && you_cannot_memorise(spell))
{
mpr( "You cannot cast that spell in your current form!" );
return (true);
@@ -883,7 +882,7 @@ static bool _spell_is_uncastable(spell_type spell)
return (true);
}
- if (_vampire_cannot_cast( spell ))
+ if (_vampire_cannot_cast(spell))
{
mpr("Your current blood level is not sufficient to cast that spell.");
return (true);
@@ -1217,7 +1216,9 @@ spret_type your_spells(spell_type spell, int powc, bool allow_fail)
case SPELL_PAIN:
if (!zapping(ZAP_PAIN, powc, beam, true))
return (SPRET_ABORT);
- dec_hp(1, false);
+ // Deep Dwarves' damage reduction always blocks at least 1 hp.
+ if (you.species != SP_DEEP_DWARF)
+ dec_hp(1, false);
break;
case SPELL_FLAME_TONGUE: