diff --git a/src/main/java/org/violetmoon/quark/mixin/mixins/NetherFortressPiecesMixin.java b/src/main/java/org/violetmoon/quark/mixin/mixins/NetherFortressPiecesMixin.java new file mode 100644 index 0000000000..06264648ca --- /dev/null +++ b/src/main/java/org/violetmoon/quark/mixin/mixins/NetherFortressPiecesMixin.java @@ -0,0 +1,22 @@ +package org.violetmoon.quark.mixin.mixins; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import net.minecraft.world.level.WorldGenLevel; +import net.minecraft.world.level.block.FenceBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import net.minecraft.world.level.levelgen.structure.structures.NetherFortressPieces; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(NetherFortressPieces.class) +public class NetherFortressPiecesMixin { + @Mixin(NetherFortressPieces.CastleEntrance.class) + public static class CastleEntranceMixin { + @WrapOperation(method = "postProcess", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleEntrance;generateBox(Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V", ordinal = 11)) + private void quark$fixFenceConnectionInPostProcess(NetherFortressPieces.CastleEntrance instance, WorldGenLevel pLevel, BoundingBox pBox, int pXMin, int pYMin, int pZMin, int pXMax, int pYMax, int pZMax, BlockState pBoundaryBlockState, BlockState pInsideBlockState, boolean pExistingOnly, Operation original) { + instance.generateBox(pLevel, pBox, pXMin, pYMin, pZMin, pXMax, pYMax, pZMax, pBoundaryBlockState.setValue(FenceBlock.WEST, Boolean.TRUE).setValue(FenceBlock.EAST, Boolean.TRUE), pInsideBlockState, pExistingOnly); + } + } +} diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index 94b50b579c..56b94f8a43 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -15,7 +15,6 @@ public net.minecraft.client.renderer.entity.layers.HumanoidArmorLayer m_117078_( public net.minecraft.util.random.Weight (I)V # public net.minecraft.world.entity.LivingEntity f_20899_ # isJumping public net.minecraft.world.entity.LivingEntity f_20922_ # ticksSinceLastSwing -public net.minecraft.world.entity.ai.goal.TemptGoal f_25924_ # creature public net.minecraft.world.entity.ai.goal.TemptGoal f_25935_ # items public net.minecraft.world.entity.ai.gossip.GossipContainer f_26156_ # uuid_gossips_mapping public net.minecraft.world.entity.ai.gossip.GossipContainer$EntityGossips @@ -39,12 +38,9 @@ public net.minecraft.world.level.block.entity.SignBlockEntity f_59721_ # isEdita public-f net.minecraft.world.level.levelgen.StructureSettings f_189361_ #configuredStructures public-f net.minecraft.world.level.levelgen.StructureSettings f_64580_ # DEFAULTS public-f net.minecraft.world.level.levelgen.StructureSettings f_64582_ # structureConfig -public-f net.minecraft.world.level.storage.loot.LootPool f_79023_ # entries public net.minecraft.world.level.block.VineBlock m_57887_(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z # canSupportAtFace public net.minecraft.data.worldgen.biome.OverworldBiomes m_194861_(Lnet/minecraft/world/level/biome/Biome$Precipitation;Lnet/minecraft/world/level/biome/Biome$BiomeCategory;FFLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; # biome public net.minecraft.data.worldgen.biome.OverworldBiomes m_194851_(Lnet/minecraft/world/level/biome/Biome$Precipitation;Lnet/minecraft/world/level/biome/Biome$BiomeCategory;FFIILnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; # biome -public net.minecraft.data.worldgen.biome.OverworldBiomes m_194869_(Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V # globalOverworldGeneration -public net.minecraft.data.worldgen.placement.OrePlacements m_195343_(ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; # commonOrePlacement public-f net.minecraft.world.level.block.entity.BlockEntityType f_58915_ # validBlocks public-f net.minecraft.world.level.levelgen.feature.configurations.TreeConfiguration f_68185_ # trunkProvider public net.minecraft.client.resources.model.ModelBakery f_119243_ # resourceManager @@ -65,9 +61,9 @@ public net.minecraft.world.entity.animal.TropicalFish m_30064_(I)I # getPatternV public net.minecraft.world.item.context.BlockPlaceContext f_43628_ # replaceClicked public net.minecraft.client.gui.Gui f_279580_ # GUI_ICONS_LOCATION public net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase f_283893_ # mapColor -public net.minecraft.data.worldgen.biome.OverworldBiomes m_264144_(ZFFLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; # biome public net.minecraft.core.RegistrySetBuilder$BuildState public net.minecraft.client.resources.model.ModelManager$ReloadState public net.minecraft.world.entity.npc.VillagerTrades$ItemsForEmeralds public net.minecraft.world.entity.npc.VillagerTrades$ItemsAndEmeraldsToItems -public net.minecraft.world.entity.npc.VillagerTrades$EmeraldForItems \ No newline at end of file +public net.minecraft.world.entity.npc.VillagerTrades$EmeraldForItems +public net.minecraft.world.level.levelgen.structure.StructurePiece m_73441_(Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V # generateBox \ No newline at end of file diff --git a/src/main/resources/quark.mixins.json b/src/main/resources/quark.mixins.json index 9e983751d5..dbdd224fb3 100644 --- a/src/main/resources/quark.mixins.json +++ b/src/main/resources/quark.mixins.json @@ -49,6 +49,8 @@ "MerchantMenuMixin", "MerchantOfferMixin", "MerchantOffersMixin", + "NetherFortressPiecesMixin", + "NetherFortressPiecesMixin$CastleEntranceMixin", "OverworldBiomeBuilderMixin", "PigMixin", "PistonBaseBlockMixin",