summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-stuff.cc
diff options
context:
space:
mode:
authorJude Brown <bookofjude@users.sourceforge.net>2009-11-12 22:34:54 +1000
committerJude Brown <bookofjude@users.sourceforge.net>2009-11-12 22:34:54 +1000
commitd518ae51c1ee912985673d3fdafd8ce61fa149eb (patch)
treed9233b8a91ad4eda49bebe48a0a5c01dd1234880 /crawl-ref/source/mon-stuff.cc
parenteae49c6fcb7586e447e4b2fe2a7f2eb5b6bb7a2e (diff)
downloadcrawl-ref-d518ae51c1ee912985673d3fdafd8ce61fa149eb.tar.gz
crawl-ref-d518ae51c1ee912985673d3fdafd8ce61fa149eb.zip
Further elven twin death effect tweaks.
Fix a minor bug (always giving a distance message unless the twin is invisible), and add a waken event.
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 2a5d903ebc..09da57c214 100644
--- a/crawl-ref/source/mon-stuff.cc
+++ b/crawl-ref/source/mon-stuff.cc
@@ -1235,6 +1235,10 @@ static void _elven_twin_died(monsters* twin)
if (!found_duvessa && !found_dowan)
return;
+ // If you've stabbed one of them, the other one is likely asleep still.
+ if (monster->asleep())
+ behaviour_event(monster, ME_DISTURB, MHITNOT, monster->pos());
+
// Will generate strings such as 'Duvessa_Duvessa_dies' or, alternately
// 'Dowan_Dowan_dies', but as neither will match, these can safely be
// ignored.
@@ -1243,7 +1247,7 @@ static void _elven_twin_died(monsters* twin)
if (mons_near(monster) && !monster->observable())
key += "invisible_";
- else
+ else if (!mons_near(monster))
key += "distance_";
std::string death_message = getSpeakString(key);