pluginiPlugin

物品分组

组织和管理你的自定义物品

概述

物品分组系统让你可以将相关的物品组织到一起,方便管理和浏览。通过分组,你可以创建层级结构的物品目录,让玩家更容易找到需要的物品。

基础概念

什么是物品分组

物品分组就是将物品按照类型、用途或其他标准进行分类整理。每个分组可以包含多个物品,也可以包含子分组,形成树状结构。

分组的作用

  • 整理物品:将大量物品按类别分组管理
  • 方便浏览:玩家可以通过分组菜单快速找到物品
  • 层级管理:支持多级分组,创建复杂的物品目录

创建物品分组

方法一:文件夹分组

最简单的分组方式是使用文件夹结构:

swords.yml [剑类物品]
bows.yml [弓类物品]
helmets.yml [头盔]
chestplates.yml [胸甲]
potions.yml [药水]
food.yml [食物]

系统会自动根据文件夹结构创建分组,文件夹名称就是分组名称。

方法二:配置文件分组

在 YAML 文件中使用 __group__ 节点自定义分组:

# weapons.yml
__group__:
  name: '武器装备'
  priority: 1
  display:
    icon: diamond_sword
    name: '&c武器装备'
    lore:
      - '&7各种强力的武器'
 
# 分组内的物品
magic_sword:
  icon: diamond_sword
  name:
    item_name: '&6魔法剑'
 
fire_bow:
  icon: bow
  name:
    item_name: '&c烈焰弓'

分组配置选项

基础配置

配置项说明示例
name分组显示名称'武器装备'
priority排序优先级(数字越小越靠前)1
display分组在菜单中的显示图标见下方示例

显示配置

__group__:
  name: '传说装备'
  priority: 1
  display:
    icon: diamond_chestplate
    name: '&6传说装备'
    lore:
      - '&7稀有的传说级装备'
      - '&7点击查看所有物品'

分组层级结构

多级分组

你可以创建多层嵌套的分组结构:

melee.yml [近战武器]
ranged.yml [远程武器]
light.yml [轻甲]
heavy.yml [重甲]
potions.yml [药水]
scrolls.yml [卷轴]

系统会自动处理父子关系,生成完整的路径结构。

分组菜单系统

自动生成的分组菜单

系统会自动为分组创建可浏览的菜单界面:

  • 分组图标:显示分组的代表性图标
  • 物品数量:显示分组内包含的物品数量
  • 层级导航:支持在不同层级间切换

使用分组菜单

玩家可以通过以下命令打开分组菜单:

# 打开根分组菜单
/zaphkiel list
 
# 打开指定分组菜单
/zaphkiel list weapons

分组显示图标

自动图标生成

如果没有配置自定义图标,系统会自动生成分组图标:

  • 有物品时:随机选择分组内的一个物品作为图标
  • 无物品时:使用默认的箱子矿车图标
  • 显示信息:自动添加分组名称和物品数量

自定义图标

你可以在分组配置中自定义图标:

__group__:
  name: '魔法物品'
  display:
    icon: enchanted_book
    name: '&d魔法物品'
    lore:
      - '&7充满魔力的神秘物品'
      - '&7包含 <item_count> 个物品'

实用分组示例

按类型分组

# weapons.yml
__group__:
  name: '武器'
  priority: 1
 
# 剑类武器
iron_sword:
  icon: iron_sword
  name:
    item_name: '&7铁剑'
 
diamond_sword:
  icon: diamond_sword
  name:
    item_name: '&b钻石剑'

按等级分组

# legendary_items.yml
__group__:
  name: '传说物品'
  priority: 1
 
legendary_sword:
  icon: diamond_sword
  name:
    item_name: '&6传说之剑'
  data:
    tier: 'legendary'
 
legendary_bow:
  icon: bow
  name:
    item_name: '&6传说之弓'
  data:
    tier: 'legendary'

按功能分组

# utility_items.yml
__group__:
  name: '实用工具'
  priority: 3
 
teleport_scroll:
  icon: paper
  name:
    item_name: '&b传送卷轴'
 
healing_potion:
  icon: potion
  name:
    item_name: '&c治疗药水'

使用技巧

1. 合理的分组结构

创建清晰的分组层级:

近战武器
远程武器
轻型防具
重型防具

2. 优先级设置

使用优先级控制分组在菜单中的显示顺序:

# 重要分组设置较小的优先级数字
__group__:
  priority: 1  # 显示在前面
 
# 次要分组设置较大的优先级数字
__group__:
  priority: 10  # 显示在后面

3. 描述性命名

使用清晰的分组名称和描述:

__group__:
  name: '新手装备'
  display:
    name: '&a新手装备'
    lore:
      - '&7适合新玩家使用的基础装备'
      - '&7价格便宜,容易获得'