
Symphony of Wind and Fire
Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*2400% Wind Dmg and M.Atk*2400% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
Skill Levels
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*2200% Wind Dmg and M.Atk*2200% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*2000% Wind Dmg and M.Atk*2000% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*1800% Wind Dmg and M.Atk*1800% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*1600% Wind Dmg and M.Atk*1600% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*1400% Wind Dmg and M.Atk*1400% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*1200% Wind Dmg and M.Atk*1200% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*1000% Wind Dmg and M.Atk*1000% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*800% Wind Dmg and M.Atk*800% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
• Bell and Ais join forces, merging the power of Wind and Flame to unleash a magnificent and destructive attack. Ais summons strong Wind element to gather enemies within a 7-meter radius, while Bell simultaneously releases powerful Flame magic. The wind fuels the flames, forming a fiery storm that deals M.Atk*600% Wind Dmg and M.Atk*600% Flame damage per second to all enemies within range for 5 seconds. If Bell is not in the team, only one instance of Wind Dmg will be dealt to gathered enemies, equal to the total Wind Dmg from the continuous effect.
Formula
1function CommonFun.calcDamage_81501(srcUser, targetUser, params, damageParam, logger)
2 local Int = srcUser:GetProperty("Int")
3 local Vit = srcUser:GetProperty("Vit")
4 local Luk = srcUser:GetProperty("Luk")
5 local Str = srcUser:GetProperty("Str")
6 local Dex = srcUser:GetProperty("Dex")
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 MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
13 local MDamSpike = srcUser:GetProperty("MDamSpike_MPEN")
14 local DamSpike = srcUser:GetProperty("DamSpike_PEN")
15 local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
16 if 1 <= IgnoreMDef then
17 IgnoreMDef = 1
18 end
19 local Refine = srcUser:GetProperty("Refine")
20 local MRefine = srcUser:GetProperty("MRefine")
21 local RangeDam = srcUser:GetProperty("RangeDam")
22 local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, targetUser, params, damageParam)
23 local targetDefElement = targetUser:GetProperty("DefAttr")
24 local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
25 local bodyparam = CommonFun.CalcBodyParam(srcUser, targetUser, params, damageParam, logger)
26 local elementparam = CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger)
27 local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
28 local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
29 local bodyparam2 = CommonFun.CalcBodyParam2(srcUser, targetUser, params, damageParam, logger)
30 local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
31 local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
32 local MDef2 = targetUser:GetProperty("MDef")
33 local MDefPer2 = targetUser:GetProperty("MDefPer")
34 local Vit2 = targetUser:GetProperty("Vit")
35 local VitPer2 = targetUser:GetProperty("VitPer")
36 local Int2 = targetUser:GetProperty("Int")
37 local IntPer2 = targetUser:GetProperty("IntPer")
38 local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
39 local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
40 local damChangePer = damageParam.damChangePer
41 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
42 local zengqiang = srcUser:GetLernedSkillLevel(4815_PHANTOM_DANCER:ENHANCE)
43 local wuli = 0
44 if srcUser:HasBuffID(141170_ENHANCE_:MAX_STACK_0) then
45 wuli = 0.5 + zengqiang * 0.05
46 end
47 local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
48 local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) + BaseAtk) * wuli
49 local BaseMAtk = Int + math.floor(Int * Int / 100)
50 local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk + AtkFinal) * raceparam * bossparam * bossparam2
51 if srcUser:HasBuffID(22002090_FULL_TYPE_DAMAGE_INCREASE_:MAX_STACK_0) and srcUser:HasBuffID(141170_ENHANCE_:MAX_STACK_0) then
52 MAtkFinal = MAtkFinal * CommonFun.ShapeCorrection(srcUser, targetUser) * bodyparam
53 end
54 local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
55 local skilllv = srcUser:GetLernedSkillLevel(4812_PHANTOM_DANCER:SILVER_GLOW)
56 local yzg = skilllv * 0.8 + 6.4
57 local GemValue1 = srcUser:GetGemValue(221101_SILVER_LIGHT_DAMAGE_PERCENTAGE)
58 local GemValue2 = srcUser:GetGemValue(221111_LIL_RAFAGA_DEALS_PERCENTAGE_DAMAGE_TO_ENEMIES_WITH_100_HEALTH_OR_SHIELDS)
59 local RefineLv7 = srcUser:GetEquipedRefineLv(7_WEAPON)
60 if srcUser:HasBuffID(23390_THE_WEAPON_USED_BY_AIS_EQUIPMENT_1_:MAX_STACK_0) then
61 yzg = yzg * (1 + RefineLv7 * 0.01)
62 end
63 if srcUser:HasBuffID(23400_ESS_USES_EQUIPMENT_TO_INFUSE_WEAPONS_1_:MAX_STACK_0) then
64 yzg = yzg * (1 + RefineLv7 * 0.02)
65 end
66 if skillID == 4827_PHANTOM_DANCER:SILVER_GLOW or skillID == 4828_PHANTOM_DANCER:SILVER_LIGHT_SINGLE_USE then
67 damChangePer = yzg * (1 + GemValue1 / 100000)
68 end
69 if skillID == 4813_PHANTOM_DANCER:WHIRLWIND then
70 damChangePer = yzg * (1 + GemValue1 / 100000) * 5
71 end
72 if skillID == 4817_PHANTOM_DANCER:LIL_RAFAGA_PHANTOM_DANCER:LIL_RAFAGA then
73 local jingfeng = srcUser:GetLernedSkillLevel(4817_PHANTOM_DANCER:LIL_RAFAGA)
74 damChangePer = yzg * (6 + 2 * jingfeng) * (1 + GemValue1 / 100000)
75 end
76 if skillID == 4826_PHANTOM_DANCER:SMALL_WHIRLWIND then
77 local texing = srcUser:GetLernedSkillLevel(4811_PHANTOM_DANCER:SWORD_OF_DESPAIR)
78 damChangePer = texing * 0.1 * (1 + GemValue1 / 100000) * yzg
79 end
80 local A = (MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * (1 - RefineMDamReduc) * damChangePer * (1 + MDamIncrease + DamIncrease * wuli) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2)
81 if skillID == 4817_PHANTOM_DANCER:LIL_RAFAGA_PHANTOM_DANCER:LIL_RAFAGA then
82 local Hp = targetUser:GetProperty("Hp")
83 local MaxHp = targetUser:GetProperty("MaxHp")
84 if Hp == MaxHp then
85 A = A * (1 + GemValue2 / 100000)
86 end
87 if targetUser:GetBuffEffectByType("AbsorbDamage") ~= nil then
88 A = A * (1 + GemValue2 / 100000)
89 end
90 end
91 local skilllv_suxin = srcUser:GetLernedSkillLevel(4820_PHANTOM_DANCER:TEMPEST)
92 local suxin = 0
93 local race2 = targetUser.race
94 if targetUser:HasBuffID(139410_TWO_FACE_DEMON_KING_HUMAN_:MAX_STACK_0) then
95 race2 = 3
96 end
97 if srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and srcUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
98 race2 = targetRace
99 elseif srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
100 race2 = 2
101 end
102 if targetUser:GetNpcID() ~= 0 or race2 ~= 2 then
103 suxin = skilllv_suxin * 0.12
104 end
105 A = A * (1 + suxin)
106 if skillID == 4826_PHANTOM_DANCER:SMALL_WHIRLWIND then
107 A = A * (1 + RangeDam)
108 end
109 if A <= 1 then
110 return 1
111 end
112 return A
113end