Paper 1.13.1 Update
Updated Upstream (Bukkit/CraftBukkit/Spigot) Bukkit Changes: 2dcc44dc SPIGOT-4307: Fix hacky API for banners on shields e0fc6572 SPIGOT-4309: Add "forced" display of particles efeeab2f Add index to README.md for easier navigation f502bc6f Update to Minecraft 1.13.1 CraftBukkit Changes: d0bb0a1d Fix some tests randomly failing 997d378d Fix client stall in specific teleportation scenarios b3dc2366 SPIGOT-4307: Fix hacky API for banners on shields 2a271162 SPIGOT-4301: Fix more invalid enchants 5d0d83bb SPIGOT-4309: Add "forced" display of particles a6772578 Add additional tests for CraftBlockData ce1af0c3 Update to Minecraft 1.13.1 Spigot Changes: 2440e189 Rebuild patches 4ecffced Update to Minecraft 1.13.1
This commit is contained in:
94
Spigot-API-Patches/0118-InventoryCloseEvent-Reason-API.patch
Normal file
94
Spigot-API-Patches/0118-InventoryCloseEvent-Reason-API.patch
Normal file
@@ -0,0 +1,94 @@
|
||||
From 620b05a03d9f8250536ca98235324946057337f5 Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Tue, 3 Jul 2018 21:52:52 -0400
|
||||
Subject: [PATCH] InventoryCloseEvent Reason API
|
||||
|
||||
Allows you to determine why an inventory was closed, enabling plugin developers
|
||||
to "confirm" things based on if it was player triggered close or not.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
index dd95773e2..8fe01e47e 100644
|
||||
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
@@ -137,6 +137,15 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, Permissible, Inv
|
||||
*/
|
||||
public void closeInventory();
|
||||
|
||||
+ // Paper start
|
||||
+ /**
|
||||
+ * Force-closes the currently open inventory view for this player, if any.
|
||||
+ *
|
||||
+ * @param reason why the inventory is closing
|
||||
+ */
|
||||
+ public void closeInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason reason);
|
||||
+ // Paper end
|
||||
+
|
||||
/**
|
||||
* Returns the ItemStack currently in your hand, can be empty.
|
||||
*
|
||||
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
index 19889b278..e6e45b936 100644
|
||||
--- a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
@@ -11,8 +11,58 @@ import org.bukkit.inventory.InventoryView;
|
||||
public class InventoryCloseEvent extends InventoryEvent {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
||||
+ // Paper start
|
||||
+ private final Reason reason;
|
||||
+ public Reason getReason() {
|
||||
+ return reason;
|
||||
+ }
|
||||
+
|
||||
+ public enum Reason {
|
||||
+ /**
|
||||
+ * Unknown reason
|
||||
+ */
|
||||
+ UNKNOWN,
|
||||
+ /**
|
||||
+ * Player is teleporting
|
||||
+ */
|
||||
+ TELEPORT,
|
||||
+ /**
|
||||
+ * Player is no longer permitted to use this inventory
|
||||
+ */
|
||||
+ CANT_USE,
|
||||
+ /**
|
||||
+ * The chunk the inventory was in was unloaded
|
||||
+ */
|
||||
+ UNLOADED,
|
||||
+ /**
|
||||
+ * Opening new inventory instead
|
||||
+ */
|
||||
+ OPEN_NEW,
|
||||
+ /**
|
||||
+ * Closed
|
||||
+ */
|
||||
+ PLAYER,
|
||||
+ /**
|
||||
+ * Closed due to disconnect
|
||||
+ */
|
||||
+ DISCONNECT,
|
||||
+ /**
|
||||
+ * The player died
|
||||
+ */
|
||||
+ DEATH,
|
||||
+ /**
|
||||
+ * Closed by Bukkit API
|
||||
+ */
|
||||
+ PLUGIN,
|
||||
+ }
|
||||
public InventoryCloseEvent(InventoryView transaction) {
|
||||
+ this(transaction, Reason.UNKNOWN);
|
||||
+ }
|
||||
+
|
||||
+ public InventoryCloseEvent(InventoryView transaction, Reason reason) {
|
||||
super(transaction);
|
||||
+ this.reason = reason;
|
||||
+ // Paper end
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
2.18.0
|
||||
|
||||
Reference in New Issue
Block a user