Paper/Spigot-Server-Patches/0089-Access-items-by-EquipmentSlot.patch

69 lines
2.3 KiB
Diff
Raw Normal View History

2017-07-03 23:38:49 +08:00
From 1c3f66e29a58bdc85e459e793173d4febc431df3 Mon Sep 17 00:00:00 2001
2016-03-27 13:23:42 +08: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
2017-07-03 23:38:49 +08:00
index 67c54899d..3f58c34e0 100644
2016-03-27 13:23:42 +08:00
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
2017-04-20 21:22:08 +08:00
@@ -267,4 +267,54 @@ public class CraftInventoryPlayer extends CraftInventory implements org.bukkit.i
2016-03-27 13:23:42 +08: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
}
--
2017-07-03 23:38:49 +08:00
2.13.2
2016-03-27 13:23:42 +08:00