summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/it_use3.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-18 13:46:22 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-18 13:46:22 +0000
commit45c785fc5a74ff3df82b88f01657f6b6ad50fc0b (patch)
tree6a2040caed600f8490f61e3ce3a618e41b392af1 /crawl-ref/source/it_use3.cc
parent8c1ef076fff9a86f9f31613ab7c42bee0c56c882 (diff)
downloadcrawl-ref-45c785fc5a74ff3df82b88f01657f6b6ad50fc0b.tar.gz
crawl-ref-45c785fc5a74ff3df82b88f01657f6b6ad50fc0b.zip
Portal vault and labyrinth exits will return to the point on the dungeon level where the entrance was.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7470 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/it_use3.cc')
-rw-r--r--crawl-ref/source/it_use3.cc18
1 files changed, 16 insertions, 2 deletions
diff --git a/crawl-ref/source/it_use3.cc b/crawl-ref/source/it_use3.cc
index 6405cf33a3..b5e79d0872 100644
--- a/crawl-ref/source/it_use3.cc
+++ b/crawl-ref/source/it_use3.cc
@@ -364,8 +364,22 @@ static bool evoke_horn_of_geryon()
{
map_feature_marker *featm =
dynamic_cast<map_feature_marker*>(marker);
- grd[count_x][count_y] = featm->feat;
- env.markers.remove(marker);
+ // [ds] Ensure we're activating the correct feature
+ // markers. Feature markers are also used for other
+ // things, notably to indicate the return point from
+ // a labyrinth or portal vault.
+ switch (featm->feat)
+ {
+ case DNGN_ENTER_COCYTUS:
+ case DNGN_ENTER_DIS:
+ case DNGN_ENTER_GEHENNA:
+ case DNGN_ENTER_TARTARUS:
+ grd[count_x][count_y] = featm->feat;
+ env.markers.remove(marker);
+ break;
+ default:
+ break;
+ }
}
}
}