From ab4bcda4e2168a099fc10462872c1b7b6e85874b Mon Sep 17 00:00:00 2001 From: FalsePattern <30945458+FalsePattern@users.noreply.github.com> Date: Tue, 27 Dec 2022 17:07:15 +0100 Subject: [PATCH] Biomes O' Plenty startup crash fix (#73) --- .../mixins/common/bop/BOPBiomesMixin.java | 25 +++++++++++++++++++ .../endlessids/mixin/plugin/Mixin.java | 1 + 2 files changed, 26 insertions(+) create mode 100644 src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BOPBiomesMixin.java diff --git a/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BOPBiomesMixin.java b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BOPBiomesMixin.java new file mode 100644 index 0000000..d3e4bd0 --- /dev/null +++ b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BOPBiomesMixin.java @@ -0,0 +1,25 @@ +package com.falsepattern.endlessids.mixin.mixins.common.bop; + +import biomesoplenty.common.core.BOPBiomes; +import biomesoplenty.common.world.BOPBiomeManager; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +import net.minecraft.world.biome.BiomeGenBase; + +@Mixin(value = BOPBiomes.class, + remap = false) +public abstract class BOPBiomesMixin { + /** + * @author FalsePattern + * @reason Suppress NPE + */ + @Overwrite + private static void disableRiver(BiomeGenBase biome) { + try { + BOPBiomeManager.overworldRiverBiomes[biome.biomeID] = biome; + } catch (Throwable t) { + t.printStackTrace(); + } + } +} diff --git a/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java b/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java index ad6a396..fe9cdc5 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java @@ -81,6 +81,7 @@ public enum Mixin implements IMixin { //endregion AntiIDConflict->common //region BoP->common BOPBiomeManagerMixin(Side.COMMON, require(TargetedMod.BOP), "bop.BOPBiomeManagerMixin"), + BOPBiomesMixin(Side.COMMON, require(TargetedMod.BOP), "bop.BOPBiomesMixin"), //endregion BoP->common //region BiomeTweaker->common BiomeEventHandlerMixin(Side.COMMON, require(TargetedMod.BIOMETWEAKER), "biometweaker.BiomeEventHandlerMixin"),