Interface Raid


public interface Raid
Represents a raid event.
  • Method Details

    • isStarted

      boolean isStarted()
      Get whether this raid started.
      Returns:
      whether raid is started
    • getActiveTicks

      long getActiveTicks()
      Gets the amount of ticks this raid has existed.
      Returns:
      active ticks
    • getBadOmenLevel

      int getBadOmenLevel()
      Gets the Bad Omen level of this raid.
      Returns:
      Bad Omen level (between 0 and 5)
    • setBadOmenLevel

      void setBadOmenLevel(int badOmenLevel)
      Sets the Bad Omen level.
      If the level is higher than 1, there will be an additional wave that as strong as the final wave.
      Parameters:
      badOmenLevel - new Bad Omen level (from 0-5)
      Throws:
      IllegalArgumentException - if invalid Bad Omen level
    • getLocation

      @NotNull Location getLocation()
      Gets the center location where the raid occurs.
      Returns:
      location
    • getStatus

      @NotNull Raid.RaidStatus getStatus()
      Gets the current status of the raid.
      Do not use this method to check if the raid has been started, call isStarted() instead.
      Returns:
      Raids status
    • getSpawnedGroups

      int getSpawnedGroups()
      Gets the number of raider groups which have spawned.
      Returns:
      total spawned groups
    • getTotalGroups

      int getTotalGroups()
      Gets the number of raider groups which would spawn.
      This also includes the group which spawns in the additional wave (if present).
      Returns:
      total groups
    • getTotalWaves

      int getTotalWaves()
      Gets the number of waves in this raid (exclude the additional wave).
      Returns:
      number of waves
    • setTotalWaves

      void setTotalWaves(int waves)
      Sets the total number of waves in this raid.
      Note: There is an automatic raid timeout that will cancel the raid entirely. At the time of writing, it is 48,000 ticks or 40 minutes. Please keep that in mind when changing the total number of waves, as your raid may be cut short without reward.
      Parameters:
      waves - new number of waves
      Throws:
      IllegalArgumentException - if total waves are less than 1
    • getTotalHealth

      float getTotalHealth()
      Gets the sum of all raider's health.
      Returns:
      total raiders health
    • getHeroes

      @NotNull Set<UUID> getHeroes()
      Get the UUID of all heroes in this raid.
      Returns:
      a set of unique ids
    • getRaiders

      @NotNull List<Raider> getRaiders()
      Gets all remaining Raider in the present wave.
      Returns:
      a list of current raiders