summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/delay.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-05-31 20:26:20 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-05-31 20:26:20 +0000
commit57ec78ae83592e5f55457fbcff4de929f5a9b7d7 (patch)
tree7f85295bb2791f405554336cc2e1ebb744571a4c /crawl-ref/source/delay.cc
parent7df3a8aa8296fea631280b085f4c70a93fd23a54 (diff)
downloadcrawl-ref-57ec78ae83592e5f55457fbcff4de929f5a9b7d7.tar.gz
crawl-ref-57ec78ae83592e5f55457fbcff4de929f5a9b7d7.zip
Consolidate all cases where corpses are turned into skeletons, as
suggested by dolorous in BR 1977925, and turn coloured draconian corpses into plain draconian skeletons. Same when the game attempts to create coloured draconian skeletons or simulacrums. Added autoinscription to the single inscription command ('{') - this is necessary for items with long descriptions that can't autoinscribed otherwise. Added a small hack to make death cobs (%) appear correctly in the monster list. The rest is cleanup, I believe. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5376 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/delay.cc')
-rw-r--r--crawl-ref/source/delay.cc17
1 files changed, 6 insertions, 11 deletions
diff --git a/crawl-ref/source/delay.cc b/crawl-ref/source/delay.cc
index 77c9d18412..6df2378d7c 100644
--- a/crawl-ref/source/delay.cc
+++ b/crawl-ref/source/delay.cc
@@ -56,9 +56,9 @@ static void handle_run_delays(const delay_queue_item &delay);
static void handle_macro_delay();
static void finish_delay(const delay_queue_item &delay);
-// monster cannot be affected in these states
-// (all results of Recite, plus friendly + stupid;
-// note that berserk monsters are also hasted)
+// Monsters cannot be affected in these states.
+// (All results of Recite, plus friendly + stupid;
+// note that berserk monsters are also hasted.)
static bool recite_mons_useless(const monsters *mon)
{
return (mons_intel(mon->type) < I_NORMAL
@@ -482,9 +482,7 @@ void stop_delay( bool stop_stair_travel )
mpr("All blood oozes out of the corpse!");
bleed_onto_floor(you.x_pos, you.y_pos, corpse.plus, delay.duration,
false);
- corpse.sub_type = CORPSE_SKELETON;
- corpse.special = 90;
- corpse.colour = LIGHTGREY;
+ turn_corpse_into_skeleton(corpse, 90);
}
did_god_conduct(DID_DRINK_BLOOD, 8);
pop_delay();
@@ -1012,11 +1010,7 @@ static void finish_delay(const delay_queue_item &delay)
dec_mitm_item_quantity( delay.parm2, 1 );
}
else if (!one_chance_in(4))
- {
- corpse.sub_type = CORPSE_SKELETON;
- corpse.special = 90;
- corpse.colour = LIGHTGREY;
- }
+ turn_corpse_into_skeleton(corpse, 90);
break;
}
case DELAY_MEMORISE:
@@ -1166,6 +1160,7 @@ static void finish_delay(const delay_queue_item &delay)
}
offer_corpse(delay.parm1);
+ StashTrack.update_stash(); // Don't stash-track this corpse anymore.
break;
}
case DELAY_DROP_ITEM: