Package org.bukkit.inventory.meta
Interface EnchantmentStorageMeta
- All Superinterfaces:
Cloneable
,ConfigurationSerializable
,ItemMeta
,PersistentDataHolder
public interface EnchantmentStorageMeta extends ItemMeta
EnchantmentMeta is specific to items that can store enchantments, as
opposed to being enchanted.
Material.ENCHANTED_BOOK
is an example
of an item with enchantment storage.-
Method Summary
Modifier and Type Method Description boolean
addStoredEnchant(Enchantment ench, int level, boolean ignoreLevelRestriction)
Stores the specified enchantment in this item meta.EnchantmentStorageMeta
clone()
int
getStoredEnchantLevel(Enchantment ench)
Checks for the level of the stored enchantment.Map<Enchantment,Integer>
getStoredEnchants()
Gets a copy the stored enchantments in this ItemMeta.boolean
hasConflictingStoredEnchant(Enchantment ench)
Checks if the specified enchantment conflicts with any enchantments in this ItemMeta.boolean
hasStoredEnchant(Enchantment ench)
Checks for storage of the specified enchantment.boolean
hasStoredEnchants()
Checks for the existence of any stored enchantments.boolean
removeStoredEnchant(Enchantment ench)
Remove the specified stored enchantment from this item meta.Methods inherited from interface org.bukkit.configuration.serialization.ConfigurationSerializable
serialize
Methods inherited from interface org.bukkit.inventory.meta.ItemMeta
addAttributeModifier, addEnchant, addItemFlags, getAttributeModifiers, getAttributeModifiers, getAttributeModifiers, getCustomModelData, getCustomTagContainer, getDisplayName, getEnchantLevel, getEnchants, getItemFlags, getLocalizedName, getLore, hasAttributeModifiers, hasConflictingEnchant, hasCustomModelData, hasDisplayName, hasEnchant, hasEnchants, hasItemFlag, hasLocalizedName, hasLore, isUnbreakable, removeAttributeModifier, removeAttributeModifier, removeAttributeModifier, removeEnchant, removeItemFlags, setAttributeModifiers, setCustomModelData, setDisplayName, setLocalizedName, setLore, setUnbreakable, setVersion
Methods inherited from interface org.bukkit.persistence.PersistentDataHolder
getPersistentDataContainer
-
Method Details
-
hasStoredEnchants
boolean hasStoredEnchants()Checks for the existence of any stored enchantments.- Returns:
- true if an enchantment exists on this meta
-
hasStoredEnchant
Checks for storage of the specified enchantment.- Parameters:
ench
- enchantment to check- Returns:
- true if this enchantment is stored in this meta
-
getStoredEnchantLevel
Checks for the level of the stored enchantment.- Parameters:
ench
- enchantment to check- Returns:
- The level that the specified stored enchantment has, or 0 if none
-
getStoredEnchants
Gets a copy the stored enchantments in this ItemMeta.- Returns:
- An immutable copy of the stored enchantments
-
addStoredEnchant
Stores the specified enchantment in this item meta.- Parameters:
ench
- Enchantment to storelevel
- Level for the enchantmentignoreLevelRestriction
- this indicates the enchantment should be applied, ignoring the level limit- Returns:
- true if the item meta changed as a result of this call, false otherwise
- Throws:
IllegalArgumentException
- if enchantment is null
-
removeStoredEnchant
Remove the specified stored enchantment from this item meta.- Parameters:
ench
- Enchantment to remove- Returns:
- true if the item meta changed as a result of this call, false otherwise
- Throws:
IllegalArgumentException
- if enchantment is null
-
hasConflictingStoredEnchant
Checks if the specified enchantment conflicts with any enchantments in this ItemMeta.- Parameters:
ench
- enchantment to test- Returns:
- true if the enchantment conflicts, false otherwise
-
clone
-