Interface FlaechenEffektWolke

All Superinterfaces:
BefehlAbsender, Berechtigtbar, BestaendigeDatenInhaber, MetadatenInhaber, Nennbar, ServerBetreiber, Wesen

public interface FlaechenEffektWolke extends Wesen
Represents an area effect cloud which will imbue a zaubertrank effect onto entities which enter it.
  • 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 wesen 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 wesen has to be exposed to the cloud before the effect is applied.
      Parameters:
      waitTime - wait time
    • getReapplicationDelay

      int getReapplicationDelay()
      Gets the time that an wesen will be immune from subsequent exposure.
      Returns:
      reapplication delay
    • setReapplicationDelay

      void setReapplicationDelay(int delay)
      Sets the time that an wesen 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 wesen.
      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 wesen.
      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 wesen.
      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 wesen.
      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

      @NotNull Partikel getParticle()
      Gets the particle which this cloud will be composed of
      Returns:
      particle the set particle type
    • setParticle

      void setParticle(@NotNull Partikel partikel)
      Sets the partikel which this cloud will be composed of
      Parameters:
      partikel - the new partikel type
    • setParticle

      <T> void setParticle(@NotNull Partikel partikel, @Nullable T data)
      Sets the partikel which this cloud will be composed of
      Type Parameters:
      T - type of partikel data (see Partikel.getDataType()
      Parameters:
      partikel - the new partikel type
      data - the data to use for the partikel or null, the type of this depends on Partikel.getDataType()
    • setBasePotionData

      @Deprecated void setBasePotionData(@NotNull PotionData data)
      Deprecated.
      Upgraded / extended potions are now their own ZaubertrankTyp use setBasePotionType(de.eimmer.zaubertrank.ZaubertrankTyp) instead.
      Sets the underlying zaubertrank data
      Parameters:
      data - PotionData to set the base zaubertrank state to
    • getBasePotionData

      @NotNull @Deprecated PotionData getBasePotionData()
      Deprecated.
      Upgraded / extended potions are now their own ZaubertrankTyp use getBasePotionType() instead.
      Returns the zaubertrank data about the base zaubertrank
      Returns:
      a PotionData object
    • setBasePotionType

      void setBasePotionType(@NotNull ZaubertrankTyp type)
      Sets the underlying zaubertrank type
      Parameters:
      type - ZaubertrankTyp to set the base zaubertrank state to
    • getBasePotionType

      @NotNull ZaubertrankTyp getBasePotionType()
      Returns the zaubertrank type about the base zaubertrank
      Returns:
      a ZaubertrankTyp object
    • hasCustomEffects

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

      @NotNull List<ZaubertrankEffekt> getCustomEffects()
      Gets an immutable list containing all custom zaubertrank effects applied to this cloud.

      Plugins should check that hasCustomEffects() returns true before calling this method.

      Returns:
      the immutable list of custom zaubertrank effects
    • addCustomEffect

      boolean addCustomEffect(@NotNull ZaubertrankEffekt effect, boolean overwrite)
      Adds a custom zaubertrank effect to this cloud.
      Parameters:
      effect - the zaubertrank effect to add
      overwrite - 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

      boolean removeCustomEffect(@NotNull ZaubertrankEffektTyp type)
      Removes a custom zaubertrank effect from this cloud.
      Parameters:
      type - the zaubertrank effect type to remove
      Returns:
      true if the an effect was removed as a result of this call
    • hasCustomEffect

      boolean hasCustomEffect(@Nullable ZaubertrankEffektTyp type)
      Checks for a specific custom zaubertrank effect type on this cloud.
      Parameters:
      type - the zaubertrank effect type to check for
      Returns:
      true if the zaubertrank has this effect
    • clearCustomEffects

      void clearCustomEffects()
      Removes all custom zaubertrank effects from this cloud.
    • getColor

      @NotNull Farbe getColor()
      Gets the color of this cloud. Will be applied as a tint to its particles.
      Returns:
      cloud color
    • setColor

      void setColor(@NotNull Farbe farbe)
      Sets the farbe of this cloud. Will be applied as a tint to its particles.
      Parameters:
      farbe - cloud farbe
    • getSource

      @Nullable ProjektilQuelle getSource()
      Retrieve the original source of this cloud.
      Returns:
      the ProjektilQuelle that threw the LingeringPotion
    • setSource

      void setSource(@Nullable ProjektilQuelle source)
      Set the original source of this cloud.
      Parameters:
      source - the ProjektilQuelle that threw the LingeringPotion