Package org.bukkit.inventory.meta
Interface PotionMeta
- All Superinterfaces:
Cloneable
,ConfigurationSerializable
,ItemMeta
,PersistentDataHolder
public interface PotionMeta extends ItemMeta
Represents a potion or item that can have custom effects.
-
Method Summary
Modifier and Type Method Description boolean
addCustomEffect(PotionEffect effect, boolean overwrite)
Adds a custom potion effect to this potion.boolean
clearCustomEffects()
Removes all custom potion effects from this potion.PotionMeta
clone()
PotionData
getBasePotionData()
Returns the potion data about the base potionColor
getColor()
Gets the potion color that is set.List<PotionEffect>
getCustomEffects()
Gets an immutable list containing all custom potion effects applied to this potion.boolean
hasColor()
Checks for existence of a potion color.boolean
hasCustomEffect(PotionEffectType type)
Checks for a specific custom potion effect type on this potion.boolean
hasCustomEffects()
Checks for the presence of custom potion effects.boolean
removeCustomEffect(PotionEffectType type)
Removes a custom potion effect from this potion.void
setBasePotionData(PotionData data)
Sets the underlying potion datavoid
setColor(Color color)
Sets the potion color.boolean
setMainEffect(PotionEffectType type)
Deprecated.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
-
setBasePotionData
Sets the underlying potion data- Parameters:
data
- PotionData to set the base potion state to
-
getBasePotionData
Returns the potion data about the base potion- Returns:
- a PotionData object
-
hasCustomEffects
boolean hasCustomEffects()Checks for the presence of custom potion effects.- Returns:
- true if custom potion effects are applied
-
getCustomEffects
Gets an immutable list containing all custom potion effects applied to this potion.Plugins should check that hasCustomEffects() returns true before calling this method.
- Returns:
- the immutable list of custom potion effects
-
addCustomEffect
Adds a custom potion effect to this potion.- Parameters:
effect
- the potion effect to addoverwrite
- true if any existing effect of the same type should be overwritten- Returns:
- true if the potion meta changed as a result of this call
-
removeCustomEffect
Removes a custom potion effect from this potion.- Parameters:
type
- the potion effect type to remove- Returns:
- true if the potion meta changed as a result of this call
-
hasCustomEffect
Checks for a specific custom potion effect type on this potion.- Parameters:
type
- the potion effect type to check for- Returns:
- true if the potion has this effect
-
setMainEffect
Deprecated.Moves a potion effect to the top of the potion effect list.This causes the client to display the potion effect in the potion's name.
- Parameters:
type
- the potion effect type to move- Returns:
- true if the potion meta changed as a result of this call
-
clearCustomEffects
boolean clearCustomEffects()Removes all custom potion effects from this potion.- Returns:
- true if the potion meta changed as a result of this call
-
hasColor
boolean hasColor()Checks for existence of a potion color.- Returns:
- true if this has a custom potion color
-
getColor
Gets the potion color that is set. A custom potion color will alter the display of the potion in an inventory slot.Plugins should check that hasColor() returns
true
before calling this method.- Returns:
- the potion color that is set
-
setColor
Sets the potion color. A custom potion color will alter the display of the potion in an inventory slot.- Parameters:
color
- the color to set
-
clone
PotionMeta clone()
-