aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch')
-rw-r--r--patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch52
1 files changed, 52 insertions, 0 deletions
diff --git a/patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch b/patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch
new file mode 100644
index 0000000000..b2004f6a12
--- /dev/null
+++ b/patches/server/0454-Create-HoverEvent-from-ItemStack-Entity.patch
@@ -0,0 +1,52 @@
+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 b6f5e63c7e7e45dd3eb15bad5c6bee9d5417311e..866106d0d773e407a0cdd8614818cba4ab910040 100644
+--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+@@ -533,4 +533,41 @@ public final class CraftItemFactory implements ItemFactory {
+ return nms != null ? net.minecraft.locale.Language.getInstance().getOrDefault(nms.getItem().getDescriptionId(nms)) : null;
+ }
+ // Paper end - add getI18NDisplayName
++
++ // Paper start - bungee hover events
++ @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 - bungee hover events
+ }