From f099ac4bf73df6980d941738e58d388e465e02f9 Mon Sep 17 00:00:00 2001 From: FalsePattern <30945458+FalsePattern@users.noreply.github.com> Date: Sat, 2 Jul 2022 20:39:01 +0200 Subject: [PATCH] Biomes O' Plenty compat --- dependencies.gradle | 1 + .../common/bop/BoPBiomeManagerMixin.java | 33 +++++++++++++++++++ .../endlessids/mixin/plugin/Mixin.java | 3 ++ .../endlessids/mixin/plugin/TargetedMod.java | 1 + 4 files changed, 38 insertions(+) create mode 100644 src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BoPBiomeManagerMixin.java diff --git a/dependencies.gradle b/dependencies.gradle index bac9c74..8c835de 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -15,5 +15,6 @@ dependencies { compileOnly(deobfMaven(curseMaven, "curse.maven:antiidconflict-246288:2308279")) // 1.3.5 compileOnly("curse.maven:atg-228356:2231155") // 0.12.0 + compileOnly(deobfMaven(curseMaven, "curse.maven:biomesoplenty-220318:2499612")) // 2.1.0.2308 compileOnly(files("lib/GalacticraftCore-1.7-3.0.12.504-deobf.jar")) } diff --git a/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BoPBiomeManagerMixin.java b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BoPBiomeManagerMixin.java new file mode 100644 index 0000000..e4b1eba --- /dev/null +++ b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/bop/BoPBiomeManagerMixin.java @@ -0,0 +1,33 @@ +package com.falsepattern.endlessids.mixin.mixins.common.bop; + +import biomesoplenty.common.world.BOPBiomeManager; +import com.falsepattern.endlessids.constants.ExtendedConstants; +import com.falsepattern.endlessids.constants.VanillaConstants; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.ModifyConstant; + +@Mixin(value = BOPBiomeManager.class, + remap = false) +public abstract class BoPBiomeManagerMixin { + @ModifyConstant(method = "getNextFreeBiomeId", + constant = @Constant(intValue = VanillaConstants.biomeIDCount), + require = 1) + private static int extendIDs1(int constant) { + return ExtendedConstants.biomeIDCount; + } + + @ModifyConstant(method = "getNextFreeBiomeId", + constant = @Constant(intValue = VanillaConstants.biomeIDCount - 1), + require = 1) + private static int extendIDs2(int constant) { + return ExtendedConstants.biomeIDCount - 1; + } + + @ModifyConstant(method = "", + constant = @Constant(intValue = 40), + require = 1) + private static int moveBOPReallyFar(int constant) { + return 20000; + } +} 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 a00bd78..0424ae5 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java @@ -71,6 +71,9 @@ public enum Mixin implements IMixin { ATGChunkProviderMixin(Side.COMMON, require(TargetedMod.ATG), "atg.ATGChunkProviderMixin"), ATGWorldGenRocksMixin(Side.COMMON, require(TargetedMod.ATG), "atg.ATGWorldGenRocksMixin"), //endregion ATG->common + //region BoP->common + BoPBiomeManagerMixin(Side.COMMON, require(TargetedMod.BOP), "bop.BoPBiomeManagerMixin"), + //endregion BoP->common //region CoFHLib->common CoFHLibCofhBlockHelperMixin(Side.COMMON, require(TargetedMod.COFHLIB), "cofhlib.BlockHelperMixin"), //endregion CoFHLib->common diff --git a/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java b/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java index 0315a05..31611e2 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java @@ -13,6 +13,7 @@ public enum TargetedMod implements ITargetedMod { ANTIIDCONFLICT("Anti ID Conflict", false, startsWith("antiidconflict")), ATG("Alternate Terrain Generation", false, startsWith("atg")), + BOP("Biomes O' Plenty", false, startsWith("biomesoplenty-")), COFHLIB("CoFH Lib", false, startsWith("cofhlib-")), DRAGONAPI("DragonAPI", false, startsWith("dragonapi")), GALACTICRAFTCORE("GalactiCraftCore", false, startsWith("galacticraftcore")),