Package org.bukkit.entity
Interface AreaEffectCloud
- All Superinterfaces:
net.kyori.adventure.audience.Audience
,CommandSender
,Entity
,net.kyori.adventure.text.event.HoverEventSource<net.kyori.adventure.text.event.HoverEvent.ShowEntity>
,Metadatable
,Nameable
,Permissible
,PersistentDataHolder
,net.kyori.adventure.pointer.Pointered
,ServerOperator
Represents an area effect cloud which will imbue a potion effect onto
entities which enter it.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.bukkit.entity.Entity
Entity.Spigot
-
Method Summary
Modifier and TypeMethodDescriptionboolean
addCustomEffect(@NotNull PotionEffect effect, boolean overwrite)
Adds a custom potion effect to this cloud.void
Removes all custom potion effects from this cloud.Returns the potion data about the base potiongetColor()
Gets the color of this cloud.Gets an immutable list containing all custom potion effects applied to this cloud.int
Gets the duration which this cloud will exist for (in ticks).int
Gets the amount that the duration of this cloud will decrease by when it applies an effect to an entity.Gets the particle which this cloud will be composed offloat
Gets the initial radius of the cloud.float
Gets the amount that the radius of this cloud will decrease by when it applies an effect to an entity.float
Gets the amount that the radius of this cloud will decrease by each tick.int
Gets the time that an entity will be immune from subsequent exposure.Retrieve the original source of this cloud.int
Gets the time which an entity has to be exposed to the cloud before the effect is applied.boolean
Checks for a specific custom potion effect type on this cloud.boolean
Checks for the presence of custom potion effects.boolean
Removes a custom potion effect from this cloud.void
setBasePotionData(@NotNull PotionData data)
Sets the underlying potion datavoid
Sets the color of this cloud.void
setDuration(int duration)
Sets the duration which this cloud will exist for (in ticks).void
setDurationOnUse(int duration)
Sets the amount that the duration of this cloud will decrease by when it applies an effect to an entity.void
setParticle(@NotNull Particle particle)
Sets the particle which this cloud will be composed of<T> void
setParticle(@NotNull Particle particle, T data)
Sets the particle which this cloud will be composed ofvoid
setRadius(float radius)
Sets the initial radius of the cloud.void
setRadiusOnUse(float radius)
Sets the amount that the radius of this cloud will decrease by when it applies an effect to an entity.void
setRadiusPerTick(float radius)
Gets the amount that the radius of this cloud will decrease by each tick.void
setReapplicationDelay(int delay)
Sets the time that an entity will be immune from subsequent exposure.void
setSource(@Nullable ProjectileSource source)
Set the original source of this cloud.void
setWaitTime(int waitTime)
Sets the time which an entity has to be exposed to the cloud before the effect is applied.Methods inherited from interface net.kyori.adventure.audience.Audience
clearTitle, hideBossBar, openBook, openBook, playSound, playSound, playSound, resetTitle, sendActionBar, sendActionBar, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendPlayerListFooter, sendPlayerListFooter, sendPlayerListHeader, sendPlayerListHeader, sendPlayerListHeaderAndFooter, sendPlayerListHeaderAndFooter, showBossBar, showTitle, stopSound, stopSound
Methods inherited from interface org.bukkit.command.CommandSender
getName, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage
Methods inherited from interface org.bukkit.entity.Entity
addPassenger, addScoreboardTag, asHoverEvent, eject, fromMobSpawner, getBoundingBox, getChunk, getEntityId, getEntitySpawnReason, getFacing, getFallDistance, getFireTicks, getFreezeTicks, getHeight, getLastDamageCause, getLocation, getLocation, getMaxFireTicks, getMaxFreezeTicks, getNearbyEntities, getOrigin, getPassenger, getPassengers, getPistonMoveReaction, getPortalCooldown, getPose, getScoreboardTags, getServer, getTicksLived, getType, getUniqueId, getVehicle, getVelocity, getWidth, getWorld, hasGravity, isCustomNameVisible, isDead, isEmpty, isFrozen, isGlowing, isInBubbleColumn, isInLava, isInRain, isInsideVehicle, isInvulnerable, isInWater, isInWaterOrBubbleColumn, isInWaterOrRain, isInWaterOrRainOrBubbleColumn, isOnGround, isPersistent, isSilent, isTicking, isValid, isVisualFire, leaveVehicle, playEffect, remove, removePassenger, removeScoreboardTag, setCustomNameVisible, setFallDistance, setFireTicks, setFreezeTicks, setGlowing, setGravity, setInvulnerable, setLastDamageCause, setPassenger, setPersistent, setPortalCooldown, setRotation, setSilent, setTicksLived, setVelocity, setVisualFire, spigot, teleport, teleport, teleport, teleport, teleportAsync, teleportAsync
Methods inherited from interface net.kyori.adventure.text.event.HoverEventSource
asHoverEvent
Methods inherited from interface org.bukkit.metadata.Metadatable
getMetadata, hasMetadata, removeMetadata, setMetadata
Methods inherited from interface org.bukkit.Nameable
customName, customName, getCustomName, setCustomName
Methods inherited from interface org.bukkit.permissions.Permissible
addAttachment, addAttachment, addAttachment, addAttachment, getEffectivePermissions, hasPermission, hasPermission, isPermissionSet, isPermissionSet, recalculatePermissions, removeAttachment
Methods inherited from interface org.bukkit.persistence.PersistentDataHolder
getPersistentDataContainer
Methods inherited from interface net.kyori.adventure.pointer.Pointered
get, getOrDefault, getOrDefaultFrom, pointers
Methods inherited from interface org.bukkit.permissions.ServerOperator
isOp, setOp
-
Method Details
-
getDuration
int getDuration()Gets the duration which this cloud will exist for (in ticks).- Returns:
- cloud duration
-
setDuration
void setDuration(int duration)Sets the duration which this cloud will exist for (in ticks).- Parameters:
duration
- cloud duration
-
getWaitTime
int getWaitTime()Gets the time which an entity has to be exposed to the cloud before the effect is applied.- Returns:
- wait time
-
setWaitTime
void setWaitTime(int waitTime)Sets the time which an entity has to be exposed to the cloud before the effect is applied.- Parameters:
waitTime
- wait time
-
getReapplicationDelay
int getReapplicationDelay()Gets the time that an entity will be immune from subsequent exposure.- Returns:
- reapplication delay
-
setReapplicationDelay
void setReapplicationDelay(int delay)Sets the time that an entity will be immune from subsequent exposure.- Parameters:
delay
- reapplication delay
-
getDurationOnUse
int getDurationOnUse()Gets the amount that the duration of this cloud will decrease by when it applies an effect to an entity.- Returns:
- duration on use delta
-
setDurationOnUse
void setDurationOnUse(int duration)Sets the amount that the duration of this cloud will decrease by when it applies an effect to an entity.- Parameters:
duration
- duration on use delta
-
getRadius
float getRadius()Gets the initial radius of the cloud.- Returns:
- radius
-
setRadius
void setRadius(float radius)Sets the initial radius of the cloud.- Parameters:
radius
- radius
-
getRadiusOnUse
float getRadiusOnUse()Gets the amount that the radius of this cloud will decrease by when it applies an effect to an entity.- Returns:
- radius on use delta
-
setRadiusOnUse
void setRadiusOnUse(float radius)Sets the amount that the radius of this cloud will decrease by when it applies an effect to an entity.- Parameters:
radius
- radius on use delta
-
getRadiusPerTick
float getRadiusPerTick()Gets the amount that the radius of this cloud will decrease by each tick.- Returns:
- radius per tick delta
-
setRadiusPerTick
void setRadiusPerTick(float radius)Gets the amount that the radius of this cloud will decrease by each tick.- Parameters:
radius
- per tick delta
-
getParticle
Gets the particle which this cloud will be composed of- Returns:
- particle the set particle type
-
setParticle
Sets the particle which this cloud will be composed of- Parameters:
particle
- the new particle type
-
setParticle
Sets the particle which this cloud will be composed of- Type Parameters:
T
- type of particle data (seeParticle.getDataType()
- Parameters:
particle
- the new particle typedata
- the data to use for the particle or null, the type of this depends onParticle.getDataType()
-
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 cloud.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 cloud.- Parameters:
effect
- the potion effect to addoverwrite
- true if any existing effect of the same type should be overwritten- Returns:
- true if the effect was added as a result of this call
-
removeCustomEffect
Removes a custom potion effect from this cloud.- Parameters:
type
- the potion effect type to remove- Returns:
- true if the an effect was removed as a result of this call
-
hasCustomEffect
Checks for a specific custom potion effect type on this cloud.- Parameters:
type
- the potion effect type to check for- Returns:
- true if the potion has this effect
-
clearCustomEffects
void clearCustomEffects()Removes all custom potion effects from this cloud. -
getColor
Gets the color of this cloud. Will be applied as a tint to its particles.- Returns:
- cloud color
-
setColor
Sets the color of this cloud. Will be applied as a tint to its particles.- Parameters:
color
- cloud color
-
getSource
Retrieve the original source of this cloud.- Returns:
- the
ProjectileSource
that threw the LingeringPotion
-
setSource
Set the original source of this cloud.- Parameters:
source
- theProjectileSource
that threw the LingeringPotion
-