NL.RegSealEvent

NL.RegSealEvent(Dofile, FuncName)

函数功能

当玩家进行宠物封印的时候会触发该事件,并且返回封印的结果,同时Lua也可以对封印结果进行修改。

参数说明

  • Dofile: 字符串 要加载的脚本文件名,如果为当前文件,则定义nil即可

  • InitFuncName: 字符串 触发的Lua函数的名称,该函数的申明格式请参考[SealEventCallBack]

返回值

无返回值

SealEventCallBack(CharIndex, EnemyIndex, Ret)

参数说明

  • CharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。

  • EnemyIndex: 数值型 被封印的怪物对象,该值由Lua引擎传递给本函数。

  • Ret: 数值型 封印的结果,具体请查看下面对RetFlg的值的解析,该值由Lua引擎传递给本函数。

Ret

RetFlg为服务端对封印动作的判定结果,值可能为负数,也可能为正数,如果为负数则表示封印失败,如果为正数则表示封印成功。 封印失败返回值对应解析:

  • -1 :被封印对象的类型错误

  • -2 :被封印对象不能作为宠物

  • -3 :玩家身上没有足够栏位

  • -4 :玩家等级不足以封印宠物

  • -5 :被封印的宠物是召唤出来的而非野生的

  • -6 :玩家没有被封印宠物的图鉴

  • -7 :使用的封印卡道具不存在

  • -8 :使用的道具并不是封印卡道具

  • -9 :使用的封印卡没有参数设置

  • -10:使用的封印卡种族不正确

  • -11:不能封印邪魔系宠物

  • ⇐-100:封印随机几率不足,还原封印随机几率的公式为 abs(rate/100)-1

返回值

可以直接返回RetFlg参数,也可根据需求返回正数或者负数,返回值将影响玩家封印效果

参考实例

NL.RegSealEvent(nil,”MySealEvent”);

function MySealEvent(CharIndex, EnemyIndex, Ret)
  return 1; -- 封印永远成功
end

results matching ""

    No results matching ""