summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/ouch.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-25 00:01:38 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-25 00:01:38 +0000
commit97f93f7d2dd30fee884ee4eeb8a16dcb51cf4a7c (patch)
treeef959b41c9373a02d6424717be5cbcbd1c72782f /crawl-ref/source/ouch.cc
parentbe49ad27a08b4d5a5e347e6d8a2e6852f81c4a8b (diff)
downloadcrawl-ref-97f93f7d2dd30fee884ee4eeb8a16dcb51cf4a7c.tar.gz
crawl-ref-97f93f7d2dd30fee884ee4eeb8a16dcb51cf4a7c.zip
Allow ziggurats placed in Pandemonium to return to the same Pan level when the player leaves the ziggurat. Breaks saves.
Cleaned up up_stairs() and down_stairs() to remove spurious depth changes when changing you.level_type - depth (you.your_level) now changes only for stairs with both ends in LEVEL_DUNGEON. All levels are now saved on exit, including non LEVEL_DUNGEON levels. Re-entering non-dungeon levels from down_stairs will still delete the old level. Re-entering non-dungeon levels from up_stairs (i.e. returning to a non-dungeon level from some other place, like a ziggurat) will reload the old level. Fixed bogus marker trashing when player attempts to use a Zot entrance with insufficient runes. Delete .msg files when game ends. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7598 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/ouch.cc')
-rw-r--r--crawl-ref/source/ouch.cc22
1 files changed, 10 insertions, 12 deletions
diff --git a/crawl-ref/source/ouch.cc b/crawl-ref/source/ouch.cc
index 8d797a1e31..a00a296e8d 100644
--- a/crawl-ref/source/ouch.cc
+++ b/crawl-ref/source/ouch.cc
@@ -1007,18 +1007,16 @@ void end_game( scorefile_entry &se )
}
// clean all levels that we think we have ever visited
- for (int level = 0; level < MAX_LEVELS; level++)
+ for (level_id_set::const_iterator i = Generated_Levels.begin();
+ i != Generated_Levels.end(); ++i)
{
- for (int dungeon = 0; dungeon < NUM_BRANCHES; dungeon++)
- {
- if (tmp_file_pairs[level][dungeon])
- {
- unlink(
- make_filename( you.your_name, level,
- static_cast<branch_type>(dungeon),
- LEVEL_DUNGEON, false ).c_str() );
- }
- }
+ const level_id &place(*i);
+ unlink(
+ make_filename( you.your_name,
+ place.absdepth(),
+ place.branch,
+ place.level_type,
+ false ).c_str() );
}
// temp levels, if any
@@ -1041,7 +1039,7 @@ void end_game( scorefile_entry &se )
#ifdef PACKAGE_SUFFIX
PACKAGE_SUFFIX ,
#endif
- ".st", ".kil", ".tc", ".nts", ".tut", ".sav"
+ ".st", ".kil", ".tc", ".nts", ".tut", ".sav", ".msg"
};
const int num_suffixes = sizeof(suffixes) / sizeof(const char*);