Klasse ArenaClass

java.lang.Object
de.delinkedde.mobarenareborn.classes.ArenaClass

public final class ArenaClass extends Object
A configured class: its role, starting loadout and the level rewards that unlock as it levels.

Level rewards are keyword strings (for example health_boost_1, ability_taunt) keyed by the level at which they are granted. Rewards are cumulative: keywordsUpTo(int) returns every keyword granted up to and including a level.

  • Konstruktordetails

    • ArenaClass

      public ArenaClass(@NotNull @NotNull String name, @NotNull @NotNull Role role, @NotNull @NotNull Loadout loadout, @NotNull @NotNull NavigableMap<Integer,List<String>> levelRewards, int maxLevel, @Nullable @Nullable String ability, @Nullable @Nullable String abilityKey, @Nullable @Nullable Material icon, @NotNull @NotNull List<String> effects, int limit, @NotNull @NotNull String petName)
      Parameter:
      name - the lower-case class identifier
      role - the class role
      loadout - the starting loadout
      levelRewards - the rewards keyed by the level at which they unlock
      maxLevel - the level cap
      ability - the active ability id, or null if the class has none
      abilityKey - the trigger key token (for example F), or null
      icon - the menu icon material, or null to fall back to the role default
      effects - permanent potion effects applied as part of the kit (name or name:amplifier)
      limit - the maximum number of players that may play this class per round; 0 means unlimited
      petName - the name template for companions spawned from kit items (<player-name> placeholder); empty for no name
  • Methodendetails

    • petName

      @NotNull public @NotNull String petName()
      Gibt zurück:
      the companion name template (<player-name> placeholder); empty for none
    • effects

      @NotNull public @NotNull List<String> effects()
      Gibt zurück:
      the permanent kit potion effects (name or name:amplifier)
    • limit

      public int limit()
      Gibt zurück:
      the per-round player limit for this class; 0 means unlimited
    • name

      @NotNull public @NotNull String name()
      Gibt zurück:
      the lower-case class identifier
    • role

      @NotNull public @NotNull Role role()
      Gibt zurück:
      the class role
    • loadout

      @NotNull public @NotNull Loadout loadout()
      Gibt zurück:
      the starting loadout
    • maxLevel

      public int maxLevel()
      Gibt zurück:
      the level cap
    • ability

      @Nullable public @Nullable String ability()
      Gibt zurück:
      the active ability id, or null if the class has none
    • abilityKey

      @Nullable public @Nullable String abilityKey()
      Gibt zurück:
      the ability trigger key token, or null
    • icon

      @Nullable public @Nullable Material icon()
      Gibt zurück:
      the configured menu icon material, or null to use the role default
    • keywordsUpTo

      @NotNull public @NotNull List<String> keywordsUpTo(int level)
      Returns every reward keyword granted up to and including the given level.
      Parameter:
      level - the level to collect rewards for
      Gibt zurück:
      the cumulative list of reward keywords, in level order
    • abilityUnlockLevel

      public int abilityUnlockLevel(@NotNull @NotNull String abilityId)
      Returns the level at which the given ability becomes usable.

      An ability is gated when a reward keyword ability_<id> is configured among the class's level rewards; the unlock level is the level at which that keyword first appears. When no such keyword is configured the ability is available from level one, preserving the default behaviour for classes that do not opt into gating.

      Parameter:
      abilityId - the ability identifier
      Gibt zurück:
      the unlock level, or 1 when the ability is not gated