summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monstuff.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-01-10 15:53:13 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-01-10 15:53:13 +0000
commit87616cef0d3617cd349edb6641d32d71cdd96b22 (patch)
tree16d737717881351a4854907dc1a78b00540014df /crawl-ref/source/monstuff.cc
parent83a1f5bb1cc5c925d534838556873d714d861f35 (diff)
downloadcrawl-ref-87616cef0d3617cd349edb6641d32d71cdd96b22.tar.gz
crawl-ref-87616cef0d3617cd349edb6641d32d71cdd96b22.zip
Add yet another unique courtesy of castamir: Dissolution, sentient
jelly. Update Credits. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8382 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/monstuff.cc')
-rw-r--r--crawl-ref/source/monstuff.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index d1907b6b5e..6cfae15e46 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -4474,7 +4474,7 @@ static void _handle_movement(monsters *monster)
}
// some calculations
- if (monster->type == MONS_BORING_BEETLE && monster->foe == MHITYOU)
+ if (mons_class_flag(monster->type, M_BURROWS) && monster->foe == MHITYOU)
{
// Boring beetles always move in a straight line in your direction.
delta = you.pos() - monster->pos();
@@ -7783,7 +7783,7 @@ static bool _mon_can_move_to_pos(const monsters *monster,
(curr_cloud_num == EMPTY_CLOUD) ? CLOUD_NONE
: env.cloud[curr_cloud_num].type;
- if (monster->type == MONS_BORING_BEETLE
+ if (mons_class_flag(monster->type, M_BURROWS)
&& (target_grid == DNGN_ROCK_WALL
|| target_grid == DNGN_CLEAR_ROCK_WALL))
{
@@ -8180,7 +8180,7 @@ forget_it:
// ------------------------------------------------------------------
// Take care of beetle burrowing.
- if (monster->type == MONS_BORING_BEETLE)
+ if (mons_class_flag(monster->type, M_BURROWS))
{
const dungeon_feature_type feat = grd(monster->pos() + mmov);
if ((feat == DNGN_ROCK_WALL || feat == DNGN_CLEAR_ROCK_WALL)
@@ -8190,7 +8190,13 @@ forget_it:
set_terrain_changed(monster->pos() + mmov);
if (!silenced(you.pos()))
- mpr("You hear a grinding noise.", MSGCH_SOUND);
+ {
+ // Message depends on whether caused by boring beetle or
+ // acid (Dissolution).
+ mpr((monster->type == MONS_BORING_BEETLE) ?
+ "You hear a grinding noise." :
+ "You hear a sizzling sound.", MSGCH_SOUND);
+ }
}
}
@@ -8472,6 +8478,7 @@ bool monster_descriptor(int which_class, unsigned char which_descriptor)
case MONS_HYDRA:
case MONS_KILLER_KLOWN:
case MONS_LERNAEAN_HYDRA:
+ case MONS_DISSOLUTION:
return (true);
default:
return (false);