From 22c2a4abcc08f4069fe974737665e919112aa33a Mon Sep 17 00:00:00 2001 From: Dan Mulloy Date: Thu, 26 Dec 2019 11:39:23 -0500 Subject: [PATCH] Fix compatibility with CraftBukkit Still recommend Spigot, for what it's worth --- .../comphenix/protocol/reflect/cloning/BukkitCloner.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/comphenix/protocol/reflect/cloning/BukkitCloner.java b/src/main/java/com/comphenix/protocol/reflect/cloning/BukkitCloner.java index cc1a304c..e7cd79bc 100644 --- a/src/main/java/com/comphenix/protocol/reflect/cloning/BukkitCloner.java +++ b/src/main/java/com/comphenix/protocol/reflect/cloning/BukkitCloner.java @@ -50,6 +50,7 @@ public class BukkitCloner implements Cloner { } catch (RuntimeException ignored) { } } + @SuppressWarnings({"unchecked", "rawtypes"}) private static void fromConverter(Supplier> getClass, EquivalentConverter converter) { try { Class nmsClass = getClass.get(); @@ -80,9 +81,12 @@ public class BukkitCloner implements Cloner { fromManual(MinecraftReflection::getNonNullListClass, source -> nonNullListCloner().clone(source)); fromWrapper(MinecraftReflection::getNBTBaseClass, NbtFactory::fromNMS); fromWrapper(MinecraftReflection::getIChatBaseComponentClass, WrappedChatComponent::fromHandle); - fromManual(ComponentConverter::getBaseComponentArrayClass, source -> - ComponentConverter.clone((BaseComponent[]) source)); fromWrapper(WrappedVillagerData::getNmsClass, WrappedVillagerData::fromHandle); + + try { + fromManual(ComponentConverter::getBaseComponentArrayClass, source -> + ComponentConverter.clone((BaseComponent[]) source)); + } catch (Throwable ignored) { } } private Function findCloner(Class type) {