From 301eb12f9f254a8d532dce89c12116401ca5537b Mon Sep 17 00:00:00 2001 From: mbax Date: Sat, 13 Jun 2026 12:51:52 -0400 Subject: [PATCH] Handle Paper 26.2 shift in NMS->CraftItemStack. Now also looks for the asCraftMirror method which does the same thing. --- .../org/incendo/cloud/bukkit/parser/ItemStackParser.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/cloud-bukkit/src/main/java/org/incendo/cloud/bukkit/parser/ItemStackParser.java b/cloud-bukkit/src/main/java/org/incendo/cloud/bukkit/parser/ItemStackParser.java index 9c530ae1..4a0683fe 100644 --- a/cloud-bukkit/src/main/java/org/incendo/cloud/bukkit/parser/ItemStackParser.java +++ b/cloud-bukkit/src/main/java/org/incendo/cloud/bukkit/parser/ItemStackParser.java @@ -161,8 +161,11 @@ private static final class ModernParser implements ArgumentParser.FutureArgum CraftBukkitReflection.findMethod(ITEM_INPUT_CLASS, "createItemStack", int.class, boolean.class), CraftBukkitReflection.findMethod(ITEM_INPUT_CLASS, "createItemStack", int.class) ); - private static final Method AS_BUKKIT_COPY_METHOD = CraftBukkitReflection - .needMethod(CRAFT_ITEM_STACK_CLASS, "asBukkitCopy", NMS_ITEM_STACK_CLASS); + private static final Method AS_BUKKIT_COPY_METHOD = CraftBukkitReflection.firstNonNullOrThrow( + () -> "Couldn't find asBukkitCopy or asCraftMirror method on CraftItemStack", + CraftBukkitReflection.findMethod(CRAFT_ITEM_STACK_CLASS, "asBukkitCopy", NMS_ITEM_STACK_CLASS), + CraftBukkitReflection.findMethod(CRAFT_ITEM_STACK_CLASS, "asCraftMirror", NMS_ITEM_STACK_CLASS) + ); private static final Field ITEM_FIELD = CraftBukkitReflection.firstNonNullOrThrow( () -> "Couldn't find item field on ItemInput", CraftBukkitReflection.findField(ITEM_INPUT_CLASS, "b"),