Lua接口/服务端/DispatchAbilityInfo
来自天龙知识库
向玩家发送生活技能老师的学习费用、经验和等级限制信息。
本页由服务端绑定源码与随包脚本自动整理:用途、参数位置与返回数量取实现体,未在游戏内执行验证。调用点取自 4244 个服务端脚本中的 30 处真实调用。
Lua 调用
DispatchAbilityInfo(sceneId, selfId, targetId, scriptId, AbilityId, nNeedMoney, nNeedExp, nNeedSkillExp, nLevelLimit)
服务端脚本中共出现 30 处调用,实参个数出现过:9 个(30 处)。
参数
| 序号 | 参数 / 类型 | 说明 |
|---|---|---|
| 1 | sceneIdnumber
|
当前调用所在的场景 ID。 脚本中的实参: sceneId(30 处)
|
| 2 | selfIdnumber
|
当前场景内的对象 ID。玩家接口需传入有效玩家对象;不是角色 GUID。 脚本中的实参: selfId(30 处)
|
| 3 | targetIdnumber
|
目标的场景对象 ID。 脚本中的实参: targetId(30 处)
|
| 4 | scriptIdnumber
|
脚本配置编号。 脚本中的实参: tempScriptId(11 处)、x713561_g_ScriptId、x713562_g_ScriptId
|
| 5 | AbilityIdnumber
|
生活技能编号。 脚本中的实参: tempAbilityId(20 处)、x713561_g_AbilityID、x713562_g_AbilityID
|
| 6 | nNeedMoneynumber
|
所需金钱。 脚本中的实参: demandMoney(30 处)
|
| 7 | nNeedExpnumber
|
所需经验。 脚本中的实参: demandExp(30 处)
|
| 8 | nNeedSkillExpnumber
|
所需技能经验。 脚本中的实参: limitAbilityExpShow(30 处)
|
| 9 | nLevelLimitnumber
|
等级限制。 脚本中的实参: limitLevel(30 处)
|
返回值
无返回值。赋值接收时得到 nil;这与返回数字 0 不同。
脚本中的调用
以下是服务端脚本里的真实调用点,按实参形态去重后列出 8 条。这些调用取自随包发布的脚本,可用于确认参数顺序与实际传入的值;它们不代表该写法在当前版本仍然有效。
-- event/liveabilityevent/elevelup_caibingshu.lua DispatchAbilityInfo(sceneId, selfId, targetId, tempScriptId, tempAbilityId, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_caikuang.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713567_g_ScriptId, x713567_g_AbilityID, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_caiyao.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713568_g_ScriptId, x713568_g_AbilityID, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_diaoyu.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713569_g_ScriptId, x713569_g_AbilityID, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_fengren.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713565_g_ScriptId, x713565_g_AbilityID, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_gongyi.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713566_g_ScriptId, x713566_g_AbilityID, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_kaiguang.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713571_g_ScriptId, tempAbilityId, demandMoney, demandExp, limitAbilityExpShow, limitLevel) -- event/liveabilityevent/elevelup_liandan.lua DispatchAbilityInfo(sceneId, selfId, targetId, x713578_g_ScriptId, tempAbilityId, demandMoney, demandExp, limitAbilityExpShow, limitLevel)
注意事项
- 调用对象必须是当前场景中的有效玩家。
- 调用前要求玩家处于可执行逻辑的状态(实现体断言
pHuman->IsCanLogic());不满足时会记录断言,应先确认玩家当前状态。
核对依据:
LuaFnTbl_Shop.h 第 2133 行,服务端注册表第 684 行。调用格式与返回数量依据当前实现整理;脚本调用点取自 4244 个随包脚本(共 535888 行、命中 85384 处调用),未经运行验证。游戏内效果、边界行为及未注明的业务枚举仍需实测。