diff options
Diffstat (limited to 'crawl-ref/source/it_use3.cc')
-rw-r--r-- | crawl-ref/source/it_use3.cc | 18 |
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; + } } } } |