Package org.bukkit.inventory.meta

# Interface CrossbowMeta

All Superinterfaces:
  `Cloneable`, `ConfigurationSerializable`, `ItemMeta`, `PersistentDataHolder`

public interface CrossbowMeta extends ItemMeta

## Method Summary

Modifier and Type
Method
Description
`void`
`addChargedProjectile(@NotNull ItemStack item)`
Adds a charged projectile to this item.
`@NotNull List<ItemStack>`
`getChargedProjectiles()`
Returns an immutable list of the projectiles charged on this item.
`boolean`
`hasChargedProjectiles()`
Returns whether the item has any charged projectiles.
`void`
`setChargedProjectiles(@Nullable List<ItemStack> projectiles)`
Sets the projectiles charged on this item.

### Methods inherited from interface org.bukkit.configuration.serialization.ConfigurationSerializable

`serialize`

### Methods inherited from interface org.bukkit.inventory.meta.ItemMeta

`addAttributeModifier, addEnchant, addItemFlags, clone, displayName, displayName, getAsString, getAttributeModifiers, getAttributeModifiers, getAttributeModifiers, getCanDestroy, getCanPlaceOn, getCustomModelData, getCustomTagContainer, getDestroyableKeys, getDisplayName, getDisplayNameComponent, getEnchantLevel, getEnchants, getItemFlags, getLocalizedName, getLore, getLoreComponents, getPlaceableKeys, hasAttributeModifiers, hasConflictingEnchant, hasCustomModelData, hasDestroyableKeys, hasDisplayName, hasEnchant, hasEnchants, hasItemFlag, hasLocalizedName, hasLore, hasPlaceableKeys, isUnbreakable, lore, lore, removeAttributeModifier, removeAttributeModifier, removeAttributeModifier, removeEnchant, removeItemFlags, setAttributeModifiers, setCanDestroy, setCanPlaceOn, setCustomModelData, setDestroyableKeys, setDisplayName, setDisplayNameComponent, setLocalizedName, setLore, setLoreComponents, setPlaceableKeys, setUnbreakable, setVersion`

### Methods inherited from interface org.bukkit.persistence.PersistentDataHolder

`getPersistentDataContainer`

## Method Details

### hasChargedProjectiles

boolean hasChargedProjectiles()
Returns whether the item has any charged projectiles.

Returns:
  whether charged projectiles are present

### getChargedProjectiles

@NotNull @NotNull List<ItemStack> getChargedProjectiles()
Returns an immutable list of the projectiles charged on this item.

Returns:
  charged projectiles

### setChargedProjectiles

void setChargedProjectiles(@Nullable @Nullable List<ItemStack> projectiles)
Sets the projectiles charged on this item. Removes all projectiles when given null.

Parameters:
  `projectiles` - the projectiles to set
Throws:
  `IllegalArgumentException` - if one of the projectiles is not an arrow or firework rocket

### addChargedProjectile

void addChargedProjectile(@NotNull @NotNull ItemStack item)
Adds a charged projectile to this item.

Parameters:
  `item` - projectile
Throws:
  `IllegalArgumentException` - if the projectile is not an arrow or firework rocket