Formula

CommonFun.calcBuff_3080

formula.lua
1function CommonFun.calcBuff_3080(srcUser, targetUser, a, b, c, d, lv)
2  if srcUser == nil or targetUser == nil then
3    return 0
4  end
5  local skilllv_1 = srcUser:GetLernedSkillLevel(1185_THIEF:BATTLE_CHANT)
6  local Vit = srcUser:GetProperty("Vit")
7  local Num = srcUser:GetRunePoint(74070_AESIR_BATTLE_CHANT_HEALING_OVER_TIME_10)
8  local BeHealEncPer2 = targetUser:GetProperty("BeHealEncPer")
9  local HealEncPer = srcUser:GetProperty("HealEncPer")
10  local A = 0
11  local RefineLv = srcUser:GetEquipedRefineLv(1)
12  local Angel = 1
13  if srcUser:HasBuffID(90001817_SACRED_MISSION_TIER_8_:MAX_STACK_0) then
14    Angel = 1 + RefineLv / 100 * 2
15  end
16  local equipRing = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_EQUIP, CommonFun.EquipPos.EEQUIPPOS_SHIELD)
17  if equipRing.id == 42579 or equipRing.id == 142579 then
18    Angel = 1 + equipRing.refinelv / 100 * 2
19  end
20  local equipRingSD = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_SHIELD)
21  if equipRingSD.id == 42579 or equipRingSD.id == 142579 then
22    Angel = 1 + equipRingSD.refinelv / 100 * 2 * equipRingSD.quench_per / 100
23  end
24  if srcUser:HasBuffID(90004204_SAINTLY_GLAIVE_1_TIER_5_:MAX_STACK_0) then
25    Angel = Angel + 0.15
26  end
27  if 0 < skilllv_1 and skilllv_1 <= 10 then
28    A = skilllv_1 * 2 * (100 + Vit) * (1 + HealEncPer) * (1 + BeHealEncPer2) * (1 + Num / 10) * Angel
29  elseif 10 < skilllv_1 then
30    A = (20 + skilllv_1) * (100 + Vit) * (1 + HealEncPer) * (1 + BeHealEncPer2) * (1 + Num / 10) * Angel
31  end
32  local GemValue = srcUser:GetGemValue(72061_BATTLE_CHANT_RECOVERY_EFFECT_PERCENTAGE)
33  A = A * (1 + GemValue / 100000)
34  local mapid, maptype = srcUser:GetMapInfo()
35  if maptype == PVP_MAPS then
36    A = A * 4
37  end
38  if targetUser:HasBuffID(41100050_HEALING_RECEIVED_:MAX_STACK_0) then
39    local MaxHp = targetUser:GetProperty("MaxHp")
40    local Hp = targetUser:GetProperty("Hp")
41    local Num1 = targetUser:GetBuffLayer(41100050_HEALING_RECEIVED_:MAX_STACK_0)
42    if Hp < MaxHp * (0.15 * Num1) then
43      A = A * 3
44    end
45  end
46  return A
47end
Formula Graph

Connected Archive Data

See which cards, equipment, headwears, buffs, and other archived records connect to this formula.

Loading graph filters

CommonFun.calcBuff_3080

commonfun-calcbuff_3080

Nodes

0

Edges

0

Related Nodes

Select at least one node type.