diff --git a/src/main/java/com/extendedae_plus/mixin/ae2/network/PatternAccessTerminalPacketMixin.java b/src/main/java/com/extendedae_plus/mixin/ae2/network/PatternAccessTerminalPacketMixin.java new file mode 100644 index 0000000..bc5333e --- /dev/null +++ b/src/main/java/com/extendedae_plus/mixin/ae2/network/PatternAccessTerminalPacketMixin.java @@ -0,0 +1,24 @@ +package com.extendedae_plus.mixin.ae2.network; + +import appeng.core.network.clientbound.PatternAccessTerminalPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; + +@Mixin(PatternAccessTerminalPacket.class) +public abstract class PatternAccessTerminalPacketMixin { + + private static final int EAP_MAX_SYNCED_SLOTS = 4096; + + @ModifyArg( + method = "", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/network/codec/ByteBufCodecs;map(Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;I)Lnet/minecraft/network/codec/StreamCodec;" + ), + index = 3 + ) + private static int eap$expandPatternAccessSlotsLimit(int originalLimit) { + return Math.max(originalLimit, EAP_MAX_SYNCED_SLOTS); + } +} diff --git a/src/main/resources/extendedae_plus.mixins.json b/src/main/resources/extendedae_plus.mixins.json index e5935c8..a36ae72 100644 --- a/src/main/resources/extendedae_plus.mixins.json +++ b/src/main/resources/extendedae_plus.mixins.json @@ -49,6 +49,7 @@ "ae2.menu.PatternProviderMenuAdvancedMixin", "ae2.menu.PatternProviderMenuDoublingMixin", "ae2.menu.PatternProviderMenuUpgradesMixin", + "ae2.network.PatternAccessTerminalPacketMixin", "ae2.parts.automation.IOBusPartChannelCardMixin", "ae2.parts.storagebus.StorageBusPartChannelCardMixin", "ae2WTlib.ContainerUWirelessExPatternTerminalMixin",