v2.4.0: added an ENTRANCE_SP terrain type

This commit is contained in:
Evan Debenham
2024-04-19 12:19:08 -04:00
parent e279e3c26d
commit 345b6fe79d
18 changed files with 17 additions and 4 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -58,7 +58,8 @@ public class Dewdrop extends Item {
} else {
int terr = Dungeon.level.map[pos];
if (!consumeDew(1, hero, terr == Terrain.ENTRANCE|| terr == Terrain.EXIT || terr == Terrain.UNLOCKED_EXIT)){
if (!consumeDew(1, hero, terr == Terrain.ENTRANCE || terr == Terrain.ENTRANCE_SP
|| terr == Terrain.EXIT || terr == Terrain.UNLOCKED_EXIT)){
return false;
}

View File

@@ -426,6 +426,7 @@ public class CavesBossLevel extends Level {
case Terrain.WATER:
return super.tileDesc( tile ) + "\n\n" + Messages.get(CavesBossLevel.class, "water_desc");
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(CavesLevel.class, "entrance_desc");
case Terrain.EXIT:
//city exit is used

View File

@@ -210,6 +210,7 @@ public class CavesLevel extends RegularLevel {
public String tileDesc( int tile ) {
switch (tile) {
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(CavesLevel.class, "entrance_desc");
case Terrain.EXIT:
return Messages.get(CavesLevel.class, "exit_desc");

View File

@@ -388,6 +388,7 @@ public class CityBossLevel extends Level {
public String tileDesc(int tile) {
switch (tile) {
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(CityLevel.class, "entrance_desc");
case Terrain.EXIT:
return Messages.get(CityLevel.class, "exit_desc");

View File

@@ -145,6 +145,7 @@ public class CityLevel extends RegularLevel {
public String tileDesc(int tile) {
switch (tile) {
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(CityLevel.class, "entrance_desc");
case Terrain.EXIT:
return Messages.get(CityLevel.class, "exit_desc");

View File

@@ -167,6 +167,7 @@ public class LastShopLevel extends RegularLevel {
public String tileDesc(int tile) {
switch (tile) {
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(CityLevel.class, "entrance_desc");
case Terrain.EXIT:
return Messages.get(CityLevel.class, "exit_desc");

View File

@@ -1493,6 +1493,7 @@ public abstract class Level implements Bundlable {
case Terrain.OPEN_DOOR:
return Messages.get(Level.class, "open_door_name");
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(Level.class, "entrace_name");
case Terrain.EXIT:
return Messages.get(Level.class, "exit_name");
@@ -1540,6 +1541,7 @@ public abstract class Level implements Bundlable {
case Terrain.WATER:
return Messages.get(Level.class, "water_desc");
case Terrain.ENTRANCE:
case Terrain.ENTRANCE_SP:
return Messages.get(Level.class, "entrance_desc");
case Terrain.EXIT:
case Terrain.UNLOCKED_EXIT:

View File

@@ -31,6 +31,7 @@ public class Terrain {
public static final int DOOR = 5;
public static final int OPEN_DOOR = 6;
public static final int ENTRANCE = 7;
public static final int ENTRANCE_SP = 37;
public static final int EXIT = 8;
public static final int EMBERS = 9;
public static final int LOCKED_DOOR = 10;
@@ -85,7 +86,8 @@ public class Terrain {
flags[WALL] = LOS_BLOCKING | SOLID;
flags[DOOR] = PASSABLE | LOS_BLOCKING | FLAMABLE | SOLID;
flags[OPEN_DOOR] = PASSABLE | FLAMABLE;
flags[ENTRANCE] = PASSABLE/* | SOLID*/;
flags[ENTRANCE] = PASSABLE;
flags[ENTRANCE_SP] = flags[ENTRANCE];
flags[EXIT] = PASSABLE;
flags[EMBERS] = PASSABLE;
flags[LOCKED_DOOR] = LOS_BLOCKING | SOLID;

View File

@@ -45,7 +45,7 @@ public class CircleBasinEntranceRoom extends CircleBasinRoom {
super.paint(level);
int entrance = level.pointToCell(center());
Painter.set( level, entrance, Terrain.ENTRANCE );
Painter.set( level, entrance, Terrain.ENTRANCE_SP );
level.transitions.add(new LevelTransition(level, entrance, LevelTransition.Type.REGULAR_ENTRANCE));
}

View File

@@ -46,7 +46,7 @@ public class HallwayEntranceRoom extends HallwayRoom {
break;
}
}
Painter.set( level, entrance, Terrain.ENTRANCE );
Painter.set( level, entrance, Terrain.ENTRANCE_SP );
level.transitions.add(new LevelTransition(level, entrance, LevelTransition.Type.REGULAR_ENTRANCE));
}

View File

@@ -68,6 +68,8 @@ public class DungeonTileSheet {
public static final int EMPTY_WELL = GROUND +19;
public static final int PEDESTAL = GROUND +20;
public static final int ENTRANCE_SP = GROUND +22;
public static final int CHASM = xy(9, 2); //8 slots
//chasm stitching visuals...
public static final int CHASM_FLOOR = CHASM+1;
@@ -394,6 +396,7 @@ public class DungeonTileSheet {
directVisuals.put(Terrain.EMBERS, EMBERS);
directVisuals.put(Terrain.PEDESTAL, PEDESTAL);
directVisuals.put(Terrain.EMPTY_SP, FLOOR_SP);
directVisuals.put(Terrain.ENTRANCE_SP, ENTRANCE_SP);
directVisuals.put(Terrain.SECRET_TRAP, directVisuals.get(Terrain.EMPTY));
directVisuals.put(Terrain.TRAP, directVisuals.get(Terrain.EMPTY));