mcpField
O
ox-inventory

ox-inventory

github.com/germanfndez开发1962 次安装2 周前更新
代码仓库

关于 ox-inventory

ox-inventory 是面向使用 ox_inventory 的开发者的槽位制背包技能,支持 ox_core、esx 和 qbx_core。它涵盖物品操作、存储设置、钩子与迁移,并明确区分服务端和客户端职责。

主要功能

  1. 01服务端发放、移除和计数物品
  2. 02储物箱与商店注册指导
  3. 03响应背包操作的钩子
  4. 04物品定义与元数据规则
  5. 05从 qb-inventory 和 esx 迁移

适用场景

  1. 01实现物品奖励或交易
  2. 02创建持久或临时储物箱
  3. 03响应物品移动或购买
  4. 04迁移现有背包系统

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/germanfndez/fiveai-skills --skill ox-inventory

安装后在 Claude Code 中输入/ox-inventory确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

rules/
client-exports.md
hooks.md
items.md
server-exports.md
stashes.md

详细介绍

ox_inventory

基于格子的背包系统,支持重量、元数据、储物箱、商店和钩子。支持 ox_core、esx 和 qbx_core。

激活约定

当用户要求给予、拿取、统计或检查物品,注册储物箱或商店,定义新物品,对背包操作作出反应,或从 qb-inventory 或 esx inventory 迁移时,加载此技能。

硬性规则

  • 所有操作都通过 exports.ox_inventory:<fn>(...) 调用。没有全局表。
  • 仅在服务端授予、移除和统计物品。客户端导出仅用于显示和 UI 决策。
  • AddItem 可能失败。务必检查返回值:玩家可能超重或没有空格。
  • 收取付款或移除交易物品之前,先调用 CanCarryItem 检查,切勿事后检查。
  • 切勿臆造物品名称。物品必须存在于 data/items.lua 中,否则会静默失败。
  • inv 可以是玩家来源、标识符或储物箱 ID。传入错误值会返回 nil,而不是报错。
  • 元数据不同时,物品将无法堆叠。不要在元数据中存放易变数据。

决策条件

目标调用
给予物品AddItem(inv, item, count, metadata, slot)
拿取物品RemoveItem(inv, item, count, metadata, slot)
先检查空间CanCarryItem(inv, item, count, metadata)
玩家拥有多少个物品GetItemCount(inv, item, metadata, strict)
读取一个格子GetSlot(inv, slot)
跨格子查找物品Search(inv, 'slots'|'count', item, metadata)
持久化存储RegisterStash(...)
短期存储CreateTemporaryStash(properties)
对玩家操作作出反应registerHook(event, cb, options)

执行步骤

  1. 确认 ox_inventory 在 ox_lib 和框架核心之后启动。
  2. 确定运行端:修改在服务端执行,显示在客户端执行。
  3. 对于交易或奖励,按顺序调用:CanCarryItem -> 收取付款 -> AddItem -> 验证返回值。
  4. 引用新物品之前,先在 data/items.lua 中定义。阅读 rules/items.md。
  5. 对移动、打开或购买操作作出反应时,使用钩子而不是轮询。

输出约定

返回可运行的 Lua 代码,并使用 exports.ox_inventory,明确区分服务端和客户端。引入新物品时,附上 data/items.lua 条目。

参考资料

  • rules/server-exports.md — 服务端的物品和背包函数。
  • rules/client-exports.md — 重量、当前武器、打开背包。
  • rules/items.md — 在 data/items.lua 中定义物品。
  • rules/stashes.md — 储物箱、商店和临时存储。
  • rules/hooks.md — registerHook 和取消操作。

上游文档:https://overextended.dev/ox_inventory

评论

支持 Markdown