Lua接口/服务端/LuaFnCreatePetDiffSexToHuman
来自天龙知识库
一次创建一雌一雄两只珍兽,返回两只珍兽的 GUID。
Lua 调用
LuaFnCreatePetDiffSexToHuman(sceneId, selfId, petAttrId, petLevel, petRuler)
服务端脚本中共出现 1 处调用,实参个数出现过:5 个(1 处)。
实现位于 LuaFnTbl_Pet.h。
参数
| 序号 | 参数 / 类型 | 说明 |
|---|---|---|
| 1 | sceneIdnumber
|
当前调用所在的场景 ID。 脚本中的实参: sceneId
|
| 2 | selfIdnumber
|
当前场景内的对象 ID;必须是本场景线程中的有效玩家。 脚本中的实参: selfId
|
| 3 | petAttrIdnumber
|
珍兽属性(模板)编号,上限 0xFFFE。 脚本中的实参: petDataId
|
| 4 | petLevelnumber
|
生成时使用的珍兽等级,取值不小于 INVALID_ID。 脚本中的实参: level
|
| 5 | petRulernumber
|
生成规则编号,取值 0–2。 脚本中的实参: 1
|
返回值
返回 5 个 number:成功标记(1)、第一只 GUID 高低段、第二只 GUID 高低段。失败时只返回 1 个值(0 或 −1)。
脚本中的调用
以下是服务端脚本里的真实调用点,按实参形态去重后列出 1 条。这些调用取自随包发布的脚本,可用于确认参数顺序与实际传入的值;它们不代表该写法在当前版本仍然有效。
-- event/pet/petcommon.lua LuaFnCreatePetDiffSexToHuman(sceneId, selfId, petDataId, level, 1)
注意事项
- 调用对象必须是当前场景中的有效玩家。
- 实现体要求实参恰好 5 个(含 sceneId、selfId),多传或少传都直接返回失败值。
- 两只珍兽的性别由实现体按序号传入(依次为 0、1),脚本不需要指定。
- 两只中任意一只创建失败会回滚本次已创建的部分,不会只留下半对。
- 实现体检查
removed,不满足时记录断言「CreatePetDiffSexToHuman rollback failed」。