summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spells2.cc
diff options
context:
space:
mode:
authorStefan O'Rear <stefanor@cox.net>2009-11-04 23:52:52 -0800
committerStefan O'Rear <stefanor@cox.net>2009-11-04 23:52:52 -0800
commit808d95388e8d845c5e5b7f416231c1fc9a8aca97 (patch)
tree295155f66906600ee06e21fef1d8ea5cd7b9acee /crawl-ref/source/spells2.cc
parent1b5fee7b01fd027a5873f692139a19abea8e6946 (diff)
downloadcrawl-ref-808d95388e8d845c5e5b7f416231c1fc9a8aca97.tar.gz
crawl-ref-808d95388e8d845c5e5b7f416231c1fc9a8aca97.zip
And propagate power from Tukima / the Dance.
Diffstat (limited to 'crawl-ref/source/spells2.cc')
-rw-r--r--crawl-ref/source/spells2.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/crawl-ref/source/spells2.cc b/crawl-ref/source/spells2.cc
index 02a3cd72c3..8008e51e1a 100644
--- a/crawl-ref/source/spells2.cc
+++ b/crawl-ref/source/spells2.cc
@@ -25,6 +25,7 @@
#include "dungeon.h"
#include "effects.h"
#include "envmap.h"
+#include "ghost.h"
#include "goditem.h"
#include "invent.h"
#include "itemname.h"
@@ -1582,6 +1583,7 @@ bool summon_holy_warrior(int pow, god_type god, int spell,
!force_hostile, quiet);
}
+// This function seems to have very little regard for encapsulation.
bool cast_tukimas_dance(int pow, god_type god, bool force_hostile)
{
bool success = true;
@@ -1670,9 +1672,14 @@ bool cast_tukimas_dance(int pow, god_type god, bool force_hostile)
destroy_item(menv[monster].inv[MSLOT_WEAPON]);
menv[monster].inv[MSLOT_WEAPON] = i;
- menv[monster].colour = mitm[i].colour;
burden_change();
+ ghost_demon stats;
+ stats.init_dancing_weapon(mitm[i], pow);
+
+ menv[monster].set_ghost(stats);
+ menv[monster].dancing_weapon_init();
+
if ((why = good_god_hates_item_handling(you.inv[wpn]))
|| (why = god_hates_item_handling(you.inv[wpn])))
{