From a5c60edb8a9e2c911a5bd783e091b5aca9ffa3ca Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Sat, 5 Sep 2026 21:02:33 +0200 Subject: [PATCH] Fix PathRegion connection --- .../src/de/steamwar/bausystem/region/dynamic/Tile.java | 4 ++++ .../de/steamwar/bausystem/region/dynamic/path/PathRegion.java | 1 + 2 files changed, 5 insertions(+) diff --git a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/Tile.java b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/Tile.java index d4cd712d..c23dc548 100644 --- a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/Tile.java +++ b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/Tile.java @@ -36,9 +36,13 @@ public class Tile { public static final Tile ZERO = new Tile(0, 0); public static final Tile TILE_PZ = new Tile(1, 0); + public static final Tile TILE_DPZ = new Tile(2, 0); public static final Tile TILE_NZ = new Tile(-1, 0); + public static final Tile TILE_DNZ = new Tile(-2, 0); public static final Tile TILE_ZP = new Tile(0, 1); + public static final Tile TILE_ZDP = new Tile(0, 2); public static final Tile TILE_ZN = new Tile(0, -1); + public static final Tile TILE_ZDN = new Tile(0, -2); public static final Tile TILE_PP = new Tile(1, 1); public static final Tile TILE_PN = new Tile(1, -1); diff --git a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/path/PathRegion.java b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/path/PathRegion.java index 044cb9c4..62947c93 100644 --- a/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/path/PathRegion.java +++ b/BauSystem/BauSystem_RegionDynamic/src/de/steamwar/bausystem/region/dynamic/path/PathRegion.java @@ -78,6 +78,7 @@ public class PathRegion extends DynamicRegion { public @org.jspecify.annotations.NonNull PathConnectResult shouldPathConnect(Tile source, PathSide side, boolean diagonal) { if (diagonal) { // Needed for inner corners of Small Spawn + if (!(source.equals(Tile.TILE_DNZ) || source.equals(Tile.TILE_DPZ) || source.equals(Tile.TILE_ZDN) || source.equals(Tile.TILE_ZDP))) return PathConnectResult.BY_TYPE; return PathConnectResult.of(!(tile.equals(Tile.TILE_NN) || tile.equals(Tile.TILE_NP) || tile.equals(Tile.TILE_PN) || tile.equals(Tile.TILE_PP))); } return PathConnectResult.BY_TYPE;