Skip to content

箭袋配置 quivers.yml

文件位置:

text
plugins/GTQuiver/quivers.yml

箭袋写在 quivers 下,节点名就是箭袋 ID。ID 不区分大小写,不能重复。

完整示例

yaml
quivers:
  ranger:
    provider-item: ""
    material: "LEATHER"
    data: 0
    custom-model-data: 10001
    name: "&a游侠箭袋"
    lore:
      - "&8大型箭袋"
      - "%binding%"
      - ""
      - "&7箭矢数量: &f%amount%"
      - "&7已用槽位: &f%stacks%&8/&f%capacity%"
      - "&7当前使用: &f%current_arrow%"
      - "&7箭矢详情:"
      - "%arrow_details%"
      - ""
      - "&e主手 Shift + 右键打开"
      - "&eShift + 左键切换箭矢"
    glow: false
    unbreakable: false
    item-flags: []
    enchantments: {}
    potion-effects: []
    slots: 27
    permission: "gtquiver.use"
    use-condition:
      min-level: 0
      worlds: []
      blocked-worlds: []
      game-modes: []
      gtcore-rule: {}
    accept:
      materials:
        - "ARROW"
        - "TIPPED_ARROW"
        - "SPECTRAL_ARROW"
        - "FIREWORK"
        - "FIREWORK_ROCKET"
      lore-any: []
      lore-all: []
      lore-regex: []
      name-contains: []
      custom-model-data: []
      gtcore-rule: {}

物品配置

provider-item

yaml
provider-item: ""

留空时使用 material 等字段创建。填写后通过 GTCore 物品提供器创建,例如:

yaml
provider-item: "mm:ranger_quiver"

前缀和物品 ID 以当前 GTCore 已接入的物品库为准。使用 provider-item 后,基础物品由物品库提供。

material

yaml
material: "LEATHER"

使用 Bukkit 材质名。没有配置 provider-item 时,材质无效会导致重载失败。

跨版本使用时优先选择各版本都存在的材质。高版本专用材质不能直接用于 1.12.2。

data

yaml
data: 0

旧版本物品数据值,主要用于 1.12.2。

custom-model-data

yaml
custom-model-data: 10001

设置为 0 时不写入。1.12.2 不支持原生 CustomModelData。

name、lore

yaml
name: "&a游侠箭袋"
lore:
  - "&7箭矢数量: &f%amount%"
  - "&7当前使用: &f%current_arrow%"
  - "%arrow_details%"

支持 & 颜色代码。

Lore 变量:

变量内容
%amount%箭袋内物品总数
%stacks%已占用槽位数
%capacity%箭袋容量
%remaining%剩余空槽数
%id%箭袋 ID
%name%箭袋名称
%current_arrow%当前首选箭名称
%arrow_details%config.yml 展开的箭种明细
%binding%config.yml 显示绑定玩家或未绑定状态

没有写 %current_arrow%%arrow_details%%binding% 时,插件会在 Lore 末尾补充对应内容。

其他物品字段

yaml
glow: false
unbreakable: false
item-flags:
  - "HIDE_ATTRIBUTES"
enchantments:
  DURABILITY: 1
potion-effects: []
配置说明
glow附魔光效
unbreakable不可破坏标记
item-flagsBukkit ItemFlag 名称
enchantmentsBukkit 附魔名和等级
potion-effects药水物品数据,普通箭袋一般留空

药水格式:

text
效果:持续时间tick:等级

等级从 0 开始。

slots

yaml
slots: 27

范围 1 - 54。GUI 自动向上补到完整行,超出实际容量的格子使用 config.yml 中的填充物。

容量GUI 大小
1 - 99
10 - 1818
19 - 2727
28 - 3636
37 - 4545
46 - 5454

已经发放的箭袋不要直接降低容量。新容量小于原容量时,旧箭袋会拒绝读取,避免多余物品被删除。

permission

yaml
permission: "gtquiver.use"

这一种箭袋的使用权限。留空表示不检查。

可以按箭袋单独设置:

yaml
permission: "server.quiver.ranger"

use-condition

yaml
use-condition:
  min-level: 0
  worlds: []
  blocked-worlds: []
  game-modes: []
  gtcore-rule: {}
配置说明
min-level最低原版经验等级
worlds允许世界,空列表不限制
blocked-worlds禁止世界
game-modes允许游戏模式,空列表不限制
gtcore-ruleGTCore 玩家条件

游戏模式使用:

text
SURVIVAL
CREATIVE
ADVENTURE
SPECTATOR

多个非空条件需要同时满足。

拥有以下权限时绕过 use-condition

text
gtquiver.bypass.condition

该权限不绕过箭袋自己的 permission

accept

yaml
accept:
  materials: ["ARROW", "TIPPED_ARROW", "SPECTRAL_ARROW"]
  lore-any: []
  lore-all: []
  lore-regex: []
  name-contains: []
  custom-model-data: []
  gtcore-rule: {}

所有非空项目需要同时满足。空列表不限制。

materials

yaml
materials:
  - "ARROW"
  - "TIPPED_ARROW"
  - "SPECTRAL_ARROW"

材质白名单。弩用烟花按服务端版本填写 FIREWORKFIREWORK_ROCKET

lore-any

yaml
lore-any:
  - "箭矢"
  - "Arrow"

Lore 包含任意一项即可。比较时忽略颜色和大小写。

lore-all

yaml
lore-all:
  - "职业箭矢"
  - "可装入箭袋"

列表内每一项都要在 Lore 中找到。

lore-regex

yaml
lore-regex:
  - "^品质: (普通|稀有|史诗)$"

任意一行 Lore 匹配任意一个正则即可。YAML 中带反斜杠时建议使用单引号。

name-contains

yaml
name-contains:
  - "箭"

物品名称包含任意一项即可,忽略颜色和大小写。

custom-model-data

yaml
custom-model-data:
  - 10011
  - 10012

CustomModelData 精确匹配。

gtcore-rule

yaml
gtcore-rule: {}

按 GTCore 当前支持的物品规则填写。

箭种合并

材质、名称、Lore、附魔、药水、CustomModelData 和 NBT 都相同,只是数量不同的箭会合并显示。

任意物品数据不同都会视为另一个箭种。当前箭始终是箭袋中从左到右的第一种。

发放

text
/gtq give <玩家> <箭袋ID> [数量] [bound|unbound]

bound 绑定给接收玩家,unbound 发放非绑定箭袋。不写模式时默认为 unbound

绑定箭袋只允许绑定玩家拾取、打开、切箭、射击和自动收箭。归属按玩家 UUID 判断,改名不影响绑定。

每个箭袋的内容互相独立。批量发放使用命令,不要复制已经装过箭的现成箭袋。

箭袋不能放入另一个箭袋。