
Spirit Summoning
Lv 1AngelComePhysical
Rathgricy consumes all of her Angel Snow Feathers and summons the same number of angels. Each angel charges towards nearby enemies every 3s, dealing [Feather Judgment] *150%% DMG to the target and enemies in a 3m radius around the target and inflicting [Feather Judgment] debuff. The angels exist for 15s. The cooldown cannot be reduced.
CD: 27 sec
Range: 8
Formula
1function CommonFun.calcDamage_66501(srcUser, targetUser, params, damageParam, logger)
2 local Str = srcUser:GetProperty("Str")
3 local Vit = srcUser:GetProperty("Vit")
4 local Dex = srcUser:GetProperty("Dex")
5 local Luk = srcUser:GetProperty("Luk")
6 local Int = srcUser:GetProperty("Int")
7 local Atk = srcUser:GetProperty("Atk")
8 local AtkPer = srcUser:GetProperty("AtkPer")
9 local MAtk = srcUser:GetProperty("MAtk")
10 local MAtkPer = srcUser:GetProperty("MAtkPer")
11 local DamIncrease = srcUser:GetProperty("DamIncrease")
12 local IgnoreDef = 0
13 local IgnoreDef1 = srcUser:GetProperty("IgnoreDef")
14 local IgnoreDef2 = srcUser:GetProperty("IgnoreEquipDef")
15 if targetUser.boss or targetUser.mini then
16 IgnoreDef = IgnoreDef1
17 else
18 IgnoreDef = IgnoreDef1 + IgnoreDef2
19 end
20 if 1 <= IgnoreDef then
21 IgnoreDef = 1
22 end
23 local Refine = srcUser:GetProperty("Refine")
24 local MRefine = srcUser:GetProperty("MRefine")
25 local Def2 = targetUser:GetProperty("Def")
26 local DefPer2 = targetUser:GetProperty("DefPer")
27 local Vit2 = targetUser:GetProperty("Vit")
28 local VitPer2 = targetUser:GetProperty("VitPer")
29 local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
30 local RefineDamReduc = CommonFun.calcRefineDamReduc(srcUser, targetUser)
31 local damChangePer = damageParam.damChangePer
32 local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
33 local bodyparam = CommonFun.CalcBodyParam(srcUser, targetUser, params, damageParam, logger)
34 local elementparam = CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger)
35 local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
36 local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
37 local bodyparam2 = CommonFun.CalcBodyParam2(srcUser, targetUser, params, damageParam, logger)
38 local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
39 local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
40 local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
41 local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * bodyparam * elementparam * elementparam2 + BaseAtk) * raceparam * bossparam * bossparam2
42 local BaseMAtk = Int + math.floor(Int * Int / 100)
43 local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) * elementparam * elementparam2 + BaseMAtk) * raceparam * bossparam * bossparam2
44 local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
45 local ShortRangeDamReduc2 = targetUser:GetProperty("ShortRangeDamReduc")
46 local MoveSpd = srcUser:GetProperty("MoveSpd")
47 local GemValue = srcUser:GetGemValue(206101_WHEN_MOVE_SPD_IS_OVER_200_THE_DMG_OF_BLADE_OF_ORDER_PERCENTAGE)
48 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
49 if skillID == 2672_ARCHBISHOP:BLADE_OF_ORDER and 2 < MoveSpd then
50 damChangePer = damChangePer * (1 + GemValue / 100000)
51 end
52 if skillID == 2679_ARCHBISHOP:SPIRIT_SUMMONING then
53 local skilllv_cz = srcUser:GetLernedSkillLevel(2673_ARCHBISHOP:DIVINE_VERDICT)
54 damChangePer = (10.5 + 2.3 * skilllv_cz) * 1.5
55 end
56 if skillID == 2684_ARCHBISHOP:BLADE_OF_ORDER then
57 local skilllv_yr = srcUser:GetLernedSkillLevel(2672_ARCHBISHOP:BLADE_OF_ORDER)
58 local skilllv_cj = srcUser:GetLernedSkillLevel(2680_ARCHBISHOP:RETRIBUTION_OF_ORDER)
59 damChangePer = (4 + 1.1 * skilllv_yr) * (3 + skilllv_cj)
60 if 2 < MoveSpd then
61 damChangePer = damChangePer * (1 + GemValue / 100000)
62 end
63 end
64 local A = ((AtkFinal + MAtkFinal) * DefReduc * (1 - DamReduc2) + Refine + MRefine) * damChangePer * (1 - RefineDamReduc) * (1 + DamIncrease - ShortRangeDamReduc2) - Vit2 * (1 + VitPer2)
65 if A <= 1 then
66 return 1
67 end
68 return A
69endPreserved HTML snapshot from ROM Handbook
