程序包 org.bukkit.scoreboard

# 接口 Objective

public interface Objective
代表单个计分板计分项, 可展示特定项目的分数. 此计分项只与`getScoreboard()`获取的计分板相关联.

- ## 方法概要

  修饰符和类型
  方法
  说明
  `@NotNull String`
  `getCriteria()`
  已过时。
  请使用 `getTrackedCriteria()`
  `@NotNull String`
  `getDisplayName()`
  获取此计分项展示给玩家的名称.
  `@Nullable DisplaySlot`
  `getDisplaySlot()`
  获取此计分项显示的位置.
  `@NotNull String`
  `getName()`
  获取记分项的名称.
  `@NotNull RenderType`
  `getRenderType()`
  获取计分项数值的渲染方式.
  `@NotNull Score`
  `getScore(@NotNull String entry)`
  获取某条项目的分数.
  `@NotNull Score`
  `getScore(@NotNull OfflinePlayer player)`
  已过时。
  计分板可包含非玩家项目
  `@Nullable Scoreboard`
  `getScoreboard()`
  获取此计分项附属的计分板.
  `@NotNull Criteria`
  `getTrackedCriteria()`
  获取此计分项跟踪的准则.
  `boolean`
  `isModifiable()`
  判断此计分项的分数能否被插件直接修改.
  `void`
  `setDisplayName(@NotNull String displayName)`
  设置此计分项展示给玩家的名称.
  `void`
  `setDisplaySlot(@Nullable DisplaySlot slot)`
  设置此计分项显示在指定位置, 并将其从原位置移除 (就是从A处移到B处的意思).
  `void`
  `setRenderType(@NotNull RenderType renderType)`
  设置计分项数值的渲染方式.
  `void`
  `unregister()`
  从这个计分板注销这个计分项.

- ## 方法详细资料

  - ### getName

    @NotNull @NotNull String getName()
    获取记分项的名称.

    原文:Gets the name of this Objective

    返回:
      记分项的名称
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getDisplayName

    @NotNull @NotNull String getDisplayName()
    获取此计分项展示给玩家的名称.

    原文:Gets the name displayed to players for this objective

    返回:
      计分项显示名
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### setDisplayName

    void setDisplayName(@NotNull @NotNull String displayName)
    设置此计分项展示给玩家的名称.

    原文:Sets the name displayed to players for this objective.

    参数:
      `displayName` - 计分项显示名
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getCriteria

    @Deprecated @NotNull @NotNull String getCriteria()
    已过时。
    请使用 `getTrackedCriteria()`
    获取此计分项跟踪的准则.

    原文:Gets the criteria this objective tracks.

    返回:
      计分项的准则
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getTrackedCriteria

    @NotNull @NotNull Criteria getTrackedCriteria()
    获取此计分项跟踪的准则.

    原文:Gets the criteria this objective tracks.

    返回:
      计分项的准则
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### isModifiable

    boolean isModifiable()
    判断此计分项的分数能否被插件直接修改.

    原文:Gets if the objective's scores can be modified directly by a plugin.

    返回:
      若可修改则为true
    抛出:
      `IllegalStateException` - 若此计分项已被注销
    另请参阅:
      - `Criterias.HEALTH`

  - ### getScoreboard

    @Nullable @Nullable Scoreboard getScoreboard()
    获取此计分项附属的计分板.

    原文:Gets the scoreboard to which this objective is attached.

    返回:
      所属的计分板, 如果此计分项已被`注销`则为 null

  - ### unregister

    void unregister()
    从这个计分板注销这个计分项.

    原文:Unregisters this objective from the `scoreboard.`

    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### setDisplaySlot

    void setDisplaySlot(@Nullable @Nullable DisplaySlot slot)
    设置此计分项显示在指定位置, 并将其从原位置移除 (就是从A处移到B处的意思).

    原文:Sets this objective to display on the specified slot for the scoreboard, removing it from any other display slot.

    参数:
      `slot` - 显示的位置, null 为不显示/隐藏
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getDisplaySlot

    @Nullable @Nullable DisplaySlot getDisplaySlot()
    获取此计分项显示的位置.

    原文:Gets the display slot this objective is displayed at.

    返回:
      显示位置, 若不显示则为 null
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### setRenderType

    void setRenderType(@NotNull @NotNull RenderType renderType)
    设置计分项数值的渲染方式.

    原文:Sets manner in which this objective will be rendered.

    参数:
      `renderType` - 渲染方式
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getRenderType

    @NotNull @NotNull RenderType getRenderType()
    获取计分项数值的渲染方式.

    原文:Sets manner in which this objective will be rendered.

    返回:
      渲染方式
    抛出:
      `IllegalStateException` - 若此计分项已被注销

  - ### getScore

    @Deprecated @NotNull @NotNull Score getScore(@NotNull @NotNull OfflinePlayer player)
    已过时。
    计分板可包含非玩家项目
    获取某玩家的分数.

    原文:Gets a player's Score for an Objective on this Scoreboard

    参数:
      `player` - 玩家名
    返回:
      指定玩家的分数
    抛出:
      `IllegalStateException` - 若此计分项已被注销
    另请参阅:
      - `getScore(String)`

  - ### getScore

    @NotNull @NotNull Score getScore(@NotNull @NotNull String entry)
    获取某条项目的分数.

    原文:Gets an entry's Score for an Objective on this Scoreboard.

    参数:
      `entry` - 项目名
    返回:
      指定项目的分数
    抛出:
      `IllegalStateException` - 若此计分项已被注销
      `IllegalArgumentException` - 若 entry 长度超过 32767 个字符