From f14d22b2648f140a86ae09c2dea5ac7f6d4dd361 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zo=C3=AB=20Gidiere?= Date: Tue, 3 Jun 2025 13:59:11 -0600 Subject: [PATCH] Continue fabric 1.21.5 WIP --- .../dfsek/terra/mod/config/VanillaBiomeProperties.java | 6 ++++-- .../dfsek/terra/mod/config/VillagerTypeTemplate.java | 10 ++++++---- .../terra/mod/mixin/access/VillagerTypeAccessor.java | 2 +- .../implementations/terra/chunk/WorldChunkMixin.java | 4 ++-- .../dfsek/terra/lifecycle/util/LifecycleBiomeUtil.java | 2 +- 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VanillaBiomeProperties.java b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VanillaBiomeProperties.java index 68f059335..db0d1139a 100644 --- a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VanillaBiomeProperties.java +++ b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VanillaBiomeProperties.java @@ -3,6 +3,7 @@ package com.dfsek.terra.mod.config; import com.dfsek.tectonic.api.config.template.ConfigTemplate; import com.dfsek.tectonic.api.config.template.annotations.Default; import com.dfsek.tectonic.api.config.template.annotations.Value; +import net.minecraft.registry.RegistryKey; import net.minecraft.sound.BiomeAdditionsSound; import net.minecraft.sound.BiomeMoodSound; import net.minecraft.sound.MusicSound; @@ -87,7 +88,8 @@ public class VanillaBiomeProperties implements ConfigTemplate, Properties { @Value("villager-type") @Default - private VillagerType villagerType = null; + private + RegistryKey villagerType = null; public Integer getGrassColor() { return grassColor; @@ -157,7 +159,7 @@ public class VanillaBiomeProperties implements ConfigTemplate, Properties { return spawnSettings; } - public VillagerType getVillagerType() { + public RegistryKey getVillagerType() { return villagerType; } } diff --git a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VillagerTypeTemplate.java b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VillagerTypeTemplate.java index b4b95416e..66a8951f2 100644 --- a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VillagerTypeTemplate.java +++ b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/config/VillagerTypeTemplate.java @@ -4,17 +4,19 @@ import com.dfsek.tectonic.api.config.template.annotations.Default; import com.dfsek.tectonic.api.config.template.annotations.Value; import com.dfsek.tectonic.api.config.template.object.ObjectTemplate; import net.minecraft.registry.Registries; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; import net.minecraft.util.Identifier; import net.minecraft.village.VillagerType; -public class VillagerTypeTemplate implements ObjectTemplate { +public class VillagerTypeTemplate implements ObjectTemplate> { @Value("id") @Default - private Identifier id = null; + private String id = null; @Override - public VillagerType get() { - return Registries.VILLAGER_TYPE.getEntry(id).orElseThrow().value(); + public RegistryKey get() { + return RegistryKey.of(RegistryKeys.VILLAGER_TYPE, Identifier.ofVanilla(id)); } } diff --git a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/access/VillagerTypeAccessor.java b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/access/VillagerTypeAccessor.java index 68ae33e35..652512957 100644 --- a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/access/VillagerTypeAccessor.java +++ b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/access/VillagerTypeAccessor.java @@ -12,7 +12,7 @@ import java.util.Map; @Mixin(VillagerType.class) public interface VillagerTypeAccessor { @Accessor("BIOME_TO_TYPE") - static Map, VillagerType> getBiomeTypeToIdMap() { + static Map, RegistryKey> getBiomeTypeToIdMap() { throw new AssertionError("Untransformed Accessor!"); } } diff --git a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/implementations/terra/chunk/WorldChunkMixin.java b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/implementations/terra/chunk/WorldChunkMixin.java index 41ff8370e..53317b7f5 100644 --- a/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/implementations/terra/chunk/WorldChunkMixin.java +++ b/platforms/mixin-common/src/main/java/com/dfsek/terra/mod/mixin/implementations/terra/chunk/WorldChunkMixin.java @@ -47,11 +47,11 @@ public abstract class WorldChunkMixin { @Shadow @Nullable - public abstract net.minecraft.block.BlockState setBlockState(BlockPos pos, net.minecraft.block.BlockState state, boolean moved); + public abstract net.minecraft.block.BlockState setBlockState(BlockPos pos, net.minecraft.block.BlockState state, int flags); public void terra$setBlock(int x, int y, int z, BlockState data, boolean physics) { BlockPos blockPos = new BlockPos(x, y, z); - setBlockState(blockPos, (net.minecraft.block.BlockState) data, false); + setBlockState(blockPos, (net.minecraft.block.BlockState) data, 0); if(physics) { net.minecraft.block.BlockState state = ((net.minecraft.block.BlockState) data); if(state.isLiquid()) { diff --git a/platforms/mixin-lifecycle/src/main/java/com/dfsek/terra/lifecycle/util/LifecycleBiomeUtil.java b/platforms/mixin-lifecycle/src/main/java/com/dfsek/terra/lifecycle/util/LifecycleBiomeUtil.java index c86e71165..b286697a3 100644 --- a/platforms/mixin-lifecycle/src/main/java/com/dfsek/terra/lifecycle/util/LifecycleBiomeUtil.java +++ b/platforms/mixin-lifecycle/src/main/java/com/dfsek/terra/lifecycle/util/LifecycleBiomeUtil.java @@ -72,7 +72,7 @@ public final class LifecycleBiomeUtil { minecraftBiome)); } - Map, VillagerType> villagerMap = VillagerTypeAccessor.getBiomeTypeToIdMap(); + Map, RegistryKey> villagerMap = VillagerTypeAccessor.getBiomeTypeToIdMap(); villagerMap.put(RegistryKey.of(RegistryKeys.BIOME, identifier), Objects.requireNonNullElse(vanillaBiomeProperties.getVillagerType(),