mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-07 07:32:03 -07:00
The underlying components seem to still be appended in a different order compared to vanilla but that is fine as the order does not really matter in an ItemStack's component map. However, 'hidden_components' seem to have defined order that must be respected. We use a hashset and keep the fixing order that is on the vanilla datafixer.
25 lines
1.4 KiB
Diff
25 lines
1.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
|
|
Date: Sat, 7 Jun 2025 15:05:05 -0400
|
|
Subject: [PATCH] DataConverter Fixes
|
|
|
|
|
|
diff --git a/ca/spottedleaf/dataconverter/minecraft/versions/V4307.java b/ca/spottedleaf/dataconverter/minecraft/versions/V4307.java
|
|
index d2877c20f389d0131e1dd208b464f590671e5d82..27bdc70d861ca39487ad16cb3afb89d604b462c8 100644
|
|
--- a/ca/spottedleaf/dataconverter/minecraft/versions/V4307.java
|
|
+++ b/ca/spottedleaf/dataconverter/minecraft/versions/V4307.java
|
|
@@ -87,10 +87,10 @@ public final class V4307 {
|
|
|
|
@Override
|
|
public MapType convert(final MapType root, final long sourceVersion, final long toVersion) {
|
|
- final Set<String> hiddenComponents = new LinkedHashSet<>();
|
|
-
|
|
- unwrapBlockPredicates(root, "minecraft:can_break", hiddenComponents);
|
|
+ // Don't use a linked hash set, and ensure that it is added in the same (undefined) order as the vanilla datafixer
|
|
+ final Set<String> hiddenComponents = new java.util.HashSet<>();
|
|
unwrapBlockPredicates(root, "minecraft:can_place_on", hiddenComponents);
|
|
+ unwrapBlockPredicates(root, "minecraft:can_break", hiddenComponents);
|
|
|
|
updateComponent(root, "minecraft:trim", hiddenComponents);
|
|
updateComponent(root, "minecraft:unbreakable", hiddenComponents);
|