关于 ox-target
ox-target 是用于 FiveM 的交互目标技能,可为实体、模型、玩家和位置添加交互。它指导开发者选择合适的 ox_target 函数并生成可运行的 Lua,也涵盖从 qb-target 迁移。
主要功能
- 01按实体或位置类型选择目标函数
- 02支持实体、模型、全局及区域目标
- 03配置选项的可见性与动作路由
- 04涵盖 qb-target 迁移
- 05输出使用 exports.ox_target 的 Lua
适用场景
- 01为车辆、门或道具添加交互
- 02让本地生成的实体可被交互
- 03迁移现有 qb-target 交互
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ germanfndez/ fiveai-skills --skill ox-target安装后在 Claude Code 中输入/ox-target确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
rules/entities.mdmigration.mdoptions.mdsetup.mdzones.md详细介绍
ox_target
适用于 FiveM 的第三眼目标交互。替代 qb-target 和 bt-target。支持 ox_core、esx 和 qbx_core。
激活条件
当用户要求让某个对象可交互时加载此技能,例如:“按 E 与这个 ped 交互”“第三眼”“目标选项”“为这辆车/这扇门/这个道具添加交互”,或从 qb-target 迁移时。
硬性规则
- 每个函数都必须通过
exports.ox_target:<fn>(...)调用。不存在全局ox_target表。 onSelect在客户端运行。绝不能在服务端信任其参数:请在serverEvent处理程序中重新验证。- 对于之后需要移除的选项,务必传入
name。移除选项时依据名称,而不是索引。 distance默认为资源默认值;对于距离超过约 2.5m 的交互,请显式设置。- 区域和实体函数只能在客户端使用。
- 对于由你自行生成的实体,优先使用
addLocalEntity;仅对网络实体使用addEntity,并注意实体重生后 id 可能会改变。
决策条件
| 目标 | 函数 |
|---|---|
| 一个由你在本地生成的实体 | addLocalEntity(entities, options) |
| 一个网络实体(网络 id) | addEntity(entities, options) |
| 某个模型的所有实例 | addModel(models, options) |
| 所有 ped/车辆/物体/玩家 | addGlobalPed / addGlobalVehicle / addGlobalObject / addGlobalPlayer |
| 所有对象,不做筛选 | addGlobalOption(options) |
| 一个位置,而非实体 | addBoxZone / addSphereZone / addPolyZone |
执行步骤
- 确认
server.cfg中ox_target在ox_lib启动后启动。 - 从“决策条件”表中选择函数。
- 构建选项数组。阅读 rules/options.md,了解所有允许的字段。
- 使用
groups、items或canInteract控制可见性,而不是在onSelect中进行检查。 - 路由操作:客户端逻辑使用
onSelect;凡涉及发放金钱、物品或状态的操作,使用serverEvent。 - 如果之后需要移除区域,请保存返回的区域 id。
输出要求
返回可运行的 Lua 代码,并使用 exports.ox_target。如果资源是新建的,请包含 fxmanifest.lua 依赖项行。绝不输出 qb-target 语法。
参考资料
- rules/setup.md — 安装、fxmanifest、convars、框架支持。
- rules/options.md — 选项表中的所有字段。
- rules/entities.md — 实体、模型和全局目标。
- rules/zones.md — box、sphere 和 poly 区域。
- rules/migration.md — 从 qb-target 迁移到 ox_target。
评论
支持 Markdown