Inspired by 2020's April Fools' 20w14infinite Snapshot, this mod brings endless randomly generated dimensions into Minecraft.
1package net.lerariemann.infinity.mixin.fixes;
2
3import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
4import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
5import com.llamalad7.mixinextras.sugar.Local;
6import net.minecraft.core.BlockPos;
7import net.minecraft.core.Holder;
8import net.minecraft.world.level.WorldGenLevel;
9import net.minecraft.world.level.biome.Biome;
10import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext;
11import net.minecraft.world.level.levelgen.feature.LakeFeature;
12import org.spongepowered.asm.mixin.Mixin;
13import org.spongepowered.asm.mixin.injection.At;
14
15/** Mojang goofed their lakes into deprecation, i'm fixing :D */
16@SuppressWarnings("deprecation")
17@Mixin(LakeFeature.class)
18public class LakeFeatureMixin {
19 @WrapOperation(method="place(Lnet/minecraft/world/level/levelgen/feature/FeaturePlaceContext;)Z", at = @At(value = "INVOKE",
20 target = "Lnet/minecraft/world/level/WorldGenLevel;getBiome(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder;"))
21 Holder<Biome> fixVanillaLakeCrash(WorldGenLevel instance, BlockPos blockPos, Operation<Holder<Biome>> original,
22 @Local(argsOnly = true) FeaturePlaceContext<LakeFeature.Configuration> context) {
23 return context.level().getBiome(context.origin());
24 }
25}