v2.4.0: refactored entrance and exit rooms to be more extensible
This commit is contained in:
@@ -64,6 +64,13 @@ public class ShatteredPixelDungeon extends Game {
|
|||||||
com.shatteredpixel.shatteredpixeldungeon.items.potions.brews.AquaBrew.class,
|
com.shatteredpixel.shatteredpixeldungeon.items.potions.brews.AquaBrew.class,
|
||||||
"com.shatteredpixel.shatteredpixeldungeon.items.spells.AquaBlast" );
|
"com.shatteredpixel.shatteredpixeldungeon.items.spells.AquaBlast" );
|
||||||
|
|
||||||
|
com.watabou.utils.Bundle.addAlias(
|
||||||
|
com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.entrance.EntranceRoom.class,
|
||||||
|
"com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom.class" );
|
||||||
|
com.watabou.utils.Bundle.addAlias(
|
||||||
|
com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.exit.ExitRoom.class,
|
||||||
|
"com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ExitRoom.class" );
|
||||||
|
|
||||||
//pre-v2.3.0
|
//pre-v2.3.0
|
||||||
com.watabou.utils.Bundle.addAlias(
|
com.watabou.utils.Bundle.addAlias(
|
||||||
com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb.ConjuredBomb.class,
|
com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb.ConjuredBomb.class,
|
||||||
|
|||||||
+2
-2
@@ -33,8 +33,8 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.builders.LineBuilder;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.CityPainter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.CityPainter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.entrance.EntranceRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ExitRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.exit.ExitRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ImpShopRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ImpShopRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.watabou.noosa.Group;
|
import com.watabou.noosa.Group;
|
||||||
|
|||||||
+4
-4
@@ -61,8 +61,8 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.MagicalFire
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.PitRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.PitRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.ShopRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.ShopRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.entrance.EntranceRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ExitRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.exit.ExitRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.BlazingTrap;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.BlazingTrap;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.BurningTrap;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.BurningTrap;
|
||||||
@@ -766,9 +766,9 @@ public abstract class RegularLevel extends Level {
|
|||||||
rooms = new ArrayList<>( (Collection<Room>) ((Collection<?>) bundle.getCollection( "rooms" )) );
|
rooms = new ArrayList<>( (Collection<Room>) ((Collection<?>) bundle.getCollection( "rooms" )) );
|
||||||
for (Room r : rooms) {
|
for (Room r : rooms) {
|
||||||
r.onLevelLoad( this );
|
r.onLevelLoad( this );
|
||||||
if (r instanceof EntranceRoom ){
|
if (r.isEntrance()){
|
||||||
roomEntrance = r;
|
roomEntrance = r;
|
||||||
} else if (r instanceof ExitRoom ){
|
} else if (r.isExit()){
|
||||||
roomExit = r;
|
roomExit = r;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-4
@@ -26,8 +26,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.connection.Connecti
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.connection.MazeConnectionRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.connection.MazeConnectionRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.secret.SecretRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.secret.SecretRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.ShopRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.ShopRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ExitRoom;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.watabou.utils.Random;
|
import com.watabou.utils.Random;
|
||||||
|
|
||||||
@@ -98,9 +96,9 @@ public abstract class RegularBuilder extends Builder {
|
|||||||
singleConnections.clear();
|
singleConnections.clear();
|
||||||
multiConnections.clear();
|
multiConnections.clear();
|
||||||
for (Room r : rooms){
|
for (Room r : rooms){
|
||||||
if (r instanceof EntranceRoom){
|
if (r.isEntrance()){
|
||||||
entrance = r;
|
entrance = r;
|
||||||
} else if (r instanceof ExitRoom) {
|
} else if (r.isExit()) {
|
||||||
exit = r;
|
exit = r;
|
||||||
} else if (r instanceof ShopRoom && r.maxConnections(Room.ALL) == 1){
|
} else if (r instanceof ShopRoom && r.maxConnections(Room.ALL) == 1){
|
||||||
shop = r;
|
shop = r;
|
||||||
|
|||||||
+1
-2
@@ -31,7 +31,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.connection.ConnectionRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.connection.ConnectionRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.Trap;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.Trap;
|
||||||
import com.watabou.noosa.Game;
|
import com.watabou.noosa.Game;
|
||||||
@@ -260,7 +259,7 @@ public abstract class RegularPainter extends Painter {
|
|||||||
|
|
||||||
//entrance doors on floor 1 are hidden during tutorial
|
//entrance doors on floor 1 are hidden during tutorial
|
||||||
//entrance doors on floor 2 are hidden if the player hasn't picked up 2nd guidebook page
|
//entrance doors on floor 2 are hidden if the player hasn't picked up 2nd guidebook page
|
||||||
if (r instanceof EntranceRoom || n instanceof EntranceRoom){
|
if (r.isEntrance() || n.isEntrance()){
|
||||||
if ((Dungeon.depth == 1 && SPDSettings.intro())
|
if ((Dungeon.depth == 1 && SPDSettings.intro())
|
||||||
|| (Dungeon.depth == 2 && !Document.ADVENTURERS_GUIDE.isPageFound(Document.GUIDE_SEARCHING))) {
|
|| (Dungeon.depth == 2 && !Document.ADVENTURERS_GUIDE.isPageFound(Document.GUIDE_SEARCHING))) {
|
||||||
d.type = Room.Door.Type.HIDDEN;
|
d.type = Room.Door.Type.HIDDEN;
|
||||||
|
|||||||
@@ -283,6 +283,14 @@ public abstract class Room extends Rect implements Graph.Node, Bundlable {
|
|||||||
connected.clear();
|
connected.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isEntrance(){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isExit(){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// **** Painter Logic ****
|
// **** Painter Logic ****
|
||||||
|
|
||||||
public abstract void paint(Level level);
|
public abstract void paint(Level level);
|
||||||
|
|||||||
+4
-5
@@ -34,7 +34,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
||||||
import com.watabou.noosa.Image;
|
import com.watabou.noosa.Image;
|
||||||
@@ -100,21 +99,21 @@ public class MassGraveRoom extends SpecialRoom {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canConnect(Room r) {
|
public boolean canConnect(Room r) {
|
||||||
if (r instanceof EntranceRoom){
|
if (r.isEntrance()){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
//must have at least 3 rooms between it and the entrance room
|
//must have at least 3 rooms between it and the entrance room
|
||||||
for (Room r1 : r.connected.keySet()) {
|
for (Room r1 : r.connected.keySet()) {
|
||||||
if (r1 instanceof EntranceRoom){
|
if (r1.isEntrance()){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
for (Room r2 : r1.connected.keySet()) {
|
for (Room r2 : r1.connected.keySet()) {
|
||||||
if (r2 instanceof EntranceRoom){
|
if (r2.isEntrance()){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
for (Room r3 : r2.connected.keySet()) {
|
for (Room r3 : r2.connected.keySet()) {
|
||||||
if (r3 instanceof EntranceRoom){
|
if (r3.isEntrance()){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-6
@@ -30,7 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.secret.SecretRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.secret.SecretRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
||||||
import com.watabou.noosa.Image;
|
import com.watabou.noosa.Image;
|
||||||
@@ -41,7 +41,7 @@ import com.watabou.utils.Random;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class MineEntrance extends EntranceRoom {
|
public class MineEntrance extends StandardRoom {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int minWidth() {
|
public int minWidth() {
|
||||||
@@ -54,10 +54,8 @@ public class MineEntrance extends EntranceRoom {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canMerge(Level l, Point p, int mergeTerrain) {
|
public boolean isEntrance() {
|
||||||
//StandardRoom.canMerge
|
return true;
|
||||||
int cell = l.pointToCell(pointInside(p, 1));
|
|
||||||
return (Terrain.flags[l.map[cell]] & Terrain.SOLID) == 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+1
-1
@@ -26,7 +26,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.entrance.EntranceRoom;
|
||||||
|
|
||||||
public class SewerBossEntranceRoom extends EntranceRoom {
|
public class SewerBossEntranceRoom extends EntranceRoom {
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -27,7 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.ExitRoom;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.exit.ExitRoom;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
||||||
import com.watabou.noosa.Image;
|
import com.watabou.noosa.Image;
|
||||||
import com.watabou.noosa.Tilemap;
|
import com.watabou.noosa.Tilemap;
|
||||||
|
|||||||
+1
-2
@@ -29,7 +29,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.EntranceRoom;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
import com.shatteredpixel.shatteredpixeldungeon.tiles.CustomTilemap;
|
||||||
import com.watabou.noosa.Tilemap;
|
import com.watabou.noosa.Tilemap;
|
||||||
import com.watabou.utils.Point;
|
import com.watabou.utils.Point;
|
||||||
@@ -61,7 +60,7 @@ public class DemonSpawnerRoom extends SpecialRoom {
|
|||||||
@Override
|
@Override
|
||||||
public boolean connect(Room room) {
|
public boolean connect(Room room) {
|
||||||
//cannot connect to entrance, otherwise works normally
|
//cannot connect to entrance, otherwise works normally
|
||||||
if (room instanceof EntranceRoom) return false;
|
if (room.isExit()) return false;
|
||||||
else return super.connect(room);
|
else return super.connect(room);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+8
-2
@@ -19,7 +19,7 @@
|
|||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard;
|
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.entrance;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.SPDSettings;
|
import com.shatteredpixel.shatteredpixeldungeon.SPDSettings;
|
||||||
@@ -31,6 +31,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.watabou.utils.Point;
|
import com.watabou.utils.Point;
|
||||||
import com.watabou.utils.Random;
|
import com.watabou.utils.Random;
|
||||||
|
|
||||||
@@ -46,6 +47,11 @@ public class EntranceRoom extends StandardRoom {
|
|||||||
return Math.max(super.minHeight(), 5);
|
return Math.max(super.minHeight(), 5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isEntrance() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canMerge(Level l, Point p, int mergeTerrain) {
|
public boolean canMerge(Level l, Point p, int mergeTerrain) {
|
||||||
return false;
|
return false;
|
||||||
@@ -117,7 +123,7 @@ public class EntranceRoom extends StandardRoom {
|
|||||||
@Override
|
@Override
|
||||||
public boolean connect(Room room) {
|
public boolean connect(Room room) {
|
||||||
//cannot connect to exit, otherwise works normally
|
//cannot connect to exit, otherwise works normally
|
||||||
if (room instanceof ExitRoom) return false;
|
if (room.isExit()) return false;
|
||||||
else return super.connect(room);
|
else return super.connect(room);
|
||||||
}
|
}
|
||||||
|
|
||||||
+3
-2
@@ -19,13 +19,14 @@
|
|||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard;
|
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.exit;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.features.LevelTransition;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard.StandardRoom;
|
||||||
import com.watabou.utils.Point;
|
import com.watabou.utils.Point;
|
||||||
|
|
||||||
public class ExitRoom extends StandardRoom {
|
public class ExitRoom extends StandardRoom {
|
||||||
@@ -62,7 +63,7 @@ public class ExitRoom extends StandardRoom {
|
|||||||
@Override
|
@Override
|
||||||
public boolean connect(Room room) {
|
public boolean connect(Room room) {
|
||||||
//cannot connect to entrance, otherwise works normally
|
//cannot connect to entrance, otherwise works normally
|
||||||
if (room instanceof EntranceRoom) return false;
|
if (room.isEntrance()) return false;
|
||||||
else return super.connect(room);
|
else return super.connect(room);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user