Paper/patches/api/0417-Add-titleOverride-to-InventoryOpenEvent.patch
2024-10-27 10:03:59 +01:00

53 lines
2.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Fri, 4 Mar 2022 12:45:21 -0800
Subject: [PATCH] Add titleOverride to InventoryOpenEvent
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java b/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java
index ceae092eb782698803c6c3df41267dde20ba62b2..8e2afeab4c62724148e8bb0c83fb7eec569c7a0c 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java
@@ -12,6 +12,7 @@ import org.jetbrains.annotations.NotNull;
public class InventoryOpenEvent extends InventoryEvent implements Cancellable {
private static final HandlerList handlers = new HandlerList();
private boolean cancelled;
+ private net.kyori.adventure.text.Component titleOverride; // Paper
public InventoryOpenEvent(@NotNull InventoryView transaction) {
super(transaction);
@@ -56,6 +57,33 @@ public class InventoryOpenEvent extends InventoryEvent implements Cancellable {
cancelled = cancel;
}
+ // Paper start
+ /**
+ * Gets the title override set by another event or null
+ * if not set.
+ *
+ * @return the title override or null
+ */
+ public net.kyori.adventure.text.@org.jetbrains.annotations.Nullable Component titleOverride() {
+ return this.titleOverride;
+ }
+
+ /**
+ * Sets the title override or clears the override.
+ * <p>
+ * This is only the title sent to the client in the open packet, this doesn't change
+ * the title returned by {@link InventoryView#title()}, hence "override".
+ * <p>
+ * <b>NOTE:</b> Horse inventories are a special case where setting this will
+ * have no effect. Horse inventory titles are set by the horse display name.
+ *
+ * @param titleOverride the title override or null
+ */
+ public void titleOverride(net.kyori.adventure.text.@org.jetbrains.annotations.Nullable Component titleOverride) {
+ this.titleOverride = titleOverride;
+ }
+ // Paper end
+
@NotNull
@Override
public HandlerList getHandlers() {