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.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.bukkit.inventory.meta.ItemMeta
ItemMeta.Spigot
-
-
Method Summary
All Methods Instance Methods Abstract Methods 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, spigot
-
Methods inherited from interface org.bukkit.persistence.PersistentDataHolder
getPersistentDataContainer
-
-
-
-
Method Detail
-
hasStoredEnchants
boolean hasStoredEnchants()
Checks for the existence of any stored enchantments.- Returns:
- true if an enchantment exists on this meta
-
hasStoredEnchant
boolean hasStoredEnchant(@NotNull Enchantment ench)
Checks for storage of the specified enchantment.- Parameters:
ench
- enchantment to check- Returns:
- true if this enchantment is stored in this meta
-
getStoredEnchantLevel
int getStoredEnchantLevel(@NotNull Enchantment ench)
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
@NotNull Map<Enchantment,Integer> getStoredEnchants()
Gets a copy the stored enchantments in this ItemMeta.- Returns:
- An immutable copy of the stored enchantments
-
addStoredEnchant
boolean addStoredEnchant(@NotNull Enchantment ench, int level, boolean ignoreLevelRestriction)
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
boolean removeStoredEnchant(@NotNull Enchantment ench) throws IllegalArgumentException
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
boolean hasConflictingStoredEnchant(@NotNull Enchantment ench)
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
@NotNull EnchantmentStorageMeta clone()
-
-