Class LUMOS_FERVENS

java.lang.Object
net.pottercraft.ollivanders2.stationaryspell.O2StationarySpell
net.pottercraft.ollivanders2.stationaryspell.LUMOS_FERVENS
All Implemented Interfaces:
Serializable

public class LUMOS_FERVENS extends O2StationarySpell
Bluebell Flames produces harmless blue flames that are waterproof. These flames can be touched, penetrated, and held without burning the holder, though they can singe materials such as clothing and plants.

LUMOS_FERVENS

Since:
2.21.4
See Also:
  • Field Details

    • minRadiusConfig

      public static final int minRadiusConfig
      Minimum spell radius (2 blocks).
      See Also:
    • maxRadiusConfig

      public static final int maxRadiusConfig
      Maximum spell radius (2 blocks).
      See Also:
    • minDurationConfig

      public static final int minDurationConfig
      Minimum spell duration (5 minutes).
      See Also:
    • maxDurationConfig

      public static final int maxDurationConfig
      Maximum spell duration (2 hours).
      See Also:
    • baseBlockMaterial

      public static final org.bukkit.Material baseBlockMaterial
      The material for the base block when spell is active
    • fireBlockMaterial

      public static final org.bukkit.Material fireBlockMaterial
      The material for the fire when spell is active
  • Constructor Details

    • LUMOS_FERVENS

      public LUMOS_FERVENS(@NotNull @NotNull Ollivanders2 plugin)
      Simple constructor used for deserializing saved stationary spells at server start. Do not use to cast spell.
      Parameters:
      plugin - a callback to the MC plugin
    • LUMOS_FERVENS

      public LUMOS_FERVENS(@NotNull @NotNull Ollivanders2 plugin, @NotNull @NotNull UUID pid, @NotNull @NotNull org.bukkit.Location location, int radius, int duration)
      Constructs a new LUMOS_FERVENS spell cast by a player.

      Creates bluebell flames (soul fire) at the specified location with the given radius and duration. The flames are waterproof and prevent fire damage to entities within the protected area.

      Parameters:
      plugin - a callback to the MC plugin (not null)
      pid - the UUID of the player who cast the spell (not null)
      location - the center location of the spell (not null)
      radius - the radius for this spell (will be clamped to min/max values)
      duration - the duration of the spell in ticks (will be clamped to min/max values)
  • Method Details

    • getBaseBlock

      public org.bukkit.block.Block getBaseBlock()
      Get the base block for this spell
      Returns:
      the base block
    • getFireBlock

      public org.bukkit.block.Block getFireBlock()
      Get the fire block for this spell
      Returns:
      the fire block
    • upkeep

      public void upkeep()
      Start the flames if they have not been and age the spell each tick
      Specified by:
      upkeep in class O2StationarySpell
    • serializeSpellData

      @NotNull public @NotNull Map<String,String> serializeSpellData()
      Serialize all data specific to this spell so it can be saved.
      Returns:
      a map of the serialized data
    • checkSpellDeserialization

      public boolean checkSpellDeserialization()
      Checks if the spell was properly deserialized and has all required data.

      Verifies that the spell's player UUID, location, and original material have been properly restored from serialized data during server startup.

      Overrides:
      checkSpellDeserialization in class O2StationarySpell
      Returns:
      true if the spell has all required deserialized data, false otherwise