bukkit/paper : Fix ItemStackPredicateArgument reflection

This commit is contained in:
Jason Penilla 2022-08-18 14:46:26 -07:00 committed by Jason
parent 08242519dd
commit abf662a51d

View file

@ -147,13 +147,14 @@ public final class ItemStackPredicateArgument<C> extends CommandArgument<C, Item
CraftBukkitReflection.needOBCClass("inventory.CraftItemStack"); CraftBukkitReflection.needOBCClass("inventory.CraftItemStack");
private static final Class<?> ARGUMENT_ITEM_PREDICATE_CLASS = private static final Class<?> ARGUMENT_ITEM_PREDICATE_CLASS =
MinecraftArgumentTypes.getClassByKey(NamespacedKey.minecraft("item_predicate")); MinecraftArgumentTypes.getClassByKey(NamespacedKey.minecraft("item_predicate"));
private static final Class<?> ARGUMENT_ITEM_PREDICATE_RESULT_CLASS = CraftBukkitReflection.firstNonNullOrThrow( private static final Class<?> ARGUMENT_ITEM_PREDICATE_RESULT_CLASS = CraftBukkitReflection.firstNonNullOrNull(
() -> "Couldn't find ItemPredicateArgument$Result class",
CraftBukkitReflection.findNMSClass("ArgumentItemPredicate$b"), CraftBukkitReflection.findNMSClass("ArgumentItemPredicate$b"),
CraftBukkitReflection.findMCClass("commands.arguments.item.ArgumentItemPredicate$b"), CraftBukkitReflection.findMCClass("commands.arguments.item.ArgumentItemPredicate$b"),
CraftBukkitReflection.findMCClass("commands.arguments.item.ItemPredicateArgument$Result") CraftBukkitReflection.findMCClass("commands.arguments.item.ItemPredicateArgument$Result")
); );
private static final @Nullable Method CREATE_PREDICATE_METHOD = CraftBukkitReflection.firstNonNullOrNull( private static final @Nullable Method CREATE_PREDICATE_METHOD = ARGUMENT_ITEM_PREDICATE_RESULT_CLASS == null
? null
: CraftBukkitReflection.firstNonNullOrNull(
CraftBukkitReflection.findMethod( CraftBukkitReflection.findMethod(
ARGUMENT_ITEM_PREDICATE_RESULT_CLASS, ARGUMENT_ITEM_PREDICATE_RESULT_CLASS,
"create", "create",