tower-generator #6
@ -14,7 +14,7 @@ tower:
|
||||
pitch: 0.0
|
||||
doors: []
|
||||
keys: []
|
||||
lavaY: 220
|
||||
lavaY: 78
|
||||
laveSpace: 7
|
||||
|
||||
towerGenerator:
|
||||
|
@ -125,20 +125,30 @@ public class WorldConfig {
|
||||
|
||||
ESCAPE_HEIGHT = tower.getInt("escapeHeight");
|
||||
SPAWN = parseLocation(tower.getConfigurationSection("spawn"));
|
||||
List<ConfigurationSection> doors = tower.getConfigurationSection("doors").getKeys(false).stream()
|
||||
.map(tower.getConfigurationSection("doors")::getConfigurationSection)
|
||||
.toList();
|
||||
DOORS = new Location[doors.size()];
|
||||
for (int i = 0; i < doors.size(); i++) {
|
||||
DOORS[i] = parseLocation(doors.get(i));
|
||||
ConfigurationSection doorSection = tower.getConfigurationSection("doors");
|
||||
if (doorSection != null) {
|
||||
List<ConfigurationSection> doors = doorSection.getKeys(false).stream()
|
||||
.map(tower.getConfigurationSection("doors")::getConfigurationSection)
|
||||
.toList();
|
||||
DOORS = new Location[doors.size()];
|
||||
for (int i = 0; i < doors.size(); i++) {
|
||||
DOORS[i] = parseLocation(doors.get(i));
|
||||
}
|
||||
} else {
|
||||
DOORS = new Location[0];
|
||||
}
|
||||
|
||||
List<ConfigurationSection> keys = tower.getConfigurationSection("keys").getKeys(false).stream()
|
||||
.map(tower.getConfigurationSection("keys")::getConfigurationSection)
|
||||
.toList();
|
||||
KEYS = new Location[keys.size()];
|
||||
for (int i = 0; i < keys.size(); i++) {
|
||||
KEYS[i] = parseLocation(keys.get(i));
|
||||
ConfigurationSection keysSection = tower.getConfigurationSection("keys");
|
||||
if (keysSection != null) {
|
||||
List<ConfigurationSection> keys = keysSection.getKeys(false).stream()
|
||||
.map(tower.getConfigurationSection("keys")::getConfigurationSection)
|
||||
.toList();
|
||||
KEYS = new Location[keys.size()];
|
||||
for (int i = 0; i < keys.size(); i++) {
|
||||
KEYS[i] = parseLocation(keys.get(i));
|
||||
}
|
||||
} else {
|
||||
KEYS = new Location[0];
|
||||
}
|
||||
|
||||
LAVA_Y = tower.getInt("lavaY");
|
||||
|
@ -84,8 +84,12 @@ public class TowerRunGame {
|
||||
for (int z = WorldConfig.MIN_TOWER.getBlockZ(); z < WorldConfig.MAX_TOWER.getBlockZ(); z += WorldConfig.LAVE_SPACE) {
|
||||
Vector pos = new Vector(x, 0, z);
|
||||
if (Arrays.stream(WorldConfig.REGIONS).anyMatch(region -> region.contains(pos))) {
|
||||
WorldConfig.MIN_TOWER.getWorld().getBlockAt(x, WorldConfig.LAVA_Y, z).setType(Material.LAVA, true);
|
||||
WorldConfig.MIN_TOWER.getWorld().getBlockAt(x, WorldConfig.LAVA_Y - 1, z).setType(Material.BEDROCK, true);
|
||||
int offset = WorldConfig.LAVA_Y;
|
||||
if (TowerRun.getTowerGenerator() != null) {
|
||||
offset += TowerRun.getTowerGenerator().getHeight();
|
||||
}
|
||||
WorldConfig.MIN_TOWER.getWorld().getBlockAt(x, offset, z).setType(Material.LAVA, true);
|
||||
WorldConfig.MIN_TOWER.getWorld().getBlockAt(x, offset - 1, z).setType(Material.BEDROCK, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren