Formula Source
function CommonFun.GetUserAtkAttr(srcUser, params, damageParam) local skillParams = Table_Skill[params.skillIDAndLevel] if skillParams == nil then return 0 end if damageParam == nil then return 0 end local hasArrow = false local arrowNum = 0 if skillParams.StrengthenCost ~= nil then for key, val in pairs(skillParams.StrengthenCost) do if val.type == 1 and val.num ~= nil then hasArrow = true arrowNum = val.num end end end local srcAtkElement = 0 if damageParam.elementparam ~= nil and damageParam.elementparam ~= 0 then srcAtkElement = damageParam.elementparam elseif hasArrow == false then srcAtkElement = srcUser:GetProperty("AtkAttr") else local AttrEffect = srcUser:GetProperty("AttrEffect") local bits = CommonFun.getBits(AttrEffect) if bits[CommonFun.AttrEffect.BuffPriorArrow] == 1 then srcAtkElement = srcUser:GetProperty("AtkAttr") elseif srcUser.arrow_server ~= nil then if srcUser.arrow_server == 0 or srcUser.arrow_server == 12508 or srcUser.arrow_server == 12509 then srcAtkElement = srcUser:GetProperty("AtkAttr") else srcAtkElement = CommonFun.GetAtkAttrByArrow(srcUser.arrow_server) end elseif srcUser:GetArrowID() == 0 or srcUser:GetArrowID() == 12508 or srcUser:GetArrowID() == 12509 then srcAtkElement = srcUser:GetProperty("AtkAttr") else local arrowid = srcUser:GetArrowID() local hasNum = srcUser:GetPackageItemNum(arrowid) if arrowNum <= hasNum then srcAtkElement = CommonFun.GetAtkAttrByArrow(arrowid) else srcAtkElement = srcUser:GetProperty("AtkAttr") end end end local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel) if skillID == 2300 or skillID == 2323 or skillID == 2343 or skillID == 2344 then if srcUser:HasBuffID(135001) then srcAtkElement = 1 elseif srcUser:HasBuffID(135002) then srcAtkElement = 2 elseif srcUser:HasBuffID(135003) then srcAtkElement = 3 elseif srcUser:HasBuffID(135004) then srcAtkElement = 4 elseif srcUser:HasBuffID(135005) then srcAtkElement = 6 elseif srcUser:HasBuffID(135006) then srcAtkElement = 7 elseif srcUser:HasBuffID(135007) then srcAtkElement = 8 end end if skillID == 5604 then if srcUser:HasBuffID(7014) then srcAtkElement = 1 elseif srcUser:HasBuffID(7012) then srcAtkElement = 2 elseif srcUser:HasBuffID(7011) then srcAtkElement = 3 elseif srcUser:HasBuffID(7013) then srcAtkElement = 4 end end return srcAtkElement end
No formula links