Interface PotionMeta

All Superinterfaces:
java.lang.Cloneable, ConfigurationSerializable, ItemMeta

public interface PotionMeta
extends ItemMeta
Represents a potion (Material.POTION) that can have custom effects.
  • Method Details

    • hasCustomEffects

      boolean hasCustomEffects()
      Checks for the presence of custom potion effects.
      Returns:
      true if custom potion effects are applied
    • getCustomEffects

      java.util.List<PotionEffect> 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

      boolean addCustomEffect​(PotionEffect effect, boolean overwrite)
      Adds a custom potion effect to this potion.
      Parameters:
      effect - the potion effect to add
      overwrite - 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

      boolean removeCustomEffect​(PotionEffectType type)
      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

      boolean hasCustomEffect​(PotionEffectType type)
      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

      boolean setMainEffect​(PotionEffectType type)
      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
    • clone

      PotionMeta clone()
      Specified by:
      clone in interface ItemMeta