summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-stuff.cc
diff options
context:
space:
mode:
authorMatthew Cline <zelgadis@sourceforge.net>2009-11-13 03:30:54 -0800
committerMatthew Cline <zelgadis@sourceforge.net>2009-11-13 03:30:54 -0800
commitf424787fb00d9c9797dc66a18ac27fda38e3c366 (patch)
tree90751c38bd0baf4936ba48ffc81db2519e3e380c /crawl-ref/source/mon-stuff.cc
parent30c0986c2795663356a148bd3a0f0e2c981ee9e8 (diff)
downloadcrawl-ref-f424787fb00d9c9797dc66a18ac27fda38e3c366.tar.gz
crawl-ref-f424787fb00d9c9797dc66a18ac27fda38e3c366.zip
mon-stuff.cc: Jiyva slimify-monster stuff
* Don't slimify insubstantial monsters. * Remove shapeshifting-ness when slimifying a monster, so that it won't later shape-shift to a non-slime.
Diffstat (limited to 'crawl-ref/source/mon-stuff.cc')
-rw-r--r--crawl-ref/source/mon-stuff.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/crawl-ref/source/mon-stuff.cc b/crawl-ref/source/mon-stuff.cc
index e51a64cb62..f3beee2fc5 100644
--- a/crawl-ref/source/mon-stuff.cc
+++ b/crawl-ref/source/mon-stuff.cc
@@ -2647,6 +2647,7 @@ bool mon_can_be_slimified(monsters *monster)
const mon_holy_type holi = monster->holiness();
return (!(monster->flags & MF_GOD_GIFT)
+ && !mons_is_insubstantial(monster->type)
&& (holi == MH_UNDEAD
|| holi == MH_NATURAL && !mons_is_slime(monster))
);
@@ -2691,8 +2692,11 @@ void slimify_monster(monsters *mon, bool hostile)
else
mon->attitude = ATT_HOSTILE;
- //mon->god = GOD_NO_GOD; // Prevent assertion.
mons_make_god_gift(mon, GOD_JIYVA);
+
+ // Don't want shape-shifters to shift into non-slimes.
+ mon->del_ench(ENCH_GLOWING_SHAPESHIFTER);
+ mon->del_ench(ENCH_SHAPESHIFTER);
}
static bool _habitat_okay( const monsters *monster, dungeon_feature_type targ )