# Boss 条

## 关于

![](https://camo.githubusercontent.com/a5fe7c465d7e8126115a10864cadac66f4c7136b780983341184067300e33ec7/68747470733a2f2f696d616765732d6578742d322e646973636f72646170702e6e65742f65787465726e616c2f304835763567634b31326a6d2d4f5f6b6c6a6c782d6959644a315133774273595f446368374a725f61416b2f68747470732f696d6167652e70726e747363722e636f6d2f696d6167652f783456657749756952774f2d584c47547644786657772e706e67)\
Boss 条是在屏幕最上方的一条栏。它本来用于显示凋零 & 末影龙的血量，但是插件将它的作用拓宽了。在 1.9 版本 Mojang 新增了可以不需要实体就可以修改 Boss 条的包(Packet)，并且还可以修改它的颜色和风格。

## 启用

要启用该功能，打开 **config.yml** 并设置

```
bossbar:
  enabled: true
```

## 配置

### 配置 Boss 条

```
bossbar:
  bars:
    MyBossbar:
      style: "PROGRESS"
      color: "%animation:barcolors%"
      progress: "100"
      text: "&fWebsite: &bwww.domain.com"
```

每个 Boss 条拥有 4 个属性:

#### style（风格）

Boss 条划风的样式，仅在 1.9+ 以上版本提供。\
你可以选择 5 种风格: **PROGRESS**, **NOTCHED\_6**, **NOTCHED\_10**, **NOTCHED\_12** 和 **NOTCHED\_20**\
![](https://camo.githubusercontent.com/72a34a87f5aba093bf335cc5bbc6aa90ad37694ed1bd3a825284ed3e2a17e07d/68747470733a2f2f696d616765732d6578742d312e646973636f72646170702e6e65742f65787465726e616c2f794d754a4e6b736e756c4f645f5a74493379477736436151686f6e2d657756487371614d7a54385263476b2f68747470732f696d6167652e70726e747363722e636f6d2f696d6167652f467a57537673616c54573659565250504b336f6139672e706e67)\
这是由 Mojang 固定提供的，没有其他的选项可以选择。其他使用 Bukkit API 的 Boss 条插件可能只是名字不一样，但它们的原理和 TAB 一样。所以你不必为求“自定义风格"的BOSS条插件而到处寻找。

#### color（颜色）

Boss 条的颜色，仅在 1.9+ 以上版本提供。旧版本将只会看到 PINK 色。\
你可以选择 7 种颜色: **BLUE**, **GREEN**, **PINK**, **PURPLE**, **RED**, **WHITE** 和 **YELLOW**\
![](https://camo.githubusercontent.com/47d918144e9ba44abc1d4cc7caa0fd6f55eab6d5ed5ca88e44fc1291e9645c54/68747470733a2f2f696d616765732d6578742d322e646973636f72646170702e6e65742f65787465726e616c2f4d774e4776744e5430767370625f7869475579785f57514e617976536d62386830536b3457375678666f632f68747470732f696d6167652e70726e747363722e636f6d2f696d6167652f664d376b71355849524369544e356e2d6666704e79412e706e67)\
这是由 Mojang 固定提供的，没有其他的选项可以选择。

#### progress（百分比）

从 0 到 100 数字，支持小数。大于 100 的数字将会导致显示错误。\
![](https://camo.githubusercontent.com/6d754d11af65be54574cfd75b9ade011a6d345f1b3e715a00cc61fd7c29f3576/68747470733a2f2f696d616765732d6578742d322e646973636f72646170702e6e65742f65787465726e616c2f43493544415275706a374e4a777564506b6d333835696442652d7068615a33444d4b7767594376643738732f68747470732f696d6167652e70726e747363722e636f6d2f696d6167652f327157764b4142775341575745575373466d386f59772e706e67)\
如果你想要显示一个变量符的值的进度，那么你可以使用来自 PlaceholderAPI  的 [Math Expansion](https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/Placeholders#math) 并设置这样的变量符: `%math_{变量符当前的值}/{变量符最大的值}*100%` 或者 `%math_{变量符当前的值}/<变量符最大的值>*100%` 这样你的最大值就可以固定为 100 了。

注意:\
将上面文本的 `{}` 符号内替换你真正需要的变量符（你不能在 math 变量符中再套娃 `%placeholder%` 样式的变量符，因此需要这个符号代替原来的 % 符号），将 `<变量符最大的值>` 替换为一个正整数。（例如20）

展示玩家血量的示例: `%math_{player_health}/20*100%` 或者  `%math_{player_health}/{player_max_health}*100%`。

#### text（文本）

Boss 条的文本。长度是没有限制的，支持 1.16+ 的 RGB 代码。不支持换行。

**所有 4 种属性都支持变量符。这也包括动画，可以用于改变 Boss 条的文本或者缓慢出现特效。**

在下面的示例中，Boss条的文本将会在我们在动画中添加的四个文本之间切换: **animations.yml**

```
bossbarText:
  change-interval: 10000
  texts:
    - "&avote.domain.com"
    - "&a&nvote.domain.com"
    - "&5vote.domain.com"
    - "&5&nvote.domain.com"
```

**config.yml**

```
bossbar:
  bars:
    MyBossbar:
      style: "PROGRESS"
      color: "BLUE"
      progress: "100"
      text: "%animation:bossbarText%"
      announcement-bar: false
```

你也可以使用一些代表等级的变量符来使得 Boss 条看起来更加炫酷，取决于你。

#### announcement-bar

当设置成 true，Boss 条默认将不会显示，这一般代表这个 Boss 条用于公告。

```
bossbar:
  bars:
    MyBossbar:
      style: "PROGRESS"
      color: "BLUE"
      progress: "100"
      text: "Text"
      announcement-bar: true #false or undefined means it will be visible all the time
```

#### display-condition

玩家看到此 Boss 条必须满足的 [条件](https://docs.superiormc.cn/tab-wiki/functions/tiao-jian-bian-liang-fu)。公告（见下）出的 Boss 条同样需要检查玩家是否满足条件，玩家必须满足条件才会看到 Boss 条。当 Boss 条没有设置条件时，它会无条件的向所有玩家展示。

```
bossbar:
  bars:
    MyBossbar:
      style: "PROGRESS"
      color: "BLUE"
      progress: "100"
      text: "This bossbar is only visible in world 'world'"
      display-condition: "%world%=world"
```

### 公告指令

`/tab announce bar <name> <time>`\
`name` 是 bossbar.yml 文件内的 Boss条名称， `time` 是显示的时长。

当使用 Boss 条公告时，你将拥有一个新的变量符可以使用: `%countdown%` 它将显示该公告显示的剩余时间。

### 额外设置

`toggle-command: /bossbar`

玩家开关 Boss 条的指令。玩家需要 `tab.bossbar.toggle` 权限才能使用它。\
**注意:** 这个指令不会在指令自动补充框中出现，因为它不是一个真正注册的指令。注册的指令必须在插件中就已经决定好，不能动态修改。如果你想要解决这个问题，请自行定制插件。

`remember-toggle-choice: false`\
如果启用，切换计分板的指令偏好将会保存。玩家在重新加入、服务器重启等后依然保留该偏好。

`hidden-by-default: false`\
当启用后，Boss 条默认不显示，只有使用指令才会让其显示。

## **在指定世界、服务器禁用**

```
bossbar:
  disable-in-worlds:
    - disabledworld
  disable-in-servers:
    - disabledserver
```

要在除了所列的世界外禁用，只需添加 `WHITELIST` 关键词到列表中，这回导致该功能只会在所列的世界中启用。示例：

```
bossbar:
  disable-in-worlds:
    - WHITELIST
    - enabledworld
```

**注意**: 在指定服务器关闭只能在 BungeeCord 上使用，并且还需安装 [TAB-Bridge](https://www.mc-market.org/resources/21641) 插件到所有子服上。

## 在 <1.9 上的限制

* 如果 TAB 安装在 BungeeCord 上，则 Boss 条不会发送给玩家。
* 不提供选择颜色和风格功能。
* 如果进度条在 50% 及以下则会在显示方面有问题。(客户端bug)
* 同一时间只能显示一行。
* 如果你不在客户端关闭粒子效果显示，则会有雾效果。(仿佛在打BOSS)
* 在看着方块的时候可能不会显示。

## 额外信息

### 额外信息 1 - 隐藏 Boss 条的条

如果您想要隐藏 Boss条 本身而不包括它显示的文本，这是可能的，但不是从插件层面。你需要自己使用资源包来隐藏 Boss条，然后强制你的玩家使用该资源包。

笔者在另外一个教程 [ItemsAdder 使用教程](https://app.gitbook.com/o/ltUitSOaqxggZdbN6isw/s/fMGAfdqIe4KA9hVW04wr/) 对此有详细介绍，欢迎参考。
