diff --git a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/DynamicRegionEditor.java b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/DynamicRegionEditor.java index b8232620..9e581bda 100644 --- a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/DynamicRegionEditor.java +++ b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/DynamicRegionEditor.java @@ -368,6 +368,10 @@ public class DynamicRegionEditor implements SWPlayer.Component, Listener { checkSpawnRegionAndDelete(Tile.TILE_PN); checkSpawnRegionAndDelete(Tile.TILE_PP); }); + DynamicRegionSystem.INSTANCE.get(Tile.TILE_NZ).getArea().place(new PasteBuilder(), false); + DynamicRegionSystem.INSTANCE.get(Tile.TILE_PZ).getArea().place(new PasteBuilder(), false); + DynamicRegionSystem.INSTANCE.get(Tile.TILE_ZN).getArea().place(new PasteBuilder(), false); + DynamicRegionSystem.INSTANCE.get(Tile.TILE_ZP).getArea().place(new PasteBuilder(), false); } private void checkSpawnRegionAndDelete(Tile tile) { @@ -428,14 +432,15 @@ public class DynamicRegionEditor implements SWPlayer.Component, Listener { constructSpawnRegion(Tile.TILE_NN); constructSpawnRegion(Tile.TILE_NP); constructSpawnRegion(Tile.TILE_PN); - constructSpawnRegion(Tile.TILE_PP); + DynamicRegion region = constructSpawnRegion(Tile.TILE_PP); + if (region != null) region.getArea().reset(new PasteBuilder(), false); } - private void constructSpawnRegion(Tile tile) { + private DynamicRegion constructSpawnRegion(Tile tile) { DynamicRegion region = DynamicRegionRepository.constructRegion(SpawnRegion.class, tile); - if (region == null) return; - region.getArea().place(new PasteBuilder(), false); + if (region == null) return null; region.updateNeighbours(); + return region; } } diff --git a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/spawn/SpawnArea.java b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/spawn/SpawnArea.java index ff5d82ab..d8cc6710 100644 --- a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/spawn/SpawnArea.java +++ b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/spawn/SpawnArea.java @@ -44,12 +44,12 @@ public class SpawnArea extends Region.Area { @Override public @NonNull Point getMinPoint(boolean extension) { - return Point.fromLocation(tile.getMinLocation()); + return Point.fromLocation(tile.getMinLocation()).setY(WORLD_MIN_Y); } @Override public @NonNull Point getMaxPoint(boolean extension) { - return Point.fromLocation(tile.getMaxLocation()); + return Point.fromLocation(tile.getMaxLocation()).setY(WORLD_MAX_Y); } @Override