diff options
author | zelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-06-25 06:12:25 +0000 |
---|---|---|
committer | zelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-06-25 06:12:25 +0000 |
commit | e10fb2a241ec7b9170ab5ca4be5af74609b3dce3 (patch) | |
tree | bc2012db54f6260a12d69db05aeab67a95959970 /crawl-ref/source/monstuff.cc | |
parent | dcb15dbcca7c08932bad716a69e28e0e51c6bd45 (diff) | |
download | crawl-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.cc | 19 |
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; } } |