logoHourGlass
RegSealEvent

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