|
4 | 4 | import net.kyori.adventure.text.Component; |
5 | 5 | import net.kyori.adventure.text.minimessage.MiniMessage; |
6 | 6 | import org.bukkit.GameMode; |
7 | | -import org.bukkit.NamespacedKey; |
8 | 7 | import org.bukkit.entity.Player; |
9 | 8 | import org.bukkit.event.inventory.ClickType; |
10 | 9 | import org.bukkit.event.inventory.InventoryCloseEvent; |
11 | 10 | import org.bukkit.inventory.ItemStack; |
12 | | -import org.bukkit.persistence.PersistentDataType; |
13 | 11 | import org.jetbrains.annotations.ApiStatus; |
14 | 12 | import org.jspecify.annotations.Nullable; |
15 | 13 | import xyz.xenondevs.invui.Click; |
16 | 14 | import xyz.xenondevs.invui.ClickEvent; |
17 | | -import xyz.xenondevs.invui.InvUI; |
18 | 15 | import xyz.xenondevs.invui.gui.AbstractGui; |
19 | 16 | import xyz.xenondevs.invui.gui.Gui; |
20 | 17 | import xyz.xenondevs.invui.gui.SlotElement; |
@@ -46,7 +43,6 @@ public sealed abstract class AbstractWindow<M extends CustomContainerMenu> |
46 | 43 | permits AbstractMergedWindow, AbstractSplitWindow |
47 | 44 | { |
48 | 45 |
|
49 | | - private static final NamespacedKey SLOT_KEY = new NamespacedKey(InvUI.getInstance().getPlugin(), "slot"); |
50 | 46 | private static final ThreadLocal<Boolean> isInOpeningContext = ThreadLocal.withInitial(() -> false); |
51 | 47 | private static final ThreadLocal<Integer> isInCloseHandlerContext = ThreadLocal.withInitial(() -> 0); |
52 | 48 |
|
@@ -100,13 +96,6 @@ protected void update(int slot) { |
100 | 96 | SlotElement holdingElement = newPath.getLast().getHoldingElement(); |
101 | 97 | if (holdingElement != null) { |
102 | 98 | itemStack = holdingElement.getItemStack(getViewer()); |
103 | | - if (itemStack != null && holdingElement instanceof SlotElement.Item) { |
104 | | - // This makes every item unique to prevent Shift-DoubleClick "clicking" multiple items at the same time. |
105 | | - itemStack = itemStack.clone(); // clone ItemStack in order to not modify the original |
106 | | - itemStack.editMeta(meta -> |
107 | | - meta.getPersistentDataContainer().set(SLOT_KEY, PersistentDataType.BYTE, (byte) slot) |
108 | | - ); |
109 | | - } |
110 | 99 | } else { // holding element is null |
111 | 100 | // background by gui |
112 | 101 | itemStack = newPath.reversed().stream() |
|
0 commit comments