From 2f63b14d1160a9f68eb893a187a812a9a797d8b1 Mon Sep 17 00:00:00 2001 From: loki Date: Thu, 9 Apr 2026 12:53:45 +0200 Subject: [PATCH] Fix locale loading, post-fall generation, and initial block distance MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix locale default value parsing (Boolean → String) - Move first block 3 blocks ahead after fall to avoid platform overlap - Reduce initial generation from 5 to 3 blocks for better spacing --- .../generator/lifecycle/GeneratorCleanup.java | 10 ++++++++++ .../generator/lifecycle/LifecycleTickManager.java | 6 +++--- src/main/resources/config.yml | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/main/java/dev/loki/loparkour/generator/lifecycle/GeneratorCleanup.java b/src/main/java/dev/loki/loparkour/generator/lifecycle/GeneratorCleanup.java index f2a3ba6..611d7cb 100644 --- a/src/main/java/dev/loki/loparkour/generator/lifecycle/GeneratorCleanup.java +++ b/src/main/java/dev/loki/loparkour/generator/lifecycle/GeneratorCleanup.java @@ -111,7 +111,17 @@ public class GeneratorCleanup { // Regenerate first block Location spawn = generator.state.playerSpawn; if (spawn != null) { + // Place first block ahead of spawn based on heading direction Location blockSpawn = spawn.clone().add(0, -1, 0); + + // Move block forward based on heading + switch (dev.loki.loparkour.config.Option.HEADING) { + case NORTH -> blockSpawn.add(0, 0, -3); + case SOUTH -> blockSpawn.add(0, 0, 3); + case WEST -> blockSpawn.add(-3, 0, 0); + case EAST -> blockSpawn.add(3, 0, 0); + } + generator.generateFirst(spawn, blockSpawn); } } diff --git a/src/main/java/dev/loki/loparkour/generator/lifecycle/LifecycleTickManager.java b/src/main/java/dev/loki/loparkour/generator/lifecycle/LifecycleTickManager.java index 4e4ca0c..14ce48b 100644 --- a/src/main/java/dev/loki/loparkour/generator/lifecycle/LifecycleTickManager.java +++ b/src/main/java/dev/loki/loparkour/generator/lifecycle/LifecycleTickManager.java @@ -34,9 +34,9 @@ public class LifecycleTickManager { if (generator.state.start == null) { generator.state.start = java.time.Instant.now(); } - - // Generate initial blocks - generator.generate(GENERATION_LEAD); + + // Generate initial blocks (reduced from GENERATION_LEAD to avoid too far generation) + generator.generate(3); } /** diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index e3eb2df..995b33d 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -474,7 +474,7 @@ default-values: lang: enabled: true - default: "en" + default: en chat: enabled: true