?NL.RegDamageCalculateEvent
NL.RegDamageCalculateEvent(Dofile, FuncName)
函数功能
战斗中计算伤害时会触发该函数
参数说明
- Dofile: 字符串 要加载的脚本文件名,如果为当前文件,则定义nil即可
- InitFuncName: 字符串 触发的Lua函数的名称,该函数的申明格式请参考[DamageCalculateCallBack]
返回值
无返回值
DamageCalculateCallBack(CharIndex, DefCharIndex, OriDamage, Damage, BattleIndex, Com1, Com2, Com3, DefCom1, DefCom2, DefCom3, Flg)
参数说明
- CharIndex: 数值型 响应事件的对象index(攻击者),该值由Lua引擎传递给本函数。
- DefCharIndex: 数值型 响应事件的对象index(防御者),该值由Lua引擎传递给本函数。
- OriDamage: 数值型 未修正伤害,该值由Lua引擎传递给本函数。
- Damage: 数值型 修正伤害(真实伤害),该值由Lua引擎传递给本函数。
- BattleIndex: 数值型 当前战斗index,该值由Lua引擎传递给本函数。
- Com1: 数值型 攻击者使用的動作編號,该值由Lua引擎传递给本函数。
- Com2: 数值型 攻击者攻击動作的目標對象的位置,该值由Lua引擎传递给本函数。
- Com3: 数值型 攻击者使用的所對應的tech的ID,该值由Lua引擎传递给本函数。
- DefCom1: 数值型 防御者使用的動作編號,该值由Lua引擎传递给本函数。
- DefCom2: 数值型 防御者攻击動作的目標對象的位置,该值由Lua引擎传递给本函数。
- DefCom3: 数值型 防御者使用的所對應的tech的ID,该值由Lua引擎传递给本函数。
- Flg: 数值型 伤害模式,具体查看下面的值说明,该值由Lua引擎传递给本函数。
返回值
伤害值数值型
Flg 值说明
- 0: 普通命中伤害
- 1: 暴击伤害
- 2: 无伤害
- 3: 闪躲
- 4: 防御
- 5: 魔法伤害
参考实例
NL.RegDamageCalculateEvent(nil,"MyDamageCalculateEvent");
function MyDamageCalculateEvent(CharIndex, DefCharIndex, OriDamage, Damage, BattleIndex, Com1, Com2, Com3, DefCom1, DefCom2, DefCom3, Flg)
-- 如果攻击者普通攻击,防御者恰好使用防御,则伤害加倍
if Com1 == 4 and Com3 == -1 and DefCom1 == 1 and DefCom3 == -1 then
return Damage*2
end
return Damage
end