68 lines
2.3 KiB
Diff
68 lines
2.3 KiB
Diff
From a3603d62b1e1066a3e8b4ef5d5d3fe9bec5911a3 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 6cbe06956..7b62f26d7 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
|
|
@@ -250,4 +250,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.18.0
|
|
|