aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch')
-rw-r--r--patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch103
1 files changed, 103 insertions, 0 deletions
diff --git a/patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch b/patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch
new file mode 100644
index 0000000000..43e6937d05
--- /dev/null
+++ b/patches/api/0204-Add-additional-open-container-api-to-HumanEntity.patch
@@ -0,0 +1,103 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: JRoy <[email protected]>
+Date: Wed, 26 Aug 2020 02:11:58 -0400
+Subject: [PATCH] Add additional open container api to HumanEntity
+
+
+diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
+index 2557ddcc0528d4f9d811883b3ddc61148ebc3998..5ecfb98540c00da05b13bc5370debb89c52cc76f 100644
+--- a/src/main/java/org/bukkit/entity/HumanEntity.java
++++ b/src/main/java/org/bukkit/entity/HumanEntity.java
+@@ -174,6 +174,92 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
+ @Nullable
+ public InventoryView openMerchant(@NotNull Merchant merchant, boolean force);
+
++ // Paper start - Add additional containers
++ /**
++ * Opens an empty anvil inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no anvil block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openAnvil(@Nullable Location location, boolean force);
++
++ /**
++ * Opens an empty cartography table inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no cartography table block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openCartographyTable(@Nullable Location location, boolean force);
++
++ /**
++ * Opens an empty grindstone inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no grindstone block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openGrindstone(@Nullable Location location, boolean force);
++
++ /**
++ * Opens an empty loom inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no loom block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openLoom(@Nullable Location location, boolean force);
++
++ /**
++ * Opens an empty smithing table inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no smithing table block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openSmithingTable(@Nullable Location location, boolean force);
++
++ /**
++ * Opens an empty stonecutter inventory window with the player's inventory
++ * on the bottom.
++ *
++ * @param location The location to attach it to. If null, the player's
++ * location is used.
++ * @param force If false, and there is no stonecutter block at the location,
++ * no inventory will be opened and null will be returned.
++ * @return The newly opened inventory view, or null if it could not be
++ * opened.
++ */
++ @Nullable
++ public InventoryView openStonecutter(@Nullable Location location, boolean force);
++ // Paper end
++
+ /**
+ * Force-closes the currently open inventory view for this player, if any.
+ */