papermc/Spigot-Server-Patches/0094-Access-items-by-EquipmentSlot.patch

69 lines
2.3 KiB
Diff
Raw Normal View History

From 24bd2ba47631a8ddefd94a7d2822b5a22d2813e7 Mon Sep 17 00:00:00 2001
2016-03-27 05:23:42 +00:00
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
2016-11-17 02:23:38 +00:00
index d8c5364..120ec89 100644
2016-03-27 05:23:42 +00:00
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
2016-04-24 02:41:46 +00:00
@@ -271,4 +271,54 @@ public class CraftInventoryPlayer extends CraftInventory implements org.bukkit.i
2016-03-27 05:23:42 +00:00
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
}
--
2016-12-10 23:50:31 +00:00
2.9.3
2016-03-27 05:23:42 +00:00