diff --git a/fabric-resource-loader-v0/src/main/java/net/fabricmc/fabric/mixin/resource/loader/ResourcePackManagerMixin.java b/fabric-resource-loader-v0/src/main/java/net/fabricmc/fabric/mixin/resource/loader/ResourcePackManagerMixin.java index 181dc05f3..f6a0bd59e 100644 --- a/fabric-resource-loader-v0/src/main/java/net/fabricmc/fabric/mixin/resource/loader/ResourcePackManagerMixin.java +++ b/fabric-resource-loader-v0/src/main/java/net/fabricmc/fabric/mixin/resource/loader/ResourcePackManagerMixin.java @@ -16,7 +16,7 @@ package net.fabricmc.fabric.mixin.resource.loader; -import java.util.HashSet; +import java.util.LinkedHashSet; import java.util.Set; import org.spongepowered.asm.mixin.Final; @@ -45,7 +45,8 @@ public abstract class ResourcePackManagerMixin<T extends ResourcePackProfile> { @Inject(method = "<init>", at = @At("RETURN")) public void construct(ResourcePackProvider[] resourcePackProviders, CallbackInfo info) { - providers = new HashSet<>(providers); + // Use a LinkedHashSet to preserve ordering + providers = new LinkedHashSet<>(providers); // Search resource pack providers to find any server-related pack provider. boolean shouldAddServerProvider = false;