diff --git a/src/core/java/net/remmintan/mods/minefortress/core/interfaces/server/IServerFortressManager.java b/src/core/java/net/remmintan/mods/minefortress/core/interfaces/server/IServerFortressManager.java index 995be0d2..7e244317 100644 --- a/src/core/java/net/remmintan/mods/minefortress/core/interfaces/server/IServerFortressManager.java +++ b/src/core/java/net/remmintan/mods/minefortress/core/interfaces/server/IServerFortressManager.java @@ -38,7 +38,6 @@ public interface IServerFortressManager { boolean isSurvival(); boolean isCreative(); - Optional getRandomPosWithinFortress(); List getAllTargetedPawns(); void increaseMaxColonistsCount(); diff --git a/src/main/java/org/minefortress/entity/ai/goal/WanderAroundTheFortressGoal.java b/src/main/java/org/minefortress/entity/ai/goal/WanderAroundTheFortressGoal.java index a0b2e493..b33d8e79 100644 --- a/src/main/java/org/minefortress/entity/ai/goal/WanderAroundTheFortressGoal.java +++ b/src/main/java/org/minefortress/entity/ai/goal/WanderAroundTheFortressGoal.java @@ -20,7 +20,7 @@ public boolean canStart() { if(colonist.getEatControl().map(IEatControl::isEating).orElse(false)) return false; if(!isDay() || colonist.getTaskControl().hasTask()) return false; final var posOptional = colonist.getServerFortressManager() - .flatMap(IServerFortressManager::getRandomPosWithinFortress); + .flatMap(IServerFortressManager::getRandomPositionAroundCampfire); if(posOptional.isPresent()) { goal = posOptional.get(); return true; diff --git a/src/main/java/org/minefortress/fortress/ServerFortressManager.java b/src/main/java/org/minefortress/fortress/ServerFortressManager.java index b86a5d00..c5a11df6 100644 --- a/src/main/java/org/minefortress/fortress/ServerFortressManager.java +++ b/src/main/java/org/minefortress/fortress/ServerFortressManager.java @@ -633,23 +633,6 @@ public BlockPos getFortressCenter() { return fortressCenter!=null?fortressCenter.toImmutable():null; } - public Optional getRandomPosWithinFortress(){ - if(minX == Integer.MAX_VALUE) return Optional.empty(); - - final int x = getWorld().random.nextInt(maxX - minX) + minX; - final int z = getWorld().random.nextInt(maxZ - minZ) + minZ; - final int y = getWorld().getTopY(Heightmap.Type.WORLD_SURFACE, x, z); - - final BlockPos fortressPos = new BlockPos(x, y, z); - if(getBuildingsManager().isPartOfAnyBuilding(fortressPos)) return Optional.empty(); - boolean isFluid = getWorld().getBlockState(fortressPos).isOf(Blocks.WATER); - if(isFluid) return Optional.empty(); - boolean isFluidAbove = getWorld().getBlockState(fortressPos.down()).isOf(Blocks.WATER); - if(isFluidAbove) return Optional.empty(); - - return Optional.of(fortressPos.up()); - } - public boolean isPositionWithinFortress(BlockPos pos) { if(minX == Integer.MAX_VALUE) { return false;