Access items by EquipmentSlot
This commit is contained in:
parent
c3b869fdf2
commit
eeb64630cd
2 changed files with 104 additions and 0 deletions
36
Spigot-API-Patches/0028-Access-items-by-EquipmentSlot.patch
Normal file
36
Spigot-API-Patches/0028-Access-items-by-EquipmentSlot.patch
Normal file
|
@ -0,0 +1,36 @@
|
|||
From df17741c376cfdac8301e64a9dc9a956e75ae5f1 Mon Sep 17 00:00:00 2001
|
||||
From: Jedediah Smith <jedediah@silencegreys.com>
|
||||
Date: Sun, 20 Mar 2016 06:44:49 -0400
|
||||
Subject: [PATCH] Access items by EquipmentSlot
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/inventory/PlayerInventory.java b/src/main/java/org/bukkit/inventory/PlayerInventory.java
|
||||
index 557cc04..799f150 100644
|
||||
--- a/src/main/java/org/bukkit/inventory/PlayerInventory.java
|
||||
+++ b/src/main/java/org/bukkit/inventory/PlayerInventory.java
|
||||
@@ -211,4 +211,22 @@ public interface PlayerInventory extends Inventory {
|
||||
public int clear(int id, int data);
|
||||
|
||||
public HumanEntity getHolder();
|
||||
+
|
||||
+ // Paper start
|
||||
+ /**
|
||||
+ * Gets the {@link ItemStack} found in the slot.
|
||||
+ *
|
||||
+ * @param slot The slot
|
||||
+ * @return The item stack in the slot
|
||||
+ */
|
||||
+ ItemStack getItem(EquipmentSlot slot);
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the {@link ItemStack} at the given {@link EquipmentSlot}.
|
||||
+ *
|
||||
+ * @param slot The slot for the stack
|
||||
+ * @param stack The item stack to set
|
||||
+ */
|
||||
+ void setItem(EquipmentSlot slot, ItemStack stack);
|
||||
+ // Paper end
|
||||
}
|
||||
--
|
||||
2.7.4
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
From 05a7b0cbf7f16e5868a57af9417e646aa62f2870 Mon Sep 17 00:00:00 2001
|
||||
From: Jedediah Smith <jedediah@silencegreys.com>
|
||||
Date: Sun, 20 Mar 2016 06:45:01 -0400
|
||||
Subject: [PATCH] Access items by EquipmentSlot
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
|
||||
index 0902386..19662da 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
|
||||
@@ -268,4 +268,54 @@ public class CraftInventoryPlayer extends CraftInventory implements org.bukkit.i
|
||||
public void setBootsDropChance(float chance) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
+
|
||||
+ // Paper start
|
||||
+ @Override
|
||||
+ public ItemStack getItem(org.bukkit.inventory.EquipmentSlot slot) {
|
||||
+ Preconditions.checkNotNull(slot, "slot");
|
||||
+ switch (slot) {
|
||||
+ case HAND:
|
||||
+ return this.getItemInMainHand();
|
||||
+ case OFF_HAND:
|
||||
+ return this.getItemInOffHand();
|
||||
+ case HEAD:
|
||||
+ return this.getHelmet();
|
||||
+ case CHEST:
|
||||
+ return this.getChestplate();
|
||||
+ case LEGS:
|
||||
+ return this.getLeggings();
|
||||
+ case FEET:
|
||||
+ return this.getBoots();
|
||||
+ }
|
||||
+
|
||||
+ throw new UnsupportedOperationException(slot.name());
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public void setItem(org.bukkit.inventory.EquipmentSlot slot, ItemStack stack) {
|
||||
+ Preconditions.checkNotNull(slot, "slot");
|
||||
+ switch (slot) {
|
||||
+ case HAND:
|
||||
+ this.setItemInMainHand(stack);
|
||||
+ return;
|
||||
+ case OFF_HAND:
|
||||
+ this.setItemInOffHand(stack);
|
||||
+ return;
|
||||
+ case HEAD:
|
||||
+ this.setHelmet(stack);
|
||||
+ return;
|
||||
+ case CHEST:
|
||||
+ this.setChestplate(stack);
|
||||
+ return;
|
||||
+ case LEGS:
|
||||
+ this.setLeggings(stack);
|
||||
+ return;
|
||||
+ case FEET:
|
||||
+ this.setBoots(stack);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ throw new UnsupportedOperationException(slot.name());
|
||||
+ }
|
||||
+ // Paper end
|
||||
}
|
||||
--
|
||||
2.7.4
|
||||
|
Loading…
Reference in a new issue