Skip to content

Class endstone::CrossbowMeta

ClassList > endstone > CrossbowMeta

Represents the meta for a crossbow that can have charged projectiles.

  • #include <endstone/inventory/meta/crossbow_meta.h>

Inherits the following classes: endstone::ItemMeta

Public Types inherited from endstone::ItemMeta

See endstone::ItemMeta

Type Name
enum Type

Public Functions

Type Name
virtual void addChargedProjectile (const ItemStack & item) = 0
Adds a charged projectile to this item.
virtual std::vector< std::unique_ptr< ItemStack > > getChargedProjectiles () const = 0
Returns an immutable list of the projectiles charged on this item.
virtual bool hasChargedProjectiles () const = 0
Returns whether the item has any charged projectiles.
virtual void setChargedProjectiles (std::vector< ItemStack * > projectiles) = 0
Sets the projectiles charged on this item.

Public Functions inherited from endstone::ItemMeta

See endstone::ItemMeta

Type Name
virtual bool addEnchant (EnchantmentId id, int level, bool force) = 0
Adds the specified enchantment to this item meta.
T * as ()
const T * as () const
virtual std::unique_ptr< ItemMeta > clone () const = 0
Creates a clone of the current metadata.
virtual int getDamage () const = 0
Gets the damage.
virtual std::string getDisplayName () const = 0
Gets the display name that is set.
virtual int getEnchantLevel (EnchantmentId id) const = 0
Checks for the level of the specified enchantment.
virtual std::unordered_map< const Enchantment *, int > getEnchants () const = 0
Returns a copy the enchantments in this ItemMeta .
virtual std::vector< std::string > getLore () const = 0
Gets the lore that is set.
virtual int getRepairCost () const = 0
Gets the repair penalty.
virtual Type getType () const = 0
Gets the type of this item meta.
virtual bool hasConflictingEnchant (EnchantmentId id) const = 0
virtual bool hasDamage () const = 0
Checks to see if this item has damage.
virtual bool hasDisplayName () const = 0
Checks for existence of a display name.
virtual bool hasEnchant (EnchantmentId id) const = 0
Checks for existence of the specified enchantment.
virtual bool hasEnchants () const = 0
Checks for the existence of any enchantments.
virtual bool hasLore () const = 0
Checks for existence of lore.
virtual bool hasRepairCost () const = 0
Checks to see if this has a repair penalty.
virtual bool isUnbreakable () const = 0
Return if the unbreakable tag is true. An unbreakable item will not lose durability.
virtual bool removeEnchant (EnchantmentId id) = 0
Removes the specified enchantment from this item meta.
virtual void removeEnchants () = 0
Removes all enchantments from this item meta.
virtual void setDamage (int damage) = 0
Sets the damage.
virtual void setDisplayName (std::optional< std::string > name) = 0
Sets the display name.
virtual void setLore (std::optional< std::vector< std::string > > lore) = 0
Sets the lore for this item or removes lore when given std::nullopt .
virtual void setRepairCost (int cost) = 0
Sets the repair penalty.
virtual void setUnbreakable (bool unbreakable) = 0
Sets the unbreakable tag. An unbreakable item will not lose durability.
virtual CompoundTag toNbt () const = 0
virtual ~ItemMeta () = default

Public Functions Documentation

function addChargedProjectile

Adds a charged projectile to this item.

virtual void endstone::CrossbowMeta::addChargedProjectile (
    const  ItemStack & item
) = 0

Parameters:

  • item projectile

function getChargedProjectiles

Returns an immutable list of the projectiles charged on this item.

virtual std::vector< std::unique_ptr< ItemStack > > endstone::CrossbowMeta::getChargedProjectiles () const = 0

Returns:

charged projectiles


function hasChargedProjectiles

Returns whether the item has any charged projectiles.

virtual bool endstone::CrossbowMeta::hasChargedProjectiles () const = 0

Returns:

whether charged projectiles are present


function setChargedProjectiles

Sets the projectiles charged on this item.

virtual void endstone::CrossbowMeta::setChargedProjectiles (
    std::vector< ItemStack * > projectiles
) = 0

Parameters:

  • projectiles the projectiles to set


The documentation for this class was generated from the following file include/endstone/inventory/meta/crossbow_meta.h