summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/dgn-shoals.cc
diff options
context:
space:
mode:
authorDarshan Shaligram <dshaligram@users.sourceforge.net>2009-12-30 18:37:25 +0530
committerDarshan Shaligram <dshaligram@users.sourceforge.net>2009-12-30 18:44:25 +0530
commit23a78d07d2d1db6096497dc226d90e12eb010926 (patch)
tree4345e28270effd523ddabbacac5508e687f511ec /crawl-ref/source/dgn-shoals.cc
parent30ad58ea18d6e4e2132d235e60f66f11131e17dc (diff)
downloadcrawl-ref-23a78d07d2d1db6096497dc226d90e12eb010926.tar.gz
crawl-ref-23a78d07d2d1db6096497dc226d90e12eb010926.zip
More sanity checks for Shoals vault and stair connectivity (due).
Diffstat (limited to 'crawl-ref/source/dgn-shoals.cc')
-rw-r--r--crawl-ref/source/dgn-shoals.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/crawl-ref/source/dgn-shoals.cc b/crawl-ref/source/dgn-shoals.cc
index 57025a67d4..e9e563cea3 100644
--- a/crawl-ref/source/dgn-shoals.cc
+++ b/crawl-ref/source/dgn-shoals.cc
@@ -392,16 +392,20 @@ static void _shoals_furniture(int margin)
{
if (at_branch_bottom())
{
+ unwind_var<dungeon_feature_set> vault_exc(dgn_Vault_Excavatable_Feats);
+ dgn_Vault_Excavatable_Feats.insert(DNGN_STONE_WALL);
+
const coord_def c = _pick_shoals_island();
// Put all the stairs on one island.
grd(c) = DNGN_STONE_STAIRS_UP_I;
grd(c + coord_def(1, 0)) = DNGN_STONE_STAIRS_UP_II;
grd(c - coord_def(1, 0)) = DNGN_STONE_STAIRS_UP_III;
+ dgn_excavate(c, dgn_random_direction());
const coord_def p = _pick_shoals_island_distant_from(c);
// Place the rune
const map_def *vault = random_map_for_tag("shoal_rune");
- dgn_ensure_vault_placed(dgn_place_map(vault, false, true, p),
+ dgn_ensure_vault_placed(dgn_place_map(vault, false, false, p),
false);
const int nhuts = std::min(8, int(_shoals_islands.size()));