diff --git a/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/rwg/ChunkGeneratorRealisticMixin.java b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/rwg/ChunkGeneratorRealisticMixin.java new file mode 100644 index 0000000..a85cb71 --- /dev/null +++ b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/rwg/ChunkGeneratorRealisticMixin.java @@ -0,0 +1,29 @@ +package com.falsepattern.endlessids.mixin.mixins.common.rwg; + +import com.falsepattern.endlessids.mixin.helpers.BiomePatchHelper; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Pseudo; +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; +import net.minecraft.world.chunk.IChunkProvider; + +@Pseudo +@Mixin(targets = "rwg.world.ChunkGeneratorRealistic", + remap = false) +public abstract class ChunkGeneratorRealisticMixin implements IChunkProvider { + @Shadow + private BiomeGenBase[] baseBiomesList; + + @SuppressWarnings("UnresolvedMixinReference") + @Redirect(method = "func_73154_d", + at = @At(value = "INVOKE", + target = "Lnet/minecraft/world/chunk/Chunk;func_76605_m()[B"), + require = 1) + private byte[] setBiomesTweaked(Chunk chunk) { + return BiomePatchHelper.getBiomeArrayTweaked(chunk, baseBiomesList); + } +} 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 fe9cdc5..00f2737 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java @@ -182,6 +182,9 @@ public enum Mixin implements IMixin { RTGLandscapeGeneratorMixin(Side.COMMON, require(TargetedMod.RTG), "rtg.LandscapeGeneratorMixin"), RTGRealisticBiomeBaseMixin(Side.COMMON, require(TargetedMod.RTG), "rtg.RealisticBiomeBaseMixin"), //endregion RTG->common + //region RWG->common + RWGChunkGeneratorRealisticMixin(Side.COMMON, require(TargetedMod.RWG), "rwg.ChunkGeneratorRealisticMixin"), + //endregion RWG->common //region Thaumcraft->common ThaumcraftUtilsMixin(Side.COMMON, require(TargetedMod.THAUMCRAFT), "thaumcraft.UtilsMixin"), //endregion Thaumcraft->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 7940d88..eb48f3c 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java @@ -39,6 +39,7 @@ public enum TargetedMod implements ITargetedMod { NOMADICTENTS("Nomadic Tents", true, startsWith("nomadictents")), RANDOMTHINGS("Random Things", true, startsWith("randomthings-")), RTG("Realistic Terrain Generation", true, startsWith("rtg-")), + RWG("Realistic World Gen", true, startsWith("rwg-")), THAUMCRAFT("Thaumcraft", true, startsWith("thaumcraft")), TROPICRAFT("Tropicraft", true, startsWith("tropicraft-")), TWILIGHTFOREST("Twilight Forest", true, startsWith("twilightforest")),