Move version command update checking to the implementation
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
This commit is contained in:
parent
7fb12d787e
commit
70ce6ce831
475 changed files with 1472 additions and 1338 deletions
96
Spigot-API-Patches/0117-InventoryCloseEvent-Reason-API.patch
Normal file
96
Spigot-API-Patches/0117-InventoryCloseEvent-Reason-API.patch
Normal file
|
@ -0,0 +1,96 @@
|
|||
From da54191d0c80dea58ca857a395d3a39ccfdcc585 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 cdbac95b..f25c7315 100644
|
||||
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
@@ -152,6 +152,15 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
|
||||
*/
|
||||
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(@NotNull 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 5861247c..21ad8888 100644
|
||||
--- a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
@@ -11,9 +11,60 @@ import org.jetbrains.annotations.NotNull;
|
||||
*/
|
||||
public class InventoryCloseEvent extends InventoryEvent {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
+ // Paper start
|
||||
+ private final Reason reason;
|
||||
+ @NotNull
|
||||
+ 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(@NotNull InventoryView transaction) {
|
||||
+ this(transaction, Reason.UNKNOWN);
|
||||
+ }
|
||||
+
|
||||
+ public InventoryCloseEvent(@NotNull InventoryView transaction, @NotNull Reason reason) {
|
||||
super(transaction);
|
||||
+ this.reason = reason;
|
||||
+ // Paper end
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
2.21.0
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue