v0.2.3: correction to sewer boss levelgen logic, fixes a bug and levels should be bigger on average now.

This commit is contained in:
Evan Debenham 2014-12-22 10:10:13 -05:00
parent 4695f8d3c5
commit 0a1a6834fc

View File

@ -83,7 +83,7 @@ public class SewerBossLevel extends RegularLevel {
for(int i = 0; i <= 4; i++){ for(int i = 0; i <= 4; i++){
retry = 0; retry = 0;
//find a suitable room the first four times //find a suitable room the first four times
//sutiable room should be empty and have a distance of 2 from the current room //suitable room should be empty, have a distance of 2 from the current room, and not be adjacent to the entrance.
if (i < 4) { if (i < 4) {
do { do {
if (retry++ > 20) { if (retry++ > 20) {
@ -92,7 +92,7 @@ public class SewerBossLevel extends RegularLevel {
curRoom = Random.element(rooms); curRoom = Random.element(rooms);
Graph.buildDistanceMap(rooms, curRoom); Graph.buildDistanceMap(rooms, curRoom);
distance = lastRoom.distance(); distance = lastRoom.distance();
} while (curRoom.type != Type.NULL || distance != 2); } while (curRoom.type != Type.NULL || distance != 2 || curRoom.neigbours.contains(roomEntrance));
curRoom.type = Type.STANDARD; curRoom.type = Type.STANDARD;