Class PhaseBuilder.BorderConfigBuilder

java.lang.Object
dev.itsharshxd.zentrix.api.phase.PhaseBuilder.BorderConfigBuilder
Enclosing class:
PhaseBuilder

public static class PhaseBuilder.BorderConfigBuilder extends Object
Builder for configuring border settings.
  • Constructor Details

    • BorderConfigBuilder

      public BorderConfigBuilder()
  • Method Details

    • doShrinkage

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder doShrinkage(boolean doShrinkage)
      Sets whether the border shrinks during this phase.
      Parameters:
      doShrinkage - true to enable shrinkage
      Returns:
      This builder for chaining
    • shrinkTo

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder shrinkTo(double size)
      Sets the target border size after shrinkage.
      Parameters:
      size - The target diameter in blocks
      Returns:
      This builder for chaining
    • shrinkDuration

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder shrinkDuration(int seconds)
      Sets the duration of the border shrink animation.
      Parameters:
      seconds - The shrink duration in seconds
      Returns:
      This builder for chaining
    • damagePerBlock

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder damagePerBlock(double damage)
      Sets the damage dealt per block when outside the border.
      Parameters:
      damage - Damage per block per second
      Returns:
      This builder for chaining
    • warningTime

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder warningTime(int seconds)
      Sets the warning time before the phase ends.
      Parameters:
      seconds - Seconds before phase ends to show warning
      Returns:
      This builder for chaining
    • validate

      public void validate() throws IllegalStateException
      Validates the border configuration.
      Throws:
      IllegalStateException - if the configuration is invalid
    • copy

      @NotNull public @NotNull PhaseBuilder.BorderConfigBuilder copy()
      Creates a copy of this border config builder.
      Returns:
      A new BorderConfigBuilder with the same settings
    • isDoShrinkage

      public boolean isDoShrinkage()
    • getShrinkTo

      public double getShrinkTo()
    • getShrinkDuration

      public int getShrinkDuration()
    • getDamagePerBlock

      public double getDamagePerBlock()
    • getWarningTime

      public int getWarningTime()