Package org.bukkit.potion

# Class PotionEffectType

java.lang.Object
org.bukkit.potion.PotionEffectType

Direct Known Subclasses:
  `PotionEffectTypeWrapper`

public abstract class PotionEffectType extends Object
Represents a type of potion and its effect on an entity.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final PotionEffectType`
`ABSORPTION`
Increases the maximum health of an entity with health that cannot be regenerated, but is refilled every 30 seconds.
`static final PotionEffectType`
`BAD_OMEN`
oof.
`static final PotionEffectType`
`BLINDNESS`
Blinds an entity.
`static final PotionEffectType`
`CONDUIT_POWER`
Effects granted by a nearby conduit.
`static final PotionEffectType`
`CONFUSION`
Warps vision on the client.
`static final PotionEffectType`
`DAMAGE_RESISTANCE`
Decreases damage dealt to an entity.
`static final PotionEffectType`
`DOLPHINS_GRACE`
Squee'ek uh'k kk'kkkk squeek eee'eek.
`static final PotionEffectType`
`FAST_DIGGING`
Increases dig speed.
`static final PotionEffectType`
`FIRE_RESISTANCE`
Stops fire damage.
`static final PotionEffectType`
`GLOWING`
Outlines the entity so that it can be seen from afar.
`static final PotionEffectType`
`HARM`
Hurts an entity.
`static final PotionEffectType`
`HEAL`
Heals an entity.
`static final PotionEffectType`
`HEALTH_BOOST`
Increases the maximum health of an entity.
`static final PotionEffectType`
`HERO_OF_THE_VILLAGE`
\o/.
`static final PotionEffectType`
`HUNGER`
Increases hunger.
`static final PotionEffectType`
`INCREASE_DAMAGE`
Increases damage dealt.
`static final PotionEffectType`
`INVISIBILITY`
Grants invisibility.
`static final PotionEffectType`
`JUMP`
Increases jump height.
`static final PotionEffectType`
`LEVITATION`
Causes the entity to float into the air.
`static final PotionEffectType`
`LUCK`
Loot table luck.
`static final PotionEffectType`
`NIGHT_VISION`
Allows an entity to see in the dark.
`static final PotionEffectType`
`POISON`
Deals damage to an entity over time.
`static final PotionEffectType`
`REGENERATION`
Regenerates health.
`static final PotionEffectType`
`SATURATION`
Increases the food level of an entity each tick.
`static final PotionEffectType`
`SLOW`
Decreases movement speed.
`static final PotionEffectType`
`SLOW_DIGGING`
Decreases dig speed.
`static final PotionEffectType`
`SLOW_FALLING`
Slows entity fall rate.
`static final PotionEffectType`
`SPEED`
Increases movement speed.
`static final PotionEffectType`
`UNLUCK`
Loot table unluck.
`static final PotionEffectType`
`WATER_BREATHING`
Allows breathing underwater.
`static final PotionEffectType`
`WEAKNESS`
Decreases damage dealt by an entity.
`static final PotionEffectType`
`WITHER`
Deals damage to an entity over time and gives the health to the shooter.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`PotionEffectType(int id)`

## Method Summary

Modifier and Type
Method
Description
`@NotNull PotionEffect`
`createEffect(int duration, int amplifier)`
Creates a PotionEffect from this PotionEffectType, applying duration modifiers and checks.
`boolean`
`equals(Object obj)`
`static @Nullable PotionEffectType`
`getById(int id)`
Deprecated.
Magic value
`static @Nullable PotionEffectType`
`getByName(@NotNull String name)`
Gets the effect type specified by the given name.
`abstract @NotNull Color`
`getColor()`
Returns the color of this effect type.
`abstract double`
`getDurationModifier()`
Deprecated.
unused, always 1.0
`int`
`getId()`
Deprecated.
Magic value
`abstract @NotNull String`
`getName()`
Returns the name of this effect type.
`int`
`hashCode()`
`abstract boolean`
`isInstant()`
Returns whether the effect of this type happens once, immediately.
`static void`
`registerPotionEffectType(@NotNull PotionEffectType type)`
Registers an effect type with the given object.
`static void`
`stopAcceptingRegistrations()`
Stops accepting any effect type registrations.
`String`
`toString()`
`static @NotNull PotionEffectType[]`
`values()`
Returns an array of all the registered `PotionEffectType`s.

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### SPEED

public static final PotionEffectType SPEED
Increases movement speed.

### SLOW

public static final PotionEffectType SLOW
Decreases movement speed.

### FAST_DIGGING

public static final PotionEffectType FAST_DIGGING
Increases dig speed.

### SLOW_DIGGING

public static final PotionEffectType SLOW_DIGGING
Decreases dig speed.

### INCREASE_DAMAGE

public static final PotionEffectType INCREASE_DAMAGE
Increases damage dealt.

### HEAL

public static final PotionEffectType HEAL
Heals an entity.

### HARM

public static final PotionEffectType HARM
Hurts an entity.

### JUMP

public static final PotionEffectType JUMP
Increases jump height.

### CONFUSION

public static final PotionEffectType CONFUSION
Warps vision on the client.

### REGENERATION

public static final PotionEffectType REGENERATION
Regenerates health.

### DAMAGE_RESISTANCE

public static final PotionEffectType DAMAGE_RESISTANCE
Decreases damage dealt to an entity.

### FIRE_RESISTANCE

public static final PotionEffectType FIRE_RESISTANCE
Stops fire damage.

### WATER_BREATHING

public static final PotionEffectType WATER_BREATHING
Allows breathing underwater.

### INVISIBILITY

public static final PotionEffectType INVISIBILITY
Grants invisibility.

### BLINDNESS

public static final PotionEffectType BLINDNESS
Blinds an entity.

### NIGHT_VISION

public static final PotionEffectType NIGHT_VISION
Allows an entity to see in the dark.

### HUNGER

public static final PotionEffectType HUNGER
Increases hunger.

### WEAKNESS

public static final PotionEffectType WEAKNESS
Decreases damage dealt by an entity.

### POISON

public static final PotionEffectType POISON
Deals damage to an entity over time.

### WITHER

public static final PotionEffectType WITHER
Deals damage to an entity over time and gives the health to the shooter.

### HEALTH_BOOST

public static final PotionEffectType HEALTH_BOOST
Increases the maximum health of an entity.

### ABSORPTION

public static final PotionEffectType ABSORPTION
Increases the maximum health of an entity with health that cannot be regenerated, but is refilled every 30 seconds.

### SATURATION

public static final PotionEffectType SATURATION
Increases the food level of an entity each tick.

### GLOWING

public static final PotionEffectType GLOWING
Outlines the entity so that it can be seen from afar.

### LEVITATION

public static final PotionEffectType LEVITATION
Causes the entity to float into the air.

### LUCK

public static final PotionEffectType LUCK
Loot table luck.

### UNLUCK

public static final PotionEffectType UNLUCK
Loot table unluck.

### SLOW_FALLING

public static final PotionEffectType SLOW_FALLING
Slows entity fall rate.

### CONDUIT_POWER

public static final PotionEffectType CONDUIT_POWER
Effects granted by a nearby conduit. Includes enhanced underwater abilities.

### DOLPHINS_GRACE

public static final PotionEffectType DOLPHINS_GRACE
Squee'ek uh'k kk'kkkk squeek eee'eek.

### BAD_OMEN

public static final PotionEffectType BAD_OMEN
oof.

### HERO_OF_THE_VILLAGE

public static final PotionEffectType HERO_OF_THE_VILLAGE
\o/.

## Constructor Details

### PotionEffectType

protected PotionEffectType(int id)

## Method Details

### createEffect

@NotNull public @NotNull PotionEffect createEffect(int duration, int amplifier)
Creates a PotionEffect from this PotionEffectType, applying duration modifiers and checks.

Parameters:
  `duration` - time in ticks
  `amplifier` - the effect's amplifier
Returns:
  a resulting potion effect
See Also:
  - `PotionBrewer.createEffect(PotionEffectType, int, int)`

### getDurationModifier

@Deprecated public abstract double getDurationModifier()
Deprecated.
unused, always 1.0
Returns the duration modifier applied to effects of this type.

Returns:
  duration modifier

### getId

@Deprecated public int getId()
Deprecated.
Magic value
Returns the unique ID of this type.

Returns:
  Unique ID

### getName

@NotNull public abstract @NotNull String getName()
Returns the name of this effect type.

Returns:
  The name of this effect type

### isInstant

public abstract boolean isInstant()
Returns whether the effect of this type happens once, immediately.

Returns:
  whether this type is normally instant

### getColor

@NotNull public abstract @NotNull Color getColor()
Returns the color of this effect type.

Returns:
  the color

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### getById

@Deprecated @Nullable public static @Nullable PotionEffectType getById(int id)
Deprecated.
Magic value
Gets the effect type specified by the unique id.

Parameters:
  `id` - Unique ID to fetch
Returns:
  Resulting type, or null if not found.

### getByName

@Nullable public static @Nullable PotionEffectType getByName(@NotNull @NotNull String name)
Gets the effect type specified by the given name.

Parameters:
  `name` - Name of PotionEffectType to fetch
Returns:
  Resulting PotionEffectType, or null if not found.

### registerPotionEffectType

public static void registerPotionEffectType(@NotNull @NotNull PotionEffectType type)
Registers an effect type with the given object.

Generally not to be used from within a plugin.

Parameters:
  `type` - PotionType to register

### stopAcceptingRegistrations

public static void stopAcceptingRegistrations()
Stops accepting any effect type registrations.

### values

@NotNull public static @NotNull PotionEffectType[] values()
Returns an array of all the registered `PotionEffectType`s. This array is not necessarily in any particular order.

Returns:
  Array of types.