SPIGOT-2623: Add EntityEquipment methods to get/set ItemStacks by slot.

This commit is contained in:
blablubbabc 2020-06-13 20:56:32 +10:00 committed by md_5
parent fad2494af1
commit c9d7c16b5f

View File

@ -1,10 +1,13 @@
package org.bukkit.craftbukkit.inventory;
import com.google.common.base.Preconditions;
import net.minecraft.server.EntityInsentient;
import net.minecraft.server.EnumItemSlot;
import org.bukkit.craftbukkit.CraftEquipmentSlot;
import org.bukkit.craftbukkit.entity.CraftLivingEntity;
import org.bukkit.entity.Entity;
import org.bukkit.inventory.EntityEquipment;
import org.bukkit.inventory.EquipmentSlot;
import org.bukkit.inventory.ItemStack;
public class CraftEntityEquipment implements EntityEquipment {
@ -15,6 +18,20 @@ public class CraftEntityEquipment implements EntityEquipment {
this.entity = entity;
}
@Override
public void setItem(EquipmentSlot slot, ItemStack item) {
Preconditions.checkArgument(slot != null, "slot must not be null");
EnumItemSlot nmsSlot = CraftEquipmentSlot.getNMS(slot);
setEquipment(nmsSlot, item);
}
@Override
public ItemStack getItem(EquipmentSlot slot) {
Preconditions.checkArgument(slot != null, "slot must not be null");
EnumItemSlot nmsSlot = CraftEquipmentSlot.getNMS(slot);
return getEquipment(nmsSlot);
}
@Override
public ItemStack getItemInMainHand() {
return getEquipment(EnumItemSlot.MAINHAND);