From 67285d4f4af2a16b8c29a76accd2a2b9f249f5c9 Mon Sep 17 00:00:00 2001 From: RaphiMC <50594595+RaphiMC@users.noreply.github.com> Date: Sun, 26 Nov 2023 21:30:42 +0100 Subject: [PATCH] Prevent FabricAPI from breaking the clientside fixes --- .../viafabricplus/fixes/ClientsideFixes.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/de/florianmichael/viafabricplus/fixes/ClientsideFixes.java b/src/main/java/de/florianmichael/viafabricplus/fixes/ClientsideFixes.java index 6fffdcf8..a123017b 100644 --- a/src/main/java/de/florianmichael/viafabricplus/fixes/ClientsideFixes.java +++ b/src/main/java/de/florianmichael/viafabricplus/fixes/ClientsideFixes.java @@ -25,13 +25,16 @@ import de.florianmichael.viafabricplus.event.PostGameLoadCallback; import de.florianmichael.viafabricplus.fixes.classic.CustomClassicProtocolExtensions; import de.florianmichael.viafabricplus.fixes.classic.screen.ClassicItemSelectionScreen; import de.florianmichael.viafabricplus.injection.ViaFabricPlusMixinPlugin; +import net.lenni0451.reflect.stream.RStream; import net.minecraft.client.MinecraftClient; import net.minecraft.client.font.FontStorage; import net.minecraft.network.PacketByteBuf; import net.raphimc.vialegacy.protocols.classic.protocolc0_28_30toc0_28_30cpe.data.ClassicProtocolExtension; import net.raphimc.vialoader.util.VersionEnum; +import java.util.Collections; import java.util.Map; +import java.util.Set; import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Consumer; @@ -96,6 +99,12 @@ public class ClientsideFixes { currentChatLength = Short.MAX_VALUE * 2; } }); + + // Force unload some FabricAPI mixins because FabricAPI overwrites some of the elytra code + final Set loadedMixins = RStream.of("org.spongepowered.asm.mixin.transformer.MixinConfig").fields().by("globalMixinList").get(); + Collections.addAll(loadedMixins, "net.fabricmc.fabric.mixin.client.entity.event.elytra.ClientPlayerEntityMixin", + "net.fabricmc.fabric.mixin.entity.event.elytra.LivingEntityMixin", + "net.fabricmc.fabric.mixin.entity.event.elytra.PlayerEntityMixin"); } /**