summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2006-12-08 16:22:56 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2006-12-08 16:22:56 +0000
commitfd80ba19d0a9cf334b3dcd34098db1bf9843477f (patch)
tree53a307f34258d2ea7e0328053759c392c1042eab /crawl-ref/source
parent6ff4c68be14a35ea6a2499228762d6bb2677dff8 (diff)
downloadcrawl-ref-fd80ba19d0a9cf334b3dcd34098db1bf9843477f.tar.gz
crawl-ref-fd80ba19d0a9cf334b3dcd34098db1bf9843477f.zip
Be more persistent about connecting a vault to the rest of the level.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@600 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r--crawl-ref/source/dungeon.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/crawl-ref/source/dungeon.cc b/crawl-ref/source/dungeon.cc
index 2478264aa9..49e0e6f90a 100644
--- a/crawl-ref/source/dungeon.cc
+++ b/crawl-ref/source/dungeon.cc
@@ -5393,10 +5393,11 @@ static void build_rooms(const dgn_region_list &excluded,
if (connections.size())
{
const coord_def c = connections[0];
- connections.erase( connections.begin() );
- join_the_dots(c, myroom.random_edge_point(), excluded);
+ if (join_the_dots(c, myroom.random_edge_point(), excluded))
+ connections.erase( connections.begin() );
}
- else if (exclusive)
+
+ if (i > 0 && exclusive)
{
const coord_def end = myroom.end();
bool found_collision = false;
@@ -5424,7 +5425,7 @@ static void build_rooms(const dgn_region_list &excluded,
replace_area(myroom.pos.x, myroom.pos.y, end.x, end.y,
DNGN_ROCK_WALL, DNGN_FLOOR);
- if (which_room > 0) // && !exclusive2
+ if (which_room > 0)
{
join_the_dots(
myroom.random_edge_point(),