From 1e20595ab51e4f30896de95907e5e54d39a76d48 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Mon, 7 Jun 2021 10:45:10 +0300 Subject: [PATCH] Null pointer fix --- gradle.properties | 2 +- src/main/java/ru/bclib/mixin/common/ServerLevelMixin.java | 8 ++++---- src/main/java/ru/bclib/world/biomes/BCLBiome.java | 3 ++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/gradle.properties b/gradle.properties index 172c19fa..087364c1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ yarn_mappings=6 loader_version=0.11.3 # Mod Properties -mod_version = 0.1.18 +mod_version = 0.1.19 maven_group = ru.bclib archives_base_name = bclib diff --git a/src/main/java/ru/bclib/mixin/common/ServerLevelMixin.java b/src/main/java/ru/bclib/mixin/common/ServerLevelMixin.java index 9178861b..9211ed91 100644 --- a/src/main/java/ru/bclib/mixin/common/ServerLevelMixin.java +++ b/src/main/java/ru/bclib/mixin/common/ServerLevelMixin.java @@ -27,19 +27,19 @@ import ru.bclib.api.WorldDataAPI; @Mixin(ServerLevel.class) public abstract class ServerLevelMixin extends Level { - private static String be_lastWorld = null; + private static String bcl_lastWorld = null; protected ServerLevelMixin(WritableLevelData writableLevelData, ResourceKey resourceKey, DimensionType dimensionType, Supplier supplier, boolean bl, boolean bl2, long l) { super(writableLevelData, resourceKey, dimensionType, supplier, bl, bl2, l); } @Inject(method = "*", at = @At("TAIL")) - private void be_onServerWorldInit(MinecraftServer server, Executor workerExecutor, LevelStorageSource.LevelStorageAccess session, ServerLevelData properties, ResourceKey registryKey, DimensionType dimensionType, ChunkProgressListener worldGenerationProgressListener, ChunkGenerator chunkGenerator, boolean debugWorld, long l, List list, boolean bl, CallbackInfo info) { - if (be_lastWorld != null && be_lastWorld.equals(session.getLevelId())) { + private void bcl_onServerWorldInit(MinecraftServer server, Executor workerExecutor, LevelStorageSource.LevelStorageAccess session, ServerLevelData properties, ResourceKey registryKey, DimensionType dimensionType, ChunkProgressListener worldGenerationProgressListener, ChunkGenerator chunkGenerator, boolean debugWorld, long l, List list, boolean bl, CallbackInfo info) { + if (bcl_lastWorld != null && bcl_lastWorld.equals(session.getLevelId())) { return; } - be_lastWorld = session.getLevelId(); + bcl_lastWorld = session.getLevelId(); ServerLevel world = ServerLevel.class.cast(this); File dir = session.getDimensionPath(world.dimension()); diff --git a/src/main/java/ru/bclib/world/biomes/BCLBiome.java b/src/main/java/ru/bclib/world/biomes/BCLBiome.java index 8d514ebb..2d52c36f 100644 --- a/src/main/java/ru/bclib/world/biomes/BCLBiome.java +++ b/src/main/java/ru/bclib/world/biomes/BCLBiome.java @@ -86,7 +86,8 @@ public class BCLBiome { } public BCLBiome getSubBiome(Random random) { - return subbiomes.get(random); + BCLBiome biome = subbiomes.get(random); + return biome == null ? this : biome; } public BCLBiome getParentBiome() {