Package net.fabricmc.fabric.api.item.v1
Interface EquipmentSlotProvider
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
A provider for the preferred equipment slot of an item.
This can be used to give non-armor items, such as blocks,
an armor slot that they can go in.
The preferred equipment slot of an item stack can be queried using
LivingEntity.getPreferredEquipmentSlot()
.
Equipment slot providers can be set with FabricItem.Settings.equipmentSlot(EquipmentSlotProvider)
.
If the equipment slot is not entity-dependent, you can set EquippableComponent
on the item
instead of using this provider.
-
Method Summary
Modifier and TypeMethodDescriptiongetPreferredEquipmentSlot
(LivingEntity entity, ItemStack stack) Gets the preferred equipment slot for an item stack.
-
Method Details
-
getPreferredEquipmentSlot
Gets the preferred equipment slot for an item stack.If there is no preferred armor equipment slot for the stack,
EquipmentSlot.MAINHAND
can be returned.Callers are expected to check themselves whether the slot is available for the
entity
usingLivingEntity.canUseSlot(net.minecraft.entity.EquipmentSlot)
. For example, players cannot useEquipmentSlot.BODY
, which is instead used for items like horse armors.- Parameters:
entity
- the entitystack
- the item stack- Returns:
- the preferred equipment slot
-