Formula Source
function CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger) local elementInc = 0 local elementRed = 0 local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, params, damageParam) local targetDefElement = targetUser:GetProperty("DefAttr") if srcUser:HasBuffID(1009022) then targetDefElement = 7 end if nil == srcAtkElement then logger.error(string.format("%s srcAtkElement is nil", srcUser.name)) return 0 end if nil == targetDefElement then logger.error(string.format("%s targetDefElement is nil", targetUser.name)) return 0 end if nil == CommonFun.NatureProps[targetDefElement] then logger.error(string.format("%s CommonFun.NatureProps[][%s] is nil", srcUser.name, tostring(targetDefElement))) return 0 end if nil == CommonFun.NatureProps[srcAtkElement] then logger.error(string.format("CommonFun.NatureProps[%s] is nil", tostring(srcAtkElement))) return 0 end elementInc = srcUser:GetProperty(CommonFun.NatureProps[targetDefElement][1]) elementRed = targetUser:GetProperty(CommonFun.NatureProps[srcAtkElement][2]) return (1 + elementInc) * CommonFun.calcElementRate(srcUser, targetUser, params, damageParam, logger) end
No formula links
Changes: 20251127_update vs 20251105_standard_instalation
function CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger) local elementInc = 0 local elementRed = 0 local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, params, damageParam) local targetDefElement = targetUser:GetProperty("DefAttr") - if srcUser:HasBuffID(20510031) then + if srcUser:HasBuffID(1009022) then targetDefElement = 7 end if nil == srcAtkElement then logger.error(string.format("%s srcAtkElement is nil", srcUser.name)) return 0 end if nil == targetDefElement then logger.error(string.format("%s targetDefElement is nil", targetUser.name)) return 0 end if nil == CommonFun.NatureProps[targetDefElement] then logger.error(string.format("%s CommonFun.NatureProps[][%s] is nil", srcUser.name, tostring(targetDefElement))) return 0 end if nil == CommonFun.NatureProps[srcAtkElement] then logger.error(string.format("CommonFun.NatureProps[%s] is nil", tostring(srcAtkElement))) return 0 end elementInc = srcUser:GetProperty(CommonFun.NatureProps[targetDefElement][1]) elementRed = targetUser:GetProperty(CommonFun.NatureProps[srcAtkElement][2]) return (1 + elementInc) * CommonFun.calcElementRate(srcUser, targetUser, params, damageParam, logger) end