diff --git a/README.MD b/README.MD index 370d9c8..3bb7687 100644 --- a/README.MD +++ b/README.MD @@ -19,6 +19,7 @@ This mod also contains patches for the following mods: - Antique Atlas - Anti ID Conflict - ArchaicFix +- Atum - Biomes O' Plenty - Biome Wand - CoFH Lib diff --git a/dependencies.gradle b/dependencies.gradle index 609dc5e..0803443 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -31,6 +31,9 @@ dependencies { //ArchaicFix snapshot compile("com.github.embeddedt:ArchaicFix:be8666cb2dbf2e0a8b799e88cef3c0d12e5d4911:dev") + //Atum 0.6.77 + compile(deobfCurse("atum-59621:2256356")) + //Biomes O' Plenty 2.1.0.2308 compile(deobfCurse("biomesoplenty-220318:2499612")) diff --git a/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/atum/AtumChunkProviderMixin.java b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/atum/AtumChunkProviderMixin.java new file mode 100644 index 0000000..0529601 --- /dev/null +++ b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/atum/AtumChunkProviderMixin.java @@ -0,0 +1,28 @@ +package com.falsepattern.endlessids.mixin.mixins.common.atum; + +import com.falsepattern.endlessids.mixin.helpers.BiomePatchHelper; +import com.teammetallurgy.atum.world.AtumChunkProvider; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import net.minecraft.world.biome.BiomeGenBase; +import net.minecraft.world.chunk.Chunk; + +@Mixin(value = AtumChunkProvider.class, + remap = false) +public abstract class AtumChunkProviderMixin { + @Shadow + private BiomeGenBase[] biomesForGeneration; + + @Redirect(method = "provideChunk", + at = @At(value = "INVOKE", + target = "Lnet/minecraft/world/chunk/Chunk;getBiomeArray()[B", + remap = true), + remap = true, + require = 1) + private byte[] setBiomesTweaked(Chunk chunk) { + return BiomePatchHelper.getBiomeArrayTweaked(chunk, biomesForGeneration); + } +} 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 98a133b..8500b2e 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,9 @@ public enum Mixin implements IMixin { AIDCEntitiesManagerMixin(Side.COMMON, require(TargetedMod.ANTIIDCONFLICT), "antiidconflict.EntitiesManagerMixin"), AIDCPotionsManagerMixin(Side.COMMON, require(TargetedMod.ANTIIDCONFLICT), "antiidconflict.PotionsManagerMixin"), //endregion AntiIDConflict->common + //region Atum->common + AtumChunkProviderMixin(Side.COMMON, require(TargetedMod.ATUM), "atum.AtumChunkProviderMixin"), + //endregion Atum->common //region BoP->common BOPBiomeManagerMixin(Side.COMMON, require(TargetedMod.BOP), "bop.BOPBiomeManagerMixin"), ChunkProviderBOPEndMixin(Side.COMMON, require(TargetedMod.BOP), "bop.ChunkProviderBOPEndMixin"), 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 c355780..61f82ba 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java @@ -14,6 +14,7 @@ public enum TargetedMod implements ITargetedMod { ATG("Alternate Terrain Generation", true, startsWith("atg")), ANTIQUEATLAS("Antique Atlas", true, startsWith("antiqueatlas")), ANTIIDCONFLICT("Anti ID Conflict", true, startsWith("antiidconflict")), + ATUM("Atum", true, startsWith("atum-")), BOP("Biomes O' Plenty", true, startsWith("biomesoplenty-")), BIOMEWAND("Biome Wand", true, startsWith("1.7.10-biome-wand-").or(startsWith("biome-wand"))), COFHLIB("CoFH Lib", true, startsWith("cofhlib-")),