Skip to content

BungeeCord 记分板 (无 API)(BungeeCord Scoreboard (Not API))

Mouse edited this page Apr 23, 2017 · 1 revision

BungeeCord 记分板 (无 API)

@md_5 和 @Thinkofdeath 创建 Bungeecord 记分板 API (net.md_5.bungee.api.score.*) 很长时间了。但它还没有准备好使用。不过他们已经实现了一些包装。所以我们可以用它们来创建记分板。在下面的代码示例中 p 表示 ProxiedPlayer 对象。

目录

  • 记分板是如何工作的?
  • 创建一个变量
  • 创建或删除一个分数
  • 显示记分板

记分板是如何工作的?

通过 BungeeCord 创建记分板,了解其如何工作是非常重要的。最好的方式是在这里

创建一个变量

现在我们知道记分板是如何工作了。首先我们需要创建一个变量(译者注:objective没有准确的翻译,另有译作"目标")

ScoreboardObjective objective = new ScoreboardObjective("test", "Test", "integer", (byte) 0);
p.unsafe().sendPacket(objective);

解释:

  • "test" 是记分板的唯一名称
  • "Test" 是记分板显示的名称
  • "integer" 或者使用 "hearts" - 更多信息
  • 0 - 0 表示创建记分板。1 表示移除记分板。2 表示更新显示文本。

创建或删除一个分数

ScoreboardScore score = new ScoreboardScore("Hallo", (byte) 0, "test", 0);
p.unsafe().sendPacket(score);

解释:

  • "Hallo" 是要更新或删除的分数的名称
  • 0 - 0 表示创建或更新一个分数。1 表示移除一个分数。
  • "test" 是分数所属的变量的名称
  • 0 - 是显示在条目旁边的分数

显示记分板

现在客户端知道这个记分板的所有信息了,但是我们必须告诉客户端显示这个记分板。

ScoreboardDisplay display = new ScoreboardDisplay((byte) 1, "test");
p.unsafe().sendPacket(display);

解释:

  • 1 - 记分板的位置。0: 列表,1: 侧边栏,2: 名字下方。
  • "test" - 要显示的记分板的唯一名称。

就是这样,看起来非常简单。