Interface Objective


public interface Objective
An objective on a scoreboard that can show scores specific to entries. This objective is only relevant to the display of the associated scoreboard.
  • Method Details

    • getName

      @NotNull String getName()
      Gets the name of this Objective
      Returns:
      this objective's name
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getDisplayName

      @NotNull String getDisplayName()
      Gets the name displayed to players for this objective
      Returns:
      this objective's display name
      Throws:
      IllegalStateException - if this objective has been unregistered
    • setDisplayName

      void setDisplayName(@NotNull String displayName)
      Sets the name displayed to players for this objective.
      Parameters:
      displayName - Display name to set
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getCriteria

      @Deprecated @NotNull String getCriteria()
      Deprecated.
      Gets the criteria this objective tracks.
      Returns:
      this objective's criteria
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getTrackedCriteria

      @NotNull Criteria getTrackedCriteria()
      Gets the criteria this objective tracks.
      Returns:
      this objective's criteria
      Throws:
      IllegalStateException - if this objective has been unregistered
    • isModifiable

      boolean isModifiable()
      Gets if the objective's scores can be modified directly by a plugin.
      Returns:
      true if scores are modifiable
      Throws:
      IllegalStateException - if this objective has been unregistered
      See Also:
    • getScoreboard

      @Nullable Scoreboard getScoreboard()
      Gets the scoreboard to which this objective is attached.
      Returns:
      Owning scoreboard, or null if it has been unregistered
    • unregister

      void unregister()
      Unregisters this objective from the scoreboard.
      Throws:
      IllegalStateException - if this objective has been unregistered
    • setDisplaySlot

      void setDisplaySlot(@Nullable DisplaySlot slot)
      Sets this objective to display on the specified slot for the scoreboard, removing it from any other display slot.
      Parameters:
      slot - display slot to change, or null to not display
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getDisplaySlot

      @Nullable DisplaySlot getDisplaySlot()
      Gets the display slot this objective is displayed at.
      Returns:
      the display slot for this objective, or null if not displayed
      Throws:
      IllegalStateException - if this objective has been unregistered
    • setRenderType

      void setRenderType(@NotNull RenderType renderType)
      Sets manner in which this objective will be rendered.
      Parameters:
      renderType - new render type
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getRenderType

      @NotNull RenderType getRenderType()
      Sets manner in which this objective will be rendered.
      Returns:
      the render type
      Throws:
      IllegalStateException - if this objective has been unregistered
    • getScore

      @Deprecated @NotNull Score getScore(@NotNull OfflinePlayer player)
      Deprecated.
      Scoreboards can contain entries that aren't players
      Gets a player's Score for an Objective on this Scoreboard
      Parameters:
      player - Player for the Score
      Returns:
      Score tracking the Objective and player specified
      Throws:
      IllegalStateException - if this objective has been unregistered
      See Also:
    • getScore

      @NotNull Score getScore(@NotNull String entry)
      Gets an entry's Score for an Objective on this Scoreboard.
      Parameters:
      entry - Entry for the Score
      Returns:
      Score tracking the Objective and entry specified
      Throws:
      IllegalStateException - if this objective has been unregistered
      IllegalArgumentException - if entry is longer than 32767 characters.