Interface PotionEffect
- All Superinterfaces:
DataSerializable
Represents an effect of a
PotionEffectType for a specified
duration(), amplifier(), showsParticles()
and showsIcon(). The PotionEffect itself is immutable
once created and can be offered to Entity instances through
the Keys.POTION_EFFECTS.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceRepresents a builder interface to create aPotionEffect. -
Method Summary
Modifier and TypeMethodDescriptionintGets the amplifier at which this potion effect will apply effects.static PotionEffect.Builderbuilder()Creates a newPotionEffect.Builderto build aPotionEffect.duration()Gets the duration in ticks for which this potion effect will apply for.booleanGets whether or not this potion effect is an ambient effect.static PotionEffectof(Supplier<? extends PotionEffectType> type, int amplifier, Ticks duration) Creates a newPotionEffectwith the providedPotionEffectType, the provided amplifier, and the provided duration in ticks.static PotionEffectof(PotionEffectType type, int amplifier, Ticks duration) Creates a newPotionEffectwith the providedPotionEffectType, the provided amplifier, and the provided duration in ticks.booleanGets whether or not this potion effect is showing its icon.booleanGets whether or not this potion effect is showing particles.type()Gets thePotionEffectTypeof this potion.Methods inherited from interface org.spongepowered.api.data.persistence.DataSerializable
contentVersion, toContainer
-
Method Details
-
builder
Creates a newPotionEffect.Builderto build aPotionEffect.- Returns:
- The new builder
-
of
static PotionEffect of(PotionEffectType type, int amplifier, Ticks duration) throws IllegalArgumentException Creates a newPotionEffectwith the providedPotionEffectType, the provided amplifier, and the provided duration in ticks.- Parameters:
type- The potion typeamplifier- The zero-indexed amplifierduration- The duration in ticks- Returns:
- The potion effect
- Throws:
IllegalArgumentException- If the duration is not positive
-
of
static PotionEffect of(Supplier<? extends PotionEffectType> type, int amplifier, Ticks duration) throws IllegalArgumentException Creates a newPotionEffectwith the providedPotionEffectType, the provided amplifier, and the provided duration in ticks.- Parameters:
type- The potion typeamplifier- The amplifierduration- The duration in ticks- Returns:
- The potion effect
- Throws:
IllegalArgumentException- If the duration is not positive
-
type
PotionEffectType type()Gets thePotionEffectTypeof this potion.- Returns:
- The type.
-
duration
Ticks duration()Gets the duration in ticks for which this potion effect will apply for.- Returns:
- The duration in ticks.
-
amplifier
int amplifier()Gets the amplifier at which this potion effect will apply effects.A potion amplifier dictates the potion level as a zero based index. An amplifier of zero will produce a potion effect of level 1 (e.g. Strength I), while an amplifier of four will produce a potion effect corresponding to a potion of level 4 (e.g. Strength V).
- Returns:
- The amplifier as a zero-indexed integer.
-
isAmbient
boolean isAmbient()Gets whether or not this potion effect is an ambient effect. Ambient potions emit more translucent particles.- Returns:
- If the effect should be ambient.
-
showsParticles
boolean showsParticles()Gets whether or not this potion effect is showing particles.- Returns:
- If particles should be shown.
-
showsIcon
boolean showsIcon()Gets whether or not this potion effect is showing its icon.- Returns:
- If the icon should be shown.
-