Skip to content

Commit 47621bc

Browse files
committed
bukkit/paper : Fix ItemStackPredicateArgument reflection
1 parent 6c23f7a commit 47621bc

1 file changed

Lines changed: 15 additions & 14 deletions

File tree

cloud-minecraft/cloud-bukkit/src/main/java/cloud/commandframework/bukkit/parsers/ItemStackPredicateArgument.java

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -147,24 +147,25 @@ public static final class Parser<C> implements ArgumentParser<C, ItemStackPredic
147147
CraftBukkitReflection.needOBCClass("inventory.CraftItemStack");
148148
private static final Class<?> ARGUMENT_ITEM_PREDICATE_CLASS =
149149
MinecraftArgumentTypes.getClassByKey(NamespacedKey.minecraft("item_predicate"));
150-
private static final Class<?> ARGUMENT_ITEM_PREDICATE_RESULT_CLASS = CraftBukkitReflection.firstNonNullOrThrow(
151-
() -> "Couldn't find ItemPredicateArgument$Result class",
150+
private static final Class<?> ARGUMENT_ITEM_PREDICATE_RESULT_CLASS = CraftBukkitReflection.firstNonNullOrNull(
152151
CraftBukkitReflection.findNMSClass("ArgumentItemPredicate$b"),
153152
CraftBukkitReflection.findMCClass("commands.arguments.item.ArgumentItemPredicate$b"),
154153
CraftBukkitReflection.findMCClass("commands.arguments.item.ItemPredicateArgument$Result")
155154
);
156-
private static final @Nullable Method CREATE_PREDICATE_METHOD = CraftBukkitReflection.firstNonNullOrNull(
157-
CraftBukkitReflection.findMethod(
158-
ARGUMENT_ITEM_PREDICATE_RESULT_CLASS,
159-
"create",
160-
com.mojang.brigadier.context.CommandContext.class
161-
),
162-
CraftBukkitReflection.findMethod(
163-
ARGUMENT_ITEM_PREDICATE_RESULT_CLASS,
164-
"a",
165-
com.mojang.brigadier.context.CommandContext.class
166-
)
167-
);
155+
private static final @Nullable Method CREATE_PREDICATE_METHOD = ARGUMENT_ITEM_PREDICATE_RESULT_CLASS == null
156+
? null
157+
: CraftBukkitReflection.firstNonNullOrNull(
158+
CraftBukkitReflection.findMethod(
159+
ARGUMENT_ITEM_PREDICATE_RESULT_CLASS,
160+
"create",
161+
com.mojang.brigadier.context.CommandContext.class
162+
),
163+
CraftBukkitReflection.findMethod(
164+
ARGUMENT_ITEM_PREDICATE_RESULT_CLASS,
165+
"a",
166+
com.mojang.brigadier.context.CommandContext.class
167+
)
168+
);
168169
private static final Method AS_NMS_COPY_METHOD =
169170
CraftBukkitReflection.needMethod(CRAFT_ITEM_STACK_CLASS, "asNMSCopy", ItemStack.class);
170171

0 commit comments

Comments
 (0)