diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/Room.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/Room.java index f273c03dc..15771aff6 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/Room.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/Room.java @@ -216,6 +216,11 @@ public abstract class Room extends Rect implements Graph.Node, Bundlable { //considers both direction and point limits public boolean canConnect( Room r ){ + if (isExit() && r.isEntrance() || isEntrance() && r.isExit()){ + //entrance and exit rooms cannot directly connect + return false; + } + Rect i = intersect( r ); boolean foundPoint = false; @@ -263,10 +268,6 @@ public abstract class Room extends Rect implements Graph.Node, Bundlable { } public boolean connect( Room room ) { - if (isExit() && room.isEntrance() || isEntrance() && room.isExit()){ - //entrance and exit rooms cannot directly connect - return false; - } if ((neigbours.contains(room) || addNeigbour(room)) && !connected.containsKey( room ) && canConnect(room)) { diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CaveEntranceRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CaveEntranceRoom.java index e4786de41..249ec086c 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CaveEntranceRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CaveEntranceRoom.java @@ -25,7 +25,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; -import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.CaveRoom; import com.watabou.utils.PathFinder; @@ -83,11 +82,4 @@ public class CaveEntranceRoom extends CaveRoom { level.transitions.add(new LevelTransition(level, entrance, LevelTransition.Type.REGULAR_ENTRANCE)); } - @Override - public boolean connect(Room room) { - //cannot connect to exit, otherwise works normally - if (room.isExit()) return false; - else return super.connect(room); - } - } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CircleBasinEntranceRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CircleBasinEntranceRoom.java index 0db51d57e..23228766b 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CircleBasinEntranceRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/CircleBasinEntranceRoom.java @@ -25,7 +25,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; -import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.CircleBasinRoom; public class CircleBasinEntranceRoom extends CircleBasinRoom { @@ -50,10 +49,4 @@ public class CircleBasinEntranceRoom extends CircleBasinRoom { level.transitions.add(new LevelTransition(level, entrance, LevelTransition.Type.REGULAR_ENTRANCE)); } - @Override - public boolean connect(Room room) { - //cannot connect to exit, otherwise works normally - if (room.isExit()) return false; - else return super.connect(room); - } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CaveExitRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CaveExitRoom.java index 18a605d67..381e4b9de 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CaveExitRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CaveExitRoom.java @@ -25,7 +25,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; -import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.CaveRoom; import com.watabou.utils.PathFinder; import com.watabou.utils.Point; @@ -89,10 +88,4 @@ public class CaveExitRoom extends CaveRoom { return super.canPlaceCharacter(p, l) && l.pointToCell(p) != l.exit(); } - @Override - public boolean connect(Room room) { - //cannot connect to entrance, otherwise works normally - if (room.isEntrance()) return false; - else return super.connect(room); - } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CircleBasinExitRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CircleBasinExitRoom.java index 7cb5fecc4..38bc0e882 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CircleBasinExitRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/CircleBasinExitRoom.java @@ -25,7 +25,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; -import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.CircleBasinRoom; public class CircleBasinExitRoom extends CircleBasinRoom { @@ -50,11 +49,4 @@ public class CircleBasinExitRoom extends CircleBasinRoom { level.transitions.add(new LevelTransition(level, exit, LevelTransition.Type.REGULAR_EXIT)); } - @Override - public boolean connect(Room room) { - //cannot connect to exit, otherwise works normally - if (room.isExit()) return false; - else return super.connect(room); - } - }