summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monstuff.cc
diff options
context:
space:
mode:
authorzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-25 06:12:25 +0000
committerzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-25 06:12:25 +0000
commite10fb2a241ec7b9170ab5ca4be5af74609b3dce3 (patch)
treebc2012db54f6260a12d69db05aeab67a95959970 /crawl-ref/source/monstuff.cc
parentdcb15dbcca7c08932bad716a69e28e0e51c6bd45 (diff)
downloadcrawl-ref-e10fb2a241ec7b9170ab5ca4be5af74609b3dce3.tar.gz
crawl-ref-e10fb2a241ec7b9170ab5ca4be5af74609b3dce3.zip
Make summoned dancing weapons disappear in a puff of smoke rather than
giving an erroneous "drops from the air" message. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6133 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/monstuff.cc')
-rw-r--r--crawl-ref/source/monstuff.cc19
1 files changed, 11 insertions, 8 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index 55aea1c128..5507f40880 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -825,20 +825,23 @@ void monster_die(monsters *monster, killer_type killer, int i, bool silent)
}
else if (monster->type == MONS_DANCING_WEAPON)
{
- if (!silent)
+ if (!hard_reset)
+ {
+ if (killer == KILL_RESET)
+ killer = KILL_DISMISSED;
+ }
+
+ if (!silent && !hard_reset)
{
- if (!hard_reset)
+ int w_idx = monster->inv[MSLOT_WEAPON];
+ if (w_idx != NON_ITEM && !(mitm[w_idx].flags & ISFLAG_SUMMONED))
{
simple_monster_message( monster, " falls from the air.",
MSGCH_MONSTER_DAMAGE, MDAM_DEAD );
silent = true;
}
- }
-
- if (!hard_reset)
- {
- if (killer == KILL_RESET)
- killer = KILL_DISMISSED;
+ else
+ killer = KILL_RESET;
}
}