Interface IScoreboard

All Known Implementing Classes:
Scoreboard

@PowerNukkitXOnly @Since("1.19.30-r1") public interface IScoreboard
计分板对象 可被发送到任何实现了IScoreboardViewer接口的对象上
  • Method Details

    • getObjectiveName

      String getObjectiveName()
      Returns:
      此计分板的标识名称
    • getDisplayName

      String getDisplayName()
      Returns:
      此计分板的显示名称
    • getCriteriaName

      String getCriteriaName()
      Returns:
      此计分板的 “准则” (eg: dummy)
    • getSortOrder

      SortOrder getSortOrder()
      Returns:
      此计分板的排序规则
    • setSortOrder

      void setSortOrder(SortOrder order)
      设置计分板的排序规则
      Parameters:
      order - 排序规则
    • getAllViewers

      Set<IScoreboardViewer> getAllViewers()
      Returns:
      此计分板的所有观察者
    • getViewers

      Set<IScoreboardViewer> getViewers(DisplaySlot slot)
      Parameters:
      slot - 目标槽位
      Returns:
      此计分板目标槽位的观察者
    • removeViewer

      boolean removeViewer(IScoreboardViewer viewer, DisplaySlot slot)
      删除此计分板目标槽位中的某个观察者
      Parameters:
      viewer - 目标观察者
      slot - 目标槽位
      Returns:
      是否删除成功
    • addViewer

      boolean addViewer(IScoreboardViewer viewer, DisplaySlot slot)
      向此计分板目标槽位中添加一个观察者
      Parameters:
      viewer - 目标观察者
      slot - 目标槽位
      Returns:
      是否添加成功
    • containViewer

      boolean containViewer(IScoreboardViewer viewer, DisplaySlot slot)
      检查此计分板目标槽位中是否有特定观察者
      Parameters:
      viewer - 目标观察者
      slot - 目标槽位
      Returns:
      是否存在
    • getLines

      Returns:
      此计分板的所有行
    • getLine

      @Nullable IScoreboardLine getLine(IScorer scorer)
      获取追踪对象在此计分板上对应的行(如果存在)
      Parameters:
      scorer - 追踪对象
      Returns:
      对应行
    • addLine

      boolean addLine(IScoreboardLine line)
      为此计分板添加一个行
      Parameters:
      line - 目标行
      Returns:
      是否添加成功
    • addLine

      boolean addLine(IScorer scorer, int score)
      为此计分板添加一个行
      Parameters:
      scorer - 追踪对象
      score - 分数
      Returns:
      是否添加成功
    • addLine

      boolean addLine(String text, int score)
      为插件提供的便捷的计分板显示接口
      Parameters:
      text - FakeScorer的名称
      score - 分数
      Returns:
      是否添加成功
    • removeLine

      boolean removeLine(IScorer scorer)
      删除追踪对象在此计分板上对应的行(如果存在)
      Parameters:
      scorer - 目标追踪对象
      Returns:
      是否删除成功
    • removeAllLine

      boolean removeAllLine(boolean send)
      删除计分板所有行
      Parameters:
      send - 是否发送到观察者
      Returns:
      是否删除成功
    • containLine

      boolean containLine(IScorer scorer)
      检查追踪对象在此计分板上是否有记录
      Parameters:
      scorer - 目标追踪对象
      Returns:
      是否存在
    • updateScore

      void updateScore(IScoreboardLine update)
      向所有观察者发送新的分数
      Parameters:
      update - 需要更新的行
    • resend

      void resend()
      向所有观察者重新发送此计分板以及行信息
      例如当对计分板进行了大量的更改后,调用此方法
      可节省大量带宽
    • setLines

      void setLines(List<String> lines)
      为插件提供的快捷接口
      按照List顺序设置计分板的内容 (使用FakeScorer作为追踪对象)
      会覆盖之前的所有行
      Parameters:
      lines - 需要设置的字符串内容
    • setLines

      void setLines(Collection<IScoreboardLine> lines)
      按照List顺序设置计分板的内容
      会覆盖之前的所有行
      Parameters:
      lines - 需要设置的行内容
    • shouldCallEvent

      boolean shouldCallEvent()
      Returns:
      对此计分板的更改是否会产生事件