summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-pick.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-13 13:50:13 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-13 13:50:13 +0000
commit6b3f400a54d573521f844f34ad8a8b223c57c968 (patch)
tree2e916ac4de6cabc5b52ab5dcc2e426a2a65ecd7d /crawl-ref/source/mon-pick.cc
parent884fcefad29a596466ac963ab0aedfc902185960 (diff)
downloadcrawl-ref-6b3f400a54d573521f844f34ad8a8b223c57c968.tar.gz
crawl-ref-6b3f400a54d573521f844f34ad8a8b223c57c968.zip
Implementing merfolk monsters. There are two types, merfolk fighters,
and mermaids. The latter are more interesting. ;) Whenever a mermaid sings there's a chance you get beheld, meaning you cannot move away from the mermaid, that is cannot increase the distance between you and her. (Because of the distance pecularities this means at dist 1 you can only be NSW or E of the mermaid but not the diagonal directions.) If you manage to be beheld by several mermaids at the same time, your movements have to respect the distance to all of them. I've added a vector beheld_by that keeps track of beholding monsters and makes checking distance and updating beholding status easier. Merfolk are immune to the mermaid song. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2453 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mon-pick.cc')
-rw-r--r--crawl-ref/source/mon-pick.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/crawl-ref/source/mon-pick.cc b/crawl-ref/source/mon-pick.cc
index cf4f03fcd4..d7989c10c2 100644
--- a/crawl-ref/source/mon-pick.cc
+++ b/crawl-ref/source/mon-pick.cc
@@ -2029,6 +2029,8 @@ int mons_shoals_level(int mcls)
case MONS_GIANT_BAT:
break;
+ case MONS_MERFOLK:
+ case MONS_MERMAID:
case MONS_CENTAUR:
case MONS_ETTIN:
case MONS_SHEEP:
@@ -2069,8 +2071,12 @@ int mons_shoals_rare(int mcls)
case MONS_ETTIN:
case MONS_SHEEP:
+ case MONS_MERFOLK:
return 50;
+ case MONS_MERMAID:
+ return 40;
+
case MONS_HIPPOGRIFF:
case MONS_GIANT_BAT:
case MONS_BUTTERFLY:
@@ -2112,6 +2118,8 @@ int mons_swamp_level(int mcls)
case MONS_SWAMP_DRAKE:
case MONS_WORM:
case MONS_SWAMP_WORM:
+ case MONS_MERFOLK:
+ case MONS_MERMAID:
mlev++;
break;
@@ -2189,6 +2197,7 @@ int mons_swamp_rare(int mcls)
return 61;
case MONS_SLIME_CREATURE:
+ case MONS_MERFOLK:
return 54;
case MONS_SNAKE:
@@ -2216,6 +2225,7 @@ int mons_swamp_rare(int mcls)
case MONS_KOMODO_DRAGON:
case MONS_VERY_UGLY_THING:
case MONS_VAPOUR:
+ case MONS_MERMAID:
return 15;
case MONS_PHANTOM:
@@ -2669,6 +2679,8 @@ int mons_standard_level(int mcls)
case MONS_DEEP_ELF_MASTER_ARCHER:
return 33;
+ case MONS_MERFOLK:
+ case MONS_MERMAID:
case MONS_BIG_FISH:
case MONS_ELECTRICAL_EEL:
case MONS_GIANT_GOLDFISH:
@@ -2691,6 +2703,8 @@ int mons_standard_rare(int mcls)
{
// "another lava thing" has no stats! (GDL)
// case MONS_ANOTHER_LAVA_THING:
+ case MONS_MERFOLK:
+ case MONS_MERMAID:
case MONS_BIG_FISH:
case MONS_ELECTRICAL_EEL:
case MONS_GIANT_GOLDFISH: