diff --git a/README.MD b/README.MD index e2e8844..20ff4e5 100644 --- a/README.MD +++ b/README.MD @@ -76,6 +76,7 @@ This mod also contains patches for the following mods: - Realistic World Generation - Thaumcraft - The Lord of the Rings Mod: Legacy +- The Mists of RioV - ThutCore/ThutMods - Tropicraft - Twilight Forest diff --git a/build.gradle.kts b/build.gradle.kts index edb48b4..5a9b07e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -197,6 +197,9 @@ dependencies { //Thaumcraft 4.2.3.5 compileOnly(deobfCurse("thaumcraft-223628:2227552")) + //The Mists of RioV 2.5.2 + compileOnly(deobfCurse("the-mists-of-riov-222477:2389797")) + //ThutCore 2.0 //Only available on dropbox compileOnly(deobf("mirror:thutcore:2.0")) diff --git a/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/biome/tmor/ChunkProviderSanctuatiteMixin.java b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/biome/tmor/ChunkProviderSanctuatiteMixin.java new file mode 100644 index 0000000..2dcb031 --- /dev/null +++ b/src/main/java/com/falsepattern/endlessids/mixin/mixins/common/biome/tmor/ChunkProviderSanctuatiteMixin.java @@ -0,0 +1,47 @@ +/* + * EndlessIDs + * + * Copyright (C) 2022-2024 FalsePattern + * All Rights Reserved + * + * The above copyright notice, this permission notice and the words "MEGA" + * shall be included in all copies or substantial portions of the Software. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + */ + +package com.falsepattern.endlessids.mixin.mixins.common.biome.tmor; + +import com.falsepattern.endlessids.mixin.helpers.BiomePatchHelper; +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 sheenrox82.RioV.src.world.chunk.ChunkProviderSanctuatite; + +import net.minecraft.world.biome.BiomeGenBase; +import net.minecraft.world.chunk.Chunk; + +@Mixin(ChunkProviderSanctuatite.class) +public abstract class ChunkProviderSanctuatiteMixin { + @Shadow(remap = false) private BiomeGenBase[] biomesForGeneration; + + @Redirect(method = "provideChunk", + at = @At(value = "INVOKE", + target = "Lnet/minecraft/world/chunk/Chunk;getBiomeArray()[B"), + require = 1) + private byte[] setBiomesTweaked(Chunk instance) { + return BiomePatchHelper.getBiomeArrayTweaked(instance, 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 c6bcedd..1017c9f 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/Mixin.java @@ -206,6 +206,9 @@ public enum Mixin implements IMixin { //region ThutCore ThutVector3Mixin(Side.COMMON, condition(() -> GeneralConfig.extendBiome).and(require(TargetedMod.THUTCORE)), "biome.thut.Vector3Mixin"), //endregion ThutCore + //region The Mists of RioV + ChunkProviderSanctuatiteMixin(Side.COMMON, condition(() -> GeneralConfig.extendBiome).and(require(TargetedMod.TMOR)), "biome.tmor.ChunkProviderSanctuatiteMixin"), + //endregion //region Tropicraft GenLayerTropiVoronoiZoomMixin(Side.COMMON, condition(() -> GeneralConfig.extendBiome).and(require(TargetedMod.TROPICRAFT)), "biome.tropicraft.GenLayerTropiVoronoiZoomMixin"), //endregion Tropicraft 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 cfb0c91..b7bff7b 100644 --- a/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java +++ b/src/main/java/com/falsepattern/endlessids/mixin/plugin/TargetedMod.java @@ -75,6 +75,7 @@ public enum TargetedMod implements ITargetedMod { RWG("Realistic World Gen", false, contains("rwg-")), THAUMCRAFT("Thaumcraft", false, contains("thaumcraft")), THUTCORE("ThutCore", false, contains("thutcore-").or(contains("thutmods-"))), + TMOR("The Mists Of RioV", false, contains("the mists of riov-").or(contains("the-mists-of-riov-"))), TROPICRAFT("Tropicraft", false, contains("tropicraft-")), TWILIGHTFOREST("Twilight Forest", false, contains("twilightforest")), UBC("Underground Biomes Constructs", false, contains("undergroundbiomesconstructs-").or(contains("undergroundbiomes-"))),