COMMENT Provides enum types for several key slots found within an entity {@link net.minecraft.inventory.Inventory}.
COMMENT <p>
COMMENT Each {@link EquipmentSlot} has a type, which represents what inventory category it is contained within.
COMMENT The {@code HAND} category covers the mainhand & offhand slots, while the {@code ARMOR} category covers the 4
COMMENT types of armor slots found in {@link net.minecraft.entity.LivingEntity}.
COMMENT <p>
COMMENT Each {@link EquipmentSlot} contains information on where that slot should be located within a parent {@link net.minecraft.inventory.Inventory}.
COMMENT {@link EquipmentSlot#getEntitySlotId()} will provide the base slot index an {@code EquipmentSlot} should occupy (starting from {@code 0}),
COMMENT while {@link EquipmentSlot#getOffsetEntitySlotId(int)} will return the same value added to an offset index.
COMMENT <p>
COMMENT {@link EquipmentSlot} can be used to quickly access the item held by an inventory slot in a {@link net.minecraft.entity.LivingEntity} through
COMMENT methods such as {@link net.minecraft.entity.LivingEntity#getEquippedStack(EquipmentSlot)}, which will return the {@link net.minecraft.item.ItemStack}
COMMENT held in the {@code LivingEntity}'s inventory slot pointed at by the target {@code EquipmentSlot}.
COMMENT Returns the {@link EquipmentSlot} where {@link EquipmentSlot#getEntitySlotId()} is equal to {@code index} and the type of the slot is equal to {@code type}.
COMMENT If no {@code EquipmentSlot} could be found matching the input {@code type} and {@code index}, throws {@link IllegalArgumentException}.
COMMENT
COMMENT @throws IllegalArgumentException if no slot type could be found matching {@code type} and {@code index}
COMMENT @return an {@link EquipmentSlot} matching the given {@code type} and inventory {@code index}