
Fire Field
Creates a Fire Field on a chosen area that increases 10% Fire Element Dmg and 120 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
Skill Levels
• Creates a Fire Field on a chosen area that increases 9% Fire Element Dmg and 108 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 8% Fire Element Dmg and 96 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 7% Fire Element Dmg and 84 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 6% Fire Element Dmg and 72 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 5% Fire Element Dmg and 60 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 4% Fire Element Dmg and 48 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 3% Fire Element Dmg and 36 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 2% Fire Element Dmg and 24 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
• Creates a Fire Field on a chosen area that increases 1% Fire Element Dmg and 12 Atk of teammates within the area. Fire Field lasts 30 sec, only one Elemental Field can exist at a time
Formula
1function CommonFun.calcBuff_6(srcUser, targetUser, a, b, c, d, lv)
2 if srcUser == nil or targetUser == nil then
3 return 0
4 end
5 local MaxHp = targetUser:GetProperty("MaxHp")
6 local A = MaxHp * (a + c) + b
7 if 0 < A or a == 0 then
8 return A
9 end
10 if srcUser:GetNpcID() == 0 and targetUser:HasBuffID(160000_BOSS_IMMUNE_EFFECT_:MAX_STACK_0) and targetUser.boss == false and targetUser.mini == false then
11 return 0
12 end
13 if srcUser:GetNpcID() == 0 and (targetUser.boss or targetUser.mini) then
14 local Vit = srcUser:GetProperty("Vit")
15 local MAtk = srcUser:GetProperty("MAtk")
16 local MAtkPer = srcUser:GetProperty("MAtkPer")
17 local Refine = srcUser:GetProperty("Refine")
18 local MRefine = srcUser:GetProperty("MRefine")
19 local Def2 = targetUser:GetProperty("Def")
20 local DefPer2 = targetUser:GetProperty("DefPer")
21 local MDef2 = targetUser:GetProperty("MDef")
22 local MDefPer2 = targetUser:GetProperty("MDefPer")
23 local Vit2 = targetUser:GetProperty("Vit")
24 local VitPer2 = targetUser:GetProperty("VitPer")
25 local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
26 local RefineDamReduc = CommonFun.calcRefineDamReduc(srcUser, targetUser)
27 local Int2 = targetUser:GetProperty("Int")
28 local IntPer2 = targetUser:GetProperty("IntPer")
29 local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
30 local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
31 local Str = srcUser:GetProperty("Str")
32 local Dex = srcUser:GetProperty("Dex")
33 local Luk = srcUser:GetProperty("Luk")
34 local Atk = srcUser:GetProperty("Atk")
35 local AtkPer = srcUser:GetProperty("AtkPer")
36 local DamIncrease = srcUser:GetProperty("DamIncrease")
37 local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
38 local IgnoreDef = srcUser:GetProperty("IgnoreDef")
39 if 1 <= IgnoreDef then
40 IgnoreDef = 1
41 end
42 local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
43 if 1 <= IgnoreMDef then
44 IgnoreMDef = 1
45 end
46 local raceparam = 1
47 local srcRace = srcUser.race
48 local targetRace = targetUser.race
49 if targetUser:HasBuffID(139410_TWO_FACE_DEMON_KING_HUMAN_:MAX_STACK_0) then
50 targetRace = 3
51 end
52 if srcUser:HasBuffID(139411_TWO_FACE_DEMON_KING_DEMON_:MAX_STACK_0) then
53 srcRace = 3
54 end
55 if srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and srcUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
56 elseif srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
57 targetRace = 2
58 end
59 if targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and targetUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
60 elseif targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
61 srcRace = 2
62 end
63 if nil == CommonFun.RaceProps[targetRace] then
64 return 0
65 end
66 if nil == CommonFun.RaceProps[srcRace] then
67 return 0
68 end
69 local raceInc = srcUser:GetProperty(CommonFun.RaceProps[targetRace][1])
70 local raceRed = targetUser:GetProperty(CommonFun.RaceProps[srcRace][2])
71 local raceRedThrough = srcUser:GetProperty(CommonFun.RaceProps[srcRace][3])
72 local raceIncResistance = targetUser:GetProperty(CommonFun.RaceProps[targetRace][4])
73 if nil == raceRedThrough then
74 raceRedThrough = 0
75 end
76 if nil == raceIncResistance then
77 raceIncResistance = 0
78 end
79 if 0 <= raceInc then
80 raceInc = raceInc * math.max(1 - raceIncResistance, 0)
81 end
82 if 0 <= raceRed then
83 raceRed = raceRed * math.max(1 - raceRedThrough, 0)
84 end
85 local raceparam = 1 + raceInc - raceRed
86 if raceparam <= 0.1 then
87 raceparam = 0.1
88 end
89 local MAtkFinal = MAtk * (1 + MAtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * raceparam
90 local AtkFinal = Atk * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * raceparam
91 if MAtkFinal <= AtkFinal then
92 local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
93 A = (AtkFinal * DefReduc * (1 - DamReduc2) + Refine) * a * 100 * (1 - RefineDamReduc) * (1 + DamIncrease) - Vit2 * (1 + VitPer2) + b
94 else
95 local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
96 A = (MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * a * 100 * (1 - RefineMDamReduc) * (1 + MDamIncrease) - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2) + b
97 end
98 end
99 local AttrFunction = srcUser:GetProperty("AttrFunction")
100 local bitfunc = CommonFun.getBits(AttrFunction)
101 if (targetUser.boss or targetUser.mini or targetUser.changelinepunish) and (targetUser.zoneType == 1 or targetUser.zoneType == 22) and targetUser.noPunishBoss == false and bitfunc[CommonFun.AttrFunction.JustInViceZone] == 1 and targetUser.isBossFromBranch == false then
102 A = 0
103 end
104 if CommonFun.checkAttrFunctionMiss(targetUser, srcUser) then
105 A = 0
106 end
107 if targetUser.boss and targetUser.zoneType == 22 and CommonFun.CheckStormBossMiss(targetUser, srcUser) then
108 A = 0
109 end
110 if targetUser:GetNpcID() == 30043_YEAR or targetUser:GetNpcID() == 280303_WILDNESS_SPIRIT_BEAST or targetUser:GetNpcID() == 56008_GOMORA or targetUser:GetNpcID() == 56009_BALTAN or targetUser:GetNpcID() == 56010_GOLZA or targetUser:GetNpcID() == 56011_BEMSTAR or targetUser:GetNpcID() == 56012_ELEKING or targetUser:GetNpcID() == 56013_KING_JOE then
111 A = -1
112 end
113 if targetUser:DamageAlways1() then
114 A = -1
115 end
116 return A
117end