适用于 RPG 服务器、战术类服务器、末日生存、HI-Tech、MMO、技能服 等需要大量自定义物品管理的场景。
插件亮点功能
物品库一键管理
将手中物品保存至配置文件,支持多文件分类,自带稳定序列化机制(兼容各类附魔、Lore、属性、标记等)。
自动同步更新(核心功能)
当配置文件中的物品被修改后,玩家手上的老版本物品会 自动更新:
- 玩家进入服务器 → 自动更新
- 玩家拾取物品 → 自动更新
- 玩家左右键使用物品 → 自动更新
- 玩家在背包内点击整理物品 → 自动更新
- 支持手动
/wzi update强制更新
✔ NBT 自动识别 ID,不会误伤其他物品
多文件存储
物品保存在 items/ 文件夹中,你可以按功能拆分多个 .yml 分类管理。
全属性保存
包含以下全部内容:
- DisplayName
- Lore
- Attributes
- 附魔
- 随机标签
- ModelData
- Unbreakable
- Flags
- 自定义 NBT
- 宝可梦、MMOItems、TACZ 类物品的完整数据(依赖容器原生序列化)
指令(Commands)
主命令:/warzitems别名:
/wzi、/items| 指令 | 用途 |
|---|---|
/wzi save <ID> | 保存手中物品到物品库 |
/wzi give <ID> [玩家] | 发放物品 |
/wzi list | 查看所有物品 ID |
/wzi update | 手动更新背包中 WarZItems 物品 |
/wzi reload | 重载配置与物品数据 |
权限(Permissions)
| 节点 | 功能 |
|---|---|
warzitems.admin | 使用 save、give、reload 等管理功能 |
| 无权限要求 | 玩家可用 /wzi update 用于调试 |
配置结构说明
主配置 config.yml
代码:
Message:
prefix: "§f[§6§lWarZ§f§lItems§f] "
onlyplayer: "§c只有玩家可以使用此命令"
nopermission: "§c你没有权限执行此命令"
物品文件(items/*.yml)
示例:
代码:
example_sword:
==: org.bukkit.inventory.ItemStack
v: 3465
type: DIAMOND_SWORD
meta:
==: ItemMeta
display-name: "§6示例之剑"
lore:
- "§7这是一把示例武器"
- "§7它会自动同步更新"
自动更新机制(工作原理)
- 使用
/wzi save保存物品时,会向物品写入隐藏 NBT:item_id - 当管理员修改物品配置并
/wzi reload - 玩家手中任何带
item_id的物品都会在以下事件中自动更新:- Join
- Interact(左键/右键)
- Pickup
- InventoryClick / Drag
开发者 API(可与任意插件联动)
代码:
ItemManager itemManager = WarZItems.getInstance().getItemManager();
// 获取物品
ItemStack item = itemManager.getItem("item_id");
// 获取物品ID
String id = itemManager.getItemId(itemStack);
// 判断是否存在
boolean exists = itemManager.getItemIds().contains("item_id");
插件信息
- 插件名称: WarZItems
- 作者: Crazy_Jky
- 版本: 1.0.0
- 兼容: Spigot / Paper / Purpur / Folia(1.8–1.21+ 全版本支持)
- 插件交流群: 398893720
支持作者
如果我的插件对你有所帮助,非常感谢你的支持!