aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch')
-rw-r--r--patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch b/patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch
new file mode 100644
index 0000000000..238466b430
--- /dev/null
+++ b/patches/server/0479-Create-HoverEvent-from-ItemStack-Entity.patch
@@ -0,0 +1,51 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: ysl3000 <[email protected]>
+Date: Mon, 6 Jul 2020 22:18:04 +0200
+Subject: [PATCH] Create HoverEvent from ItemStack Entity
+
+
+diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+index f05923a6292f02a01791627abce2770daff24b6a..f3a6a4d97b5be2e75c438a6f7010a8f588afe86c 100644
+--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+@@ -405,5 +405,40 @@ public final class CraftItemFactory implements ItemFactory {
+
+ return nms != null ? net.minecraft.locale.Language.getInstance().getOrDefault(nms.getItem().getDescriptionId(nms)) : null;
+ }
++
++ @Override
++ public net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(ItemStack itemStack) {
++ net.md_5.bungee.api.chat.ItemTag itemTag = net.md_5.bungee.api.chat.ItemTag.ofNbt(CraftItemStack.asNMSCopy(itemStack).getOrCreateTag().toString());
++ return new net.md_5.bungee.api.chat.hover.content.Item(
++ itemStack.getType().getKey().toString(),
++ itemStack.getAmount(),
++ itemTag);
++ }
++
++ @Override
++ public net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(org.bukkit.entity.Entity entity) {
++ return hoverContentOf(entity, org.apache.commons.lang3.StringUtils.isBlank(entity.getCustomName()) ? null : new net.md_5.bungee.api.chat.TextComponent(entity.getCustomName()));
++ }
++
++ @Override
++ public net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(org.bukkit.entity.Entity entity, String customName) {
++ return hoverContentOf(entity, org.apache.commons.lang3.StringUtils.isBlank(customName) ? null : new net.md_5.bungee.api.chat.TextComponent(customName));
++ }
++
++ @Override
++ public net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(org.bukkit.entity.Entity entity, net.md_5.bungee.api.chat.BaseComponent customName) {
++ return new net.md_5.bungee.api.chat.hover.content.Entity(
++ entity.getType().getKey().toString(),
++ entity.getUniqueId().toString(),
++ customName);
++ }
++
++ @Override
++ public net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(org.bukkit.entity.Entity entity, net.md_5.bungee.api.chat.BaseComponent[] customName) {
++ return new net.md_5.bungee.api.chat.hover.content.Entity(
++ entity.getType().getKey().toString(),
++ entity.getUniqueId().toString(),
++ new net.md_5.bungee.api.chat.TextComponent(customName));
++ }
+ // Paper end
+ }