
Lightning Meteor
Summon Lighting Meteor in the designated area. Cause 2400% of M.Atk as Wind M.DMG to all enemies in range.
Skill Levels
• Summon Lighting Meteor in the designated area. Cause 2280% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 2160% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 2040% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1920% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1800% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1680% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1560% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1440% of M.Atk as Wind M.DMG to all enemies in range.
• Summon Lighting Meteor in the designated area. Cause 1320% of M.Atk as Wind M.DMG to all enemies in range.
Formula
1function CommonFun.calcDamage_32(srcUser, targetUser, params, damageParam, logger)
2 local Int = srcUser:GetProperty("Int")
3 local Vit = srcUser:GetProperty("Vit")
4 local MAtk = srcUser:GetProperty("MAtk")
5 local MAtkPer = srcUser:GetProperty("MAtkPer")
6 local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
7 local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
8 if 1 <= IgnoreMDef then
9 IgnoreMDef = 1
10 end
11 local MRefine = srcUser:GetProperty("MRefine")
12 local RangeDam = srcUser:GetProperty("RangeDam")
13 local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, targetUser, params, damageParam)
14 local targetDefElement = targetUser:GetProperty("DefAttr")
15 local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
16 local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
17 local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
18 local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
19 local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
20 local MDef2 = targetUser:GetProperty("MDef")
21 local MDefPer2 = targetUser:GetProperty("MDefPer")
22 local Vit2 = targetUser:GetProperty("Vit")
23 local VitPer2 = targetUser:GetProperty("VitPer")
24 local Int2 = targetUser:GetProperty("Int")
25 local IntPer2 = targetUser:GetProperty("IntPer")
26 local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
27 local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
28 local damChangePer = damageParam.damChangePer
29 local BaseMAtk = Int + math.floor(Int * Int / 100)
30 local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk) * raceparam * bossparam * bossparam2
31 local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
32 local BaseLvDamage = 0
33 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
34 if skillID == 93_KNIGHT:HEAVEN_S_DRIVE_KNIGHT:HEAVEN_S_DRIVE or skillID == 1483_GUILLOTINE_CROSS:HEAVEN_S_DRIVE then
35 local IBaseLv = srcUser.BaseLv
36 if srcUser:HasBuffID(42110_FLUORESCENCE_:MAX_STACK_0) then
37 BaseLvDamage = IBaseLv * 15
38 end
39 end
40 if skillID == 1482_GUILLOTINE_CROSS:STORM_GUST_GUILLOTINE_CROSS:STORM_GUST then
41 local IBaseLv1 = srcUser.BaseLv
42 if srcUser:HasBuffID(42110_FLUORESCENCE_:MAX_STACK_0) then
43 BaseLvDamage = IBaseLv1 * 15
44 end
45 local GemValue = srcUser:GetGemValue(143161_STORM_GUST_DMG_PERCENTAGE)
46 damChangePer = damChangePer * (1 + GemValue / 100000)
47 end
48 local CardXR = 1
49 local CardNum = srcUser:GetEquipCardNum(7, 23048_HILL_WIND_CARD)
50 local CardNum2 = srcUser:GetEquipCardNum(7, 24664_HILL_WIND_STAR_CARD)
51 CardNum = CardNum + CardNum2
52 if skillID == 82_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION then
53 CardXR = CardNum * 0.25 + 1
54 end
55 if skillID == 1939_SNIPER:MAGIC_WIND_JELLYFISH_SUMMON_SNIPER:MAGIC_WIND_JELLYFISH_SUMMON then
56 local skilllv_mf = srcUser:GetLernedSkillLevel(1933_SNIPER:DIM_WIND)
57 damChangePer = (skilllv_mf * 0.8 + 8.8) * 0.8
58 end
59 local Atk = srcUser:GetProperty("Atk")
60 local AtkPer = srcUser:GetProperty("AtkPer")
61 local AtkFinal = 0
62 if (srcUser:HasBuffID(30031400_CONSTELLATION_SEAL_SURGE_:MAX_STACK_0) or srcUser:HasBuffID(30031401_CONSTELLATION_SEAL_SURGE_:MAX_STACK_0) or srcUser:HasBuffID(30031402_CONSTELLATION_SEAL_SURGE_:MAX_STACK_0) or srcUser:HasBuffID(30031403_CONSTELLATION_SEAL_SURGE_:MAX_STACK_0)) and (skillID == 81_SWORDSMAN:STORM_GUST_SWORDSMAN:STORM_GUST or skillID == 82_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION or skillID == 801_HIGH_WIZARD:LIGHTNING_ROD) then
63 AtkFinal = Atk * (1 + AtkPer)
64 end
65 local A = (((MAtkFinal + AtkFinal) * MDefReduc * (1 - MDamReduc2) + MRefine) * (1 - RefineMDamReduc) * damChangePer * (1 + MDamIncrease) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2)) * (1 + RangeDam) * CardXR + BaseLvDamage
66 local Num1 = srcUser:GetRunePoint(143014_AESIR_STORM_GUST_DMG_7)
67 if skillID == 81_SWORDSMAN:STORM_GUST_SWORDSMAN:STORM_GUST or skillID == 1482_GUILLOTINE_CROSS:STORM_GUST_GUILLOTINE_CROSS:STORM_GUST or skillID == 1904_HUNTER:STORM_GUST then
68 if (srcUser:HasBuffID(52170_STORMY_KNIGHT_CARD_:MAX_STACK_0) or srcUser:HasBuffID(54910_STORMY_KNIGHT_CARD_:MAX_STACK_0)) and srcUser:HasBuffID(81000040_STORMY_KNIGHT_CARD_DEPOSITE_:MAX_STACK_0) then
69 A = A * 1.2
70 end
71 if srcUser:HasBuffID(53290_MARTIN_SCAVENGER_CARD_:MAX_STACK_0) then
72 A = A * 1.05
73 end
74 if 0 < Num1 then
75 A = A * (Num1 * 0.07 + 1)
76 end
77 local GemValue1 = srcUser:GetGemValue(21073_STORM_GUST_DMG_PERCENTAGE)
78 local GemValue2 = srcUser:GetGemValue(143073_STORM_GUST_DMG_PERCENTAGE)
79 A = A * (1 + GemValue1 / 100000 + GemValue2 / 100000)
80 end
81 if skillID == 1160_THIEF:EARTH_STRAIN then
82 local GemValue = srcUser:GetGemValue(21053_EARTH_STRAIN_DMG_PERCENTAGE)
83 A = A * (1 + GemValue / 100000)
84 end
85 if skillID == 82_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION_SWORDSMAN:LORD_OF_VERMILION then
86 local GemValue = srcUser:GetGemValue(21062_LORD_OF_VERMILION_DMG_PERCENTAGE)
87 A = A * (1 + GemValue / 100000)
88 end
89 if skillID == 93_KNIGHT:HEAVEN_S_DRIVE_KNIGHT:HEAVEN_S_DRIVE then
90 local GemValue = srcUser:GetGemValue(21092_HEAVEN_S_DRIVE_DMG_PERCENTAGE)
91 A = A * (1 + GemValue / 100000)
92 end
93 if skillID == 3107_WHITESMITH:WIND_BLADE_ADJUDICATION then
94 local skilllv_kf = srcUser:GetLernedSkillLevel(3124_WHITESMITH:WIND_BLADE_ADJUDICATION_ENHANCE)
95 A = A * (1 + skilllv_kf * 0.05)
96 end
97 if (skillID == 3111_WHITESMITH:SAND_STORM or skillID == 1933_SNIPER:DIM_WIND or skillID == 1939_SNIPER:MAGIC_WIND_JELLYFISH_SUMMON_SNIPER:MAGIC_WIND_JELLYFISH_SUMMON) and (targetUser:HasBuffID(118140_EARTH_FIELD_:MAX_STACK_0) or targetUser:HasBuffID(125140_QUICKSAND_VORTEX_EMPTY_BUFF_:MAX_STACK_0)) then
98 local skilllv_slj = srcUser:GetLernedSkillLevel(3126_WHITESMITH:SAND_STORM_EARTH_ELEMENT)
99 local skilllv_mofeng = srcUser:GetLernedSkillLevel(1946_SNIPER:MAGIC_WIND_EARTH_ELEMENT)
100 A = A * (1 + skilllv_slj * 0.12 + skilllv_mofeng * 0.12)
101 end
102 if skillID == 3108_WHITESMITH:QUICKSAND_VORTEX or skillID == 1931_SNIPER:JELLYFISH_SUMMON then
103 local GemValue = srcUser:GetGemValue(21141_QUICKSAND_VORTEX_DMG_PERCENTAGE)
104 A = A * (1 + GemValue / 100000)
105 end
106 if A <= 1 then
107 return 1
108 end
109 return A
110end