1 |
6 |
Kragenwar-3044 |
import "Turbine.UI"; |
2 |
|
Kragenwar-3044 |
import "Turbine.UI.Lotro"; |
3 |
|
Kragenwar-3044 |
import "Turbine.Gameplay"; |
4 |
|
Kragenwar-3044 |
import "KragenPlugs.Utils"; |
5 |
|
Kragenwar-3044 |
import "KragenPlugs.KragenBars"; |
6 |
|
Kragenwar-3044 |
|
7 |
|
Kragenwar-3044 |
GuardianBars = class( KragenPlugs.KragenBars.ClassBar ); |
8 |
|
Kragenwar-3044 |
|
9 |
|
Kragenwar-3044 |
function GuardianBars:Constructor() |
10 |
|
Kragenwar-3044 |
KragenPlugs.KragenBars.ClassBar.Constructor( self ); |
11 |
|
Kragenwar-3044 |
|
12 |
|
Kragenwar-3044 |
-- class settings arent saved then load the default settings |
13 |
|
Kragenwar-3044 |
if (not settings.class) then |
14 |
|
Kragenwar-3044 |
settings.class = vars.playerclass; |
15 |
|
Kragenwar-3044 |
self:DefaultSettings(); |
16 |
|
Kragenwar-3044 |
self:ShowSetup(); |
17 |
|
Kragenwar-3044 |
else |
18 |
|
Kragenwar-3044 |
self.settings = settings.classinfo; |
19 |
|
Kragenwar-3044 |
if (settings.vers ~= vars.vers) then |
20 |
|
Kragenwar-3044 |
self:UpdateSettings(); |
21 |
|
Kragenwar-3044 |
end |
22 |
|
Kragenwar-3044 |
end |
23 |
|
Kragenwar-3044 |
|
24 |
|
Kragenwar-3044 |
self.wound = 0; |
25 |
19 |
Kragenwar-3044 |
|
26 |
|
Kragenwar-3044 |
self.effectlist = {}; |
27 |
|
Kragenwar-3044 |
-- ENGLISH CLIENT |
28 |
|
Kragenwar-3044 |
if (vars.locale == "en") then |
29 |
|
Kragenwar-3044 |
self.effectlist["GuardiansWard"] = "Guardian's Ward"; |
30 |
|
Kragenwar-3044 |
self.effectlist["ImprovedGuardiansWard"] = "Improved Guardian's Ward"; |
31 |
|
Kragenwar-3044 |
self.effectlist["BlockResponse"] = "Block Response"; |
32 |
|
Kragenwar-3044 |
self.effectlist["ShieldSwipe"] = "Shield Swipe"; |
33 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Parry Response"; |
34 |
|
Kragenwar-3044 |
self.effectlist["Retaliation"] = "Retaliation"; |
35 |
|
Kragenwar-3044 |
self.effectlist["Stunned"] = "Stunned"; |
36 |
|
Kragenwar-3044 |
self.effectlist["Dazed"] = "Dazed"; |
37 |
|
Kragenwar-3044 |
self.effectlist["KnockedDown"] = "Knocked Down"; |
38 |
|
Kragenwar-3044 |
self.effectlist["Overpower"] = "Overpower"; |
39 |
|
Kragenwar-3044 |
self.effectlist["Campsite"] = "Campsite"; |
40 |
|
Kragenwar-3044 |
self.effectlist["WesternesseSpikes"] = "Westernesse Spikes"; |
41 |
|
Kragenwar-3044 |
self.effectlist["BeleriandSpikes"] = "Beleriand Spikes"; |
42 |
|
Kragenwar-3044 |
self.effectlist["AncientDwarfSpikes"] = "Ancient-Dwarf Spikes"; |
43 |
|
Kragenwar-3044 |
self.effectlist["LargeShieldSpikes"] = "Large Shield Spikes"; |
44 |
|
Kragenwar-3044 |
|
45 |
|
Kragenwar-3044 |
-- FRENCH CLIENT |
46 |
|
Kragenwar-3044 |
elseif (vars.locale == "fr") then |
47 |
|
Kragenwar-3044 |
self.effectlist["GuardiansWard"] = "Protection"; |
48 |
|
Kragenwar-3044 |
self.effectlist["ImprovedGuardiansWard"] = "Protect Amélio"; |
49 |
|
Kragenwar-3044 |
self.effectlist["BlockResponse"] = "Si Blocage"; |
50 |
|
Kragenwar-3044 |
self.effectlist["ShieldSwipe"] = "Balayage Bouclier"; |
51 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Si Parade"; |
52 |
|
Kragenwar-3044 |
self.effectlist["Retaliation"] = "Riposte"; |
53 |
|
Kragenwar-3044 |
self.effectlist["Stunned"] = "Etourdi"; |
54 |
|
Kragenwar-3044 |
self.effectlist["Dazed"] = "Hébété"; |
55 |
|
Kragenwar-3044 |
self.effectlist["KnockedDown"] = "Renversé"; |
56 |
|
Kragenwar-3044 |
self.effectlist["Overpower"] = "Surpuissance"; |
57 |
|
Kragenwar-3044 |
self.effectlist["Campsite"] = "Campsite"; |
58 |
|
Kragenwar-3044 |
self.effectlist["WesternesseSpikes"] = "Westernesse Spikes"; |
59 |
|
Kragenwar-3044 |
self.effectlist["BeleriandSpikes"] = "Beleriand Spikes"; |
60 |
|
Kragenwar-3044 |
self.effectlist["AncientDwarfSpikes"] = "Ancient-Dwarf Spikes"; |
61 |
|
Kragenwar-3044 |
self.effectlist["LargeShieldSpikes"] = "Large Shield Spikes"; |
62 |
|
Kragenwar-3044 |
|
63 |
|
Kragenwar-3044 |
-- GERMAN CLIENT |
64 |
|
Kragenwar-3044 |
elseif (vars.locale == "de") then |
65 |
|
Kragenwar-3044 |
self.effectlist["GuardiansWard"] = "Wächerschild"; |
66 |
|
Kragenwar-3044 |
self.effectlist["ImprovedGuardiansWard"] = "Verbesserung: Wächterschild"; |
67 |
|
Kragenwar-3044 |
self.effectlist["BlockResponse"] = "Block Response"; |
68 |
|
Kragenwar-3044 |
self.effectlist["ShieldSwipe"] = "Schildstreich"; |
69 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Erwiderung Parade"; |
70 |
|
Kragenwar-3044 |
self.effectlist["Retaliation"] = "Vergeltung"; |
71 |
|
Kragenwar-3044 |
self.effectlist["Stunned"] = "Bewusstlos geschlagen"; |
72 |
|
Kragenwar-3044 |
self.effectlist["Dazed"] = "Benommenheit"; |
73 |
|
Kragenwar-3044 |
self.effectlist["KnockedDown"] = "Zu Boden geschlagen"; |
74 |
|
Kragenwar-3044 |
self.effectlist["Overpower"] = "Überwältigen"; |
75 |
|
Kragenwar-3044 |
self.effectlist["Campsite"] = "Campsite"; |
76 |
|
Kragenwar-3044 |
self.effectlist["WesternesseSpikes"] = "Westernesse Spikes"; |
77 |
|
Kragenwar-3044 |
self.effectlist["BeleriandSpikes"] = "Beleriand Spikes"; |
78 |
|
Kragenwar-3044 |
self.effectlist["AncientDwarfSpikes"] = "Ancient-Dwarf Spikes"; |
79 |
|
Kragenwar-3044 |
self.effectlist["LargeShieldSpikes"] = "Large Shield Spikes"; |
80 |
|
Kragenwar-3044 |
end |
81 |
6 |
Kragenwar-3044 |
|
82 |
|
Kragenwar-3044 |
-- ALL X, Y, WIDTH, HEIGHT values are in quickslot (ie: 1 width = the width of one quickslot: 35 px); |
83 |
|
Kragenwar-3044 |
|
84 |
|
Kragenwar-3044 |
-- Build Windows SkillWindow( name:String, defaultx:int, defaulty:int, width:int, height:int, settings:table); |
85 |
|
Kragenwar-3044 |
self.windows["SelfBuffs"] = SkillWindow("Self Buffs", 1, 1, 6, 1, self.settings["SelfBuffs"] ); |
86 |
|
Kragenwar-3044 |
self.windows["Utility"] = SkillWindow("Utility", 8, 1, 2, 1, self.settings["Utility"] ); |
87 |
|
Kragenwar-3044 |
self.windows["ClassItems"] = SkillWindow("Class Items", 11, 1, 2, 1, self.settings["ClassItems"] ); |
88 |
|
Kragenwar-3044 |
self.windows["Parry"] = SkillWindow("Parry", 1, 2, 5, 1, self.settings["Parry"] ); |
89 |
|
Kragenwar-3044 |
self.windows["Protect"] = SkillWindow("Protect Fellows", 6, 2, 2, 1, self.settings["Protect"] ); |
90 |
|
Kragenwar-3044 |
self.windows["Stunned"] = SkillWindow("Stunned", 12, 2, 1, 1, self.settings["Stunned"] ); |
91 |
|
Kragenwar-3044 |
self.windows["Overpower"] = SkillWindow("Overpower", 1, 3, 3, 1, self.settings["Overpower"] ); |
92 |
|
Kragenwar-3044 |
self.windows["Block"] = SkillWindow("Block", 1, 3, 4, 1, self.settings["Block"] ); |
93 |
|
Kragenwar-3044 |
self.windows["Stances"] = SkillWindow("Stances", 12, 3, 1, 1, self.settings["Stances"] ); |
94 |
|
Kragenwar-3044 |
self.windows["Ward"] = SkillWindow("Ward", 1, 4, 1, 1, self.settings["Ward"] ); |
95 |
|
Kragenwar-3044 |
self.windows["Melee"] = SkillWindow("Melee", 2, 4, 6, 1, self.settings["Melee"] ); |
96 |
|
Kragenwar-3044 |
self.windows["Taunt"] = SkillWindow("Taunt", 7, 4, 4, 1, self.settings["Taunt"] ); |
97 |
|
Kragenwar-3044 |
self.windows["Ranged"] = SkillWindow("Ranged", 12, 4, 1, 1, self.settings["Ranged"] ); |
98 |
|
Kragenwar-3044 |
|
99 |
|
Kragenwar-3044 |
|
100 |
|
Kragenwar-3044 |
-- Build Bars SkillBar( parent:SkillWindow, x:int, y:int, width:int, height:int, active:Boolean); |
101 |
|
Kragenwar-3044 |
self.bars["Overpower"] = SkillBar(self.windows["Overpower"], 1, 1, 3, 1, true, true); |
102 |
|
Kragenwar-3044 |
self.bars["BlockTier1"] = SkillBar(self.windows["Block"], 1, 1, 3, 1, true, true); |
103 |
|
Kragenwar-3044 |
self.bars["BlockTier2"] = SkillBar(self.windows["Block"], 1.5, 1, 2, 1, true, true); |
104 |
|
Kragenwar-3044 |
self.bars["BlockTier3"] = SkillBar(self.windows["Block"], 4, 1, 1, 1, true, true); |
105 |
|
Kragenwar-3044 |
self.bars["ParryTier1"] = SkillBar(self.windows["Parry"], 2, 1, 1, 1, true, true); |
106 |
|
Kragenwar-3044 |
self.bars["ParryTier2"] = SkillBar(self.windows["Parry"], 1, 1, 3, 1, true, true); |
107 |
|
Kragenwar-3044 |
self.bars["ParryTier3"] = SkillBar(self.windows["Parry"], 4, 1, 2, 1, true, true); |
108 |
|
Kragenwar-3044 |
self.bars["Ward"] = SkillBar(self.windows["Ward"], 1, 1, 1, 1, true, false); |
109 |
|
Kragenwar-3044 |
self.bars["Melee"] = SkillBar(self.windows["Melee"], 1, 1, 6, 1, true, false); |
110 |
|
Kragenwar-3044 |
self.bars["Taunt"] = SkillBar(self.windows["Taunt"], 1, 1, 4, 1, true, false); |
111 |
|
Kragenwar-3044 |
self.bars["SelfBuffs"] = SkillBar(self.windows["SelfBuffs"], 1, 1, 6, 1, true, false); |
112 |
|
Kragenwar-3044 |
self.bars["Protect"] = SkillBar(self.windows["Protect"], 1, 1, 2, 1, true, false); |
113 |
|
Kragenwar-3044 |
self.bars["Stances"] = SkillBar(self.windows["Stances"], 1, 1, 3, 1, true, false); |
114 |
|
Kragenwar-3044 |
self.bars["Stunned"] = SkillBar(self.windows["Stunned"], 1, 1, 1, 1, true, false); |
115 |
|
Kragenwar-3044 |
self.bars["Utility"] = SkillBar(self.windows["Utility"], 1, 1, 2, 1, true, false); |
116 |
|
Kragenwar-3044 |
self.bars["ClassItems"] = SkillBar(self.windows["ClassItems"], 1, 1, 2, 1, true, false); |
117 |
|
Kragenwar-3044 |
self.bars["Ranged"] = SkillBar(self.windows["Ranged"], 1, 1, 1, 1, true, false); |
118 |
|
Kragenwar-3044 |
|
119 |
|
Kragenwar-3044 |
|
120 |
|
Kragenwar-3044 |
-- Build Skills SkillSlot( parent:SkillBar, x:int, y:int, active:Boolean, level:int, hexcode:String ); |
121 |
|
Kragenwar-3044 |
-- For skills that need to be replaced with a new version you can enter level as a table |
122 |
|
Kragenwar-3044 |
-- ie. {["start"] = 1, ["end"] = 34]} |
123 |
|
Kragenwar-3044 |
-- then set the new skill level to 34 and it will replace the old at that level |
124 |
|
Kragenwar-3044 |
self.skills["ShieldSwipe"] = SkillSlot(self.bars["BlockTier1"], 1, 1, false, 2, "0x7000305D"); |
125 |
|
Kragenwar-3044 |
self.skills["CatchABreath"] = SkillSlot(self.bars["BlockTier1"], 2, 1, false, 16, "0x7000307D"); |
126 |
|
Kragenwar-3044 |
self.skills["LitanyOfDefiance"] = SkillSlot(self.bars["BlockTier1"], 3, 1, false, 60, "0x7000F095"); |
127 |
|
Kragenwar-3044 |
|
128 |
|
Kragenwar-3044 |
self.skills["ShieldBash"] = SkillSlot(self.bars["BlockTier2"], 1, 1, false, 10, "0x70003EE1"); |
129 |
|
Kragenwar-3044 |
self.skills["ShieldTaunt"] = SkillSlot(self.bars["BlockTier2"], 2, 1, false, 22, "0x70003EE6"); |
130 |
|
Kragenwar-3044 |
|
131 |
|
Kragenwar-3044 |
self.skills["ShieldSmash"] = SkillSlot(self.bars["BlockTier3"], 1, 1, false, 41, "0x70002EC4"); |
132 |
|
Kragenwar-3044 |
|
133 |
|
Kragenwar-3044 |
self.skills["Retaliation"] = SkillSlot(self.bars["ParryTier1"], 1, 1, false, 8, "0x70003EE0"); |
134 |
|
Kragenwar-3044 |
|
135 |
|
Kragenwar-3044 |
self.skills["Overwhelm"] = SkillSlot(self.bars["ParryTier2"], 1, 1, false, 8, "0x70003EE2"); |
136 |
|
Kragenwar-3044 |
self.skills["WhirlingRetaliation"] = SkillSlot(self.bars["ParryTier2"], 2, 1, false, 14, "0x70003EE4"); |
137 |
|
Kragenwar-3044 |
self.skills["Thrust"] = SkillSlot(self.bars["ParryTier2"], 3, 1, false, 18, "0x70003EE5"); |
138 |
|
Kragenwar-3044 |
|
139 |
|
Kragenwar-3044 |
self.skills["SaltTheWound"] = SkillSlot(self.bars["ParryTier3"], 2, 1, true, 22, "0x7000D4AF"); |
140 |
|
Kragenwar-3044 |
self.skills["ToTheKing"] = SkillSlot(self.bars["ParryTier3"], 1, 1, false, 41, "0x70002EA5"); |
141 |
|
Kragenwar-3044 |
|
142 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"] = SkillSlot(self.bars["Ward"], 1, 1, true, 1, "0x70003066"); |
143 |
|
Kragenwar-3044 |
self.skills["ShieldBlow"] = SkillSlot(self.bars["Melee"], 1, 1, true, { 1, 54 }, { "0x7000306F", "0x7000F1E0" }); |
144 |
|
Kragenwar-3044 |
self.skills["Sting"] = SkillSlot(self.bars["Melee"], 2, 1, true, { 1, 52 }, { "0x70003058", "0x7000F1E1" }); |
145 |
|
Kragenwar-3044 |
self.skills["SweepingCut"] = SkillSlot(self.bars["Melee"], 3, 1, true, 4, "0x70003EDE"); |
146 |
|
Kragenwar-3044 |
self.skills["VexingBlow"] = SkillSlot(self.bars["Melee"], 4, 1, true, 6, "0x7000308A"); |
147 |
|
Kragenwar-3044 |
self.skills["Stamp"] = SkillSlot(self.bars["Melee"], 5, 1, true, 32, "0x70003EE7"); |
148 |
|
Kragenwar-3044 |
self.skills["TakeToHeart"] = SkillSlot(self.bars["Melee"], 6, 1, true, 58, "0x7000ED87"); |
149 |
|
Kragenwar-3044 |
|
150 |
|
Kragenwar-3044 |
self.skills["Challenge"] = SkillSlot(self.bars["Taunt"], 1, 1, true, 16, "0x70003097"); |
151 |
|
Kragenwar-3044 |
self.skills["FrayTheEdge"] = SkillSlot(self.bars["Taunt"], 2, 1, true, 40, "0x7000D4B5"); |
152 |
|
Kragenwar-3044 |
self.skills["Engage"] = SkillSlot(self.bars["Taunt"], 3, 1, true, 42, "0x7000D4B2"); |
153 |
|
Kragenwar-3044 |
self.skills["ChallengeTheDarkness"] = SkillSlot(self.bars["Taunt"], 4, 1, self.settings["Features"].darkness, 41, "0x70002EDF"); |
154 |
|
Kragenwar-3044 |
|
155 |
|
Kragenwar-3044 |
self.skills["GuardiansPledge"] = SkillSlot(self.bars["SelfBuffs"], 1, 1, true, 20, "0x700030A4"); |
156 |
|
Kragenwar-3044 |
self.skills["ThrillOfDanger"] = SkillSlot(self.bars["SelfBuffs"], 2, 1, true, 26, "0x700030B4"); |
157 |
|
Kragenwar-3044 |
self.skills["WarriorsHeart"] = SkillSlot(self.bars["SelfBuffs"], 3, 1, true, { 30, 64 }, { "0x700030AC", "0x70020DF5" }); |
158 |
|
Kragenwar-3044 |
self.skills["DeepBreath"] = SkillSlot(self.bars["SelfBuffs"], 4, 1, true, 34, "0x700030A8"); |
159 |
|
Kragenwar-3044 |
self.skills["IgnoreThePain"] = SkillSlot(self.bars["SelfBuffs"], 5, 1, true, 44, "0x70021663"); |
160 |
|
Kragenwar-3044 |
self.skills["Charge"] = SkillSlot(self.bars["SelfBuffs"], 6, 1, true, { 48, 62 }, { "0x7000DD14", "0x7001F4B6" }); |
161 |
|
Kragenwar-3044 |
|
162 |
|
Kragenwar-3044 |
self.skills["Protection"] = SkillSlot(self.bars["Protect"], 1, 1, true, 24, "0x7000309A"); |
163 |
|
Kragenwar-3044 |
self.skills["ShieldWall"] = SkillSlot(self.bars["Protect"], 2, 1, true, 50, "0x7000D4AE"); |
164 |
|
Kragenwar-3044 |
|
165 |
|
Kragenwar-3044 |
self.skills["ForcedOpening"] = SkillSlot(self.bars["Overpower"], 1, 1, false, 30, "0x7000D4B0"); |
166 |
|
Kragenwar-3044 |
self.skills["Stagger"] = SkillSlot(self.bars["Overpower"], 2, 1, false, 46, "0x7000D4B3"); |
167 |
|
Kragenwar-3044 |
self.skills["BrutalAssault"] = SkillSlot(self.bars["Overpower"], 3, 1, false, 56, "0x7000F158"); |
168 |
|
Kragenwar-3044 |
|
169 |
|
Kragenwar-3044 |
self.skills["TurnTheTables"] = SkillSlot(self.bars["Stunned"], 1, 1, false, 36, "0x70003EE8"); |
170 |
|
Kragenwar-3044 |
|
171 |
|
Kragenwar-3044 |
self.skills["SummonTinker"] = SkillSlot(self.bars["Utility"], 1, 1, false, 26, "0x7000D4B4"); |
172 |
|
Kragenwar-3044 |
self.skills["GuardiansPromise"] = SkillSlot(self.bars["Utility"], 2, 1, true, 38, "0x70003EE9"); |
173 |
|
Kragenwar-3044 |
|
174 |
|
Kragenwar-3044 |
self.skills["LetFly"] = SkillSlot(self.bars["Ranged"], 1, 1, true, 30, "0x70003E14"); |
175 |
|
Kragenwar-3044 |
|
176 |
|
Kragenwar-3044 |
|
177 |
|
Kragenwar-3044 |
-- Build Stance Slot (Multi) SkillMultiSlot(parent:SkillBar, x:int, y:int, active:Boolean); |
178 |
|
Kragenwar-3044 |
-- AddShortcut to Multi Slot SkillMultiSlot:AddShortcut(skillname:String, level:int, hex:String); |
179 |
|
Kragenwar-3044 |
-- After Declaring Shortcuts you need to call LevelCheck to validate the levels |
180 |
|
Kragenwar-3044 |
-- LevelCheck should also be called on refresh. |
181 |
|
Kragenwar-3044 |
self.multi = { }; |
182 |
|
Kragenwar-3044 |
self.multi["StanceSlot"] = SkillMultiSlot(self.bars["Stances"], 1, 1, true); |
183 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("GuardiansDefence", 4, "0x70003EDF"); |
184 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("GuardiansParry", 12, "0x70003EE3"); |
185 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("Overpower", 30, "0x7000D4B1"); |
186 |
|
Kragenwar-3044 |
if (self.settings["Features"].threatstance) then self.multi["StanceSlot"]:AddShortCut("GuardiansThreat", 41, "0x70002ED4"); end |
187 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:LevelCheck(); |
188 |
|
Kragenwar-3044 |
|
189 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"] = ItemMultiSlot(self.bars["ClassItems"], 2, 1, true); |
190 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike1", self.settings["Quickslots"].spike1["active"], self.settings["Quickslots"].spike1["type"], self.settings["Quickslots"].spike1["data"]); |
191 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike2", self.settings["Quickslots"].spike2["active"], self.settings["Quickslots"].spike2["type"], self.settings["Quickslots"].spike2["data"]); |
192 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike3", self.settings["Quickslots"].spike3["active"], self.settings["Quickslots"].spike3["type"], self.settings["Quickslots"].spike3["data"]); |
193 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike4", self.settings["Quickslots"].spike4["active"], self.settings["Quickslots"].spike4["type"], self.settings["Quickslots"].spike4["data"]); |
194 |
|
Kragenwar-3044 |
|
195 |
|
Kragenwar-3044 |
-- Stance Change Event |
196 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "StanceChanged", function(sender, args) |
197 |
|
Kragenwar-3044 |
KragenBars:StanceChange(vars.classattr:GetStance()); |
198 |
|
Kragenwar-3044 |
end); |
199 |
|
Kragenwar-3044 |
|
200 |
|
Kragenwar-3044 |
-- Block/Parry Events |
201 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "IsBlockTier3AvailableChanged", function(sender, args) |
202 |
|
Kragenwar-3044 |
KragenBars:BlockChange(3, vars.classattr:IsBlockTier3Available()); |
203 |
|
Kragenwar-3044 |
end); |
204 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "IsParryTier3AvailableChanged", function(sender, args) |
205 |
|
Kragenwar-3044 |
KragenBars:ParryChange(3, vars.classattr:IsParryTier3Available()); |
206 |
|
Kragenwar-3044 |
end); |
207 |
|
Kragenwar-3044 |
|
208 |
|
Kragenwar-3044 |
-- Set Combat States |
209 |
|
Kragenwar-3044 |
self.skills["ThrillOfDanger"]:SetCombat( true, false ); |
210 |
|
Kragenwar-3044 |
self.skills["GuardiansPromise"]:SetCombat( false, true ); |
211 |
|
Kragenwar-3044 |
self.skills["SummonTinker"]:SetCombat( false, true ); |
212 |
19 |
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetCombat( true , false ); |
213 |
6 |
Kragenwar-3044 |
|
214 |
|
Kragenwar-3044 |
-- Initial Checks (Setting up inital states for combat states and stances and such) |
215 |
|
Kragenwar-3044 |
self:InitBars(); |
216 |
|
Kragenwar-3044 |
self:BlockChange(3, vars.classattr:IsBlockTier3Available()); |
217 |
|
Kragenwar-3044 |
self:ParryChange(3, vars.classattr:IsParryTier3Available()); |
218 |
|
Kragenwar-3044 |
self:StanceChange(vars.classattr:GetStance()); |
219 |
|
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
220 |
|
Kragenwar-3044 |
|
221 |
|
Kragenwar-3044 |
|
222 |
|
Kragenwar-3044 |
|
223 |
|
Kragenwar-3044 |
end |
224 |
|
Kragenwar-3044 |
|
225 |
|
Kragenwar-3044 |
function GuardianBars:AddEffect( effectIndex ) |
226 |
19 |
Kragenwar-3044 |
local effect = vars.player:GetEffects():Get( effectIndex ); |
227 |
6 |
Kragenwar-3044 |
|
228 |
|
Kragenwar-3044 |
-- Guardian's Ward |
229 |
19 |
Kragenwar-3044 |
if ((effect:GetName() == self.effectlist["GuardiansWard"] or effect:GetName() == self.effectlist["ImprovedGuardiansWard"])) then |
230 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetState( true , self.settings["Features"].wardactive < 3, effect:GetID()); |
231 |
10 |
Kragenwar-3044 |
if (self.settings["Features"].wardactive == 2) then |
232 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetHover( true ); |
233 |
|
Kragenwar-3044 |
elseif (self.settings["Features"].wardactive == 4) then |
234 |
19 |
Kragenwar-3044 |
self.skills["GuardiansWard"]:StartTimer( effect:GetDuration() * .70, true ); |
235 |
6 |
Kragenwar-3044 |
end |
236 |
|
Kragenwar-3044 |
|
237 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["BlockResponse"]) then |
238 |
|
Kragenwar-3044 |
self.bars["BlockTier1"]:SetState( true, effect:GetID()); |
239 |
6 |
Kragenwar-3044 |
if (not self.bars["BlockTier2"].state) then |
240 |
|
Kragenwar-3044 |
self.skills["ShieldSwipe"]:SetActive(true); |
241 |
|
Kragenwar-3044 |
self.skills["CatchABreath"]:SetActive(true); |
242 |
|
Kragenwar-3044 |
self.skills["LitanyOfDefiance"]:SetActive(true); |
243 |
10 |
Kragenwar-3044 |
if (vars.playerlevel >= 10) then |
244 |
|
Kragenwar-3044 |
self.bars["BlockTier1"]:SetZOrder(0); |
245 |
|
Kragenwar-3044 |
self.bars["BlockTier2"]:SetZOrder(-10); |
246 |
|
Kragenwar-3044 |
end |
247 |
6 |
Kragenwar-3044 |
end |
248 |
|
Kragenwar-3044 |
|
249 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["ShieldSwipe"]) then |
250 |
|
Kragenwar-3044 |
self.bars["BlockTier2"]:SetState( true, effect:GetID()); |
251 |
6 |
Kragenwar-3044 |
self.skills["ShieldSwipe"]:SetActive(false); |
252 |
|
Kragenwar-3044 |
self.skills["CatchABreath"]:SetActive(false); |
253 |
|
Kragenwar-3044 |
self.skills["LitanyOfDefiance"]:SetActive(false); |
254 |
|
Kragenwar-3044 |
self.bars["BlockTier1"]:SetZOrder(-10); |
255 |
|
Kragenwar-3044 |
self.bars["BlockTier2"]:SetZOrder(0); |
256 |
|
Kragenwar-3044 |
self.skills["ShieldTaunt"]:SetActive(true); |
257 |
|
Kragenwar-3044 |
self.skills["ShieldBash"]:SetActive(true); |
258 |
|
Kragenwar-3044 |
|
259 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["ParryResponse"]) then |
260 |
|
Kragenwar-3044 |
self.bars["ParryTier1"]:SetState( true, effect:GetID()); |
261 |
6 |
Kragenwar-3044 |
if (not self.bars["ParryTier2"].state) then |
262 |
|
Kragenwar-3044 |
self.skills["Retaliation"]:SetActive( true ); |
263 |
|
Kragenwar-3044 |
self.bars["ParryTier1"]:SetZOrder(0); |
264 |
|
Kragenwar-3044 |
self.bars["ParryTier2"]:SetZOrder(-10); |
265 |
|
Kragenwar-3044 |
end |
266 |
|
Kragenwar-3044 |
|
267 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Retaliation"]) then |
268 |
|
Kragenwar-3044 |
self.bars["ParryTier2"]:SetState( true, effect:GetID()); |
269 |
6 |
Kragenwar-3044 |
self.skills["Retaliation"]:SetActive( false ); |
270 |
|
Kragenwar-3044 |
self.bars["ParryTier1"]:SetZOrder(-10); |
271 |
|
Kragenwar-3044 |
self.bars["ParryTier2"]:SetZOrder(0); |
272 |
|
Kragenwar-3044 |
self.skills["Overwhelm"]:SetActive( true ); |
273 |
|
Kragenwar-3044 |
self.skills["Thrust"]:SetActive( true ); |
274 |
|
Kragenwar-3044 |
self.skills["WhirlingRetaliation"]:SetActive( true ); |
275 |
|
Kragenwar-3044 |
|
276 |
|
Kragenwar-3044 |
-- Stunned, Dazed, Knocked Down |
277 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Stunned"] or effect:GetName() == self.effectlist["Dazed"] or effect:GetName() == self.effectlist["KnockedDown"]) then |
278 |
|
Kragenwar-3044 |
self.skills["TurnTheTables"]:SetState( true , true, effect:GetID()); |
279 |
6 |
Kragenwar-3044 |
|
280 |
|
Kragenwar-3044 |
-- Stance Change |
281 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Overpower"]) then |
282 |
|
Kragenwar-3044 |
self.bars["Overpower"]:SetState( true, effect:GetID() ); |
283 |
6 |
Kragenwar-3044 |
self.windows["Overpower"]:SetZOrder(0); |
284 |
|
Kragenwar-3044 |
self.windows["Block"]:SetZOrder(-10); |
285 |
|
Kragenwar-3044 |
self.skills["ForcedOpening"]:SetActive( true ); |
286 |
|
Kragenwar-3044 |
self.skills["Stagger"]:SetActive( true ); |
287 |
|
Kragenwar-3044 |
self.skills["BrutalAssault"]:SetActive( true ); |
288 |
|
Kragenwar-3044 |
self.skills["ShieldBlow"]:SetActive( false ); |
289 |
|
Kragenwar-3044 |
self.skills["Protection"]:SetActive( false ); |
290 |
|
Kragenwar-3044 |
self.skills["ShieldWall"]:SetActive( false ); |
291 |
|
Kragenwar-3044 |
|
292 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Campsite"]) then |
293 |
|
Kragenwar-3044 |
self.skills["SummonTinker"]:SetState(true, true, effect:GetID() ); |
294 |
6 |
Kragenwar-3044 |
|
295 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["WesternesseSpikes"] or effect:GetName() == self.effectlist["BeleriandSpikes"] or effect:GetName() == self.effectlist["AncientDwarfSpikes"] or effect:GetName() == self.effectlist["LargeShieldSpikes"]) then |
296 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:SetState(true, true, effect:GetID() ); |
297 |
6 |
Kragenwar-3044 |
self.multi["ShieldSpikes"]:SetHover(true); |
298 |
|
Kragenwar-3044 |
|
299 |
|
Kragenwar-3044 |
-- Wound |
300 |
19 |
Kragenwar-3044 |
elseif (effect:GetCategory() == Turbine.Gameplay.EffectCategory.Wound ) then |
301 |
6 |
Kragenwar-3044 |
self.wound = self.wound + 1; |
302 |
|
Kragenwar-3044 |
if (self.settings["Features"].woundindicator) then |
303 |
|
Kragenwar-3044 |
self.skills["IgnoreThePain"]:SetColor("red"); |
304 |
|
Kragenwar-3044 |
end |
305 |
|
Kragenwar-3044 |
|
306 |
|
Kragenwar-3044 |
|
307 |
|
Kragenwar-3044 |
end |
308 |
|
Kragenwar-3044 |
end |
309 |
|
Kragenwar-3044 |
|
310 |
|
Kragenwar-3044 |
function GuardianBars:RemoveEffect( effect ) |
311 |
|
Kragenwar-3044 |
|
312 |
|
Kragenwar-3044 |
-- SetState can be called on both bars and skills |
313 |
|
Kragenwar-3044 |
-- it will store the incoming effect id and flag the state |
314 |
|
Kragenwar-3044 |
-- SetState(effectstate:Boolean, effectid:int); |
315 |
|
Kragenwar-3044 |
|
316 |
|
Kragenwar-3044 |
-- Guardian's Ward |
317 |
19 |
Kragenwar-3044 |
if (effect:GetName() == self.effectlist["GuardiansWard"] or effect:GetName() == self.effectlist["ImprovedGuardiansWard"]) then |
318 |
6 |
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetState( false , true, effect:GetID()); |
319 |
19 |
Kragenwar-3044 |
if (not self.skills["GuardiansWard"].state) then |
320 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetHover( false ); |
321 |
|
Kragenwar-3044 |
end |
322 |
6 |
Kragenwar-3044 |
|
323 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["BlockResponse"]) then |
324 |
6 |
Kragenwar-3044 |
self.bars["BlockTier1"]:SetState( false, effect:GetID()); |
325 |
|
Kragenwar-3044 |
if (not self.bars["BlockTier1"].state) then |
326 |
|
Kragenwar-3044 |
self.skills["ShieldSwipe"]:SetActive(false); |
327 |
|
Kragenwar-3044 |
self.skills["CatchABreath"]:SetActive(false); |
328 |
|
Kragenwar-3044 |
self.skills["LitanyOfDefiance"]:SetActive(false); |
329 |
|
Kragenwar-3044 |
end |
330 |
|
Kragenwar-3044 |
|
331 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["ShieldSwipe"]) then |
332 |
6 |
Kragenwar-3044 |
self.bars["BlockTier2"]:SetState( false, effect:GetID()); |
333 |
|
Kragenwar-3044 |
if (not self.bars["BlockTier2"].state) then |
334 |
|
Kragenwar-3044 |
self.skills["ShieldTaunt"]:SetActive(false); |
335 |
|
Kragenwar-3044 |
self.skills["ShieldBash"]:SetActive(false); |
336 |
|
Kragenwar-3044 |
if (self.bars["BlockTier1"].state) then |
337 |
|
Kragenwar-3044 |
self.skills["ShieldSwipe"]:SetActive(true); |
338 |
|
Kragenwar-3044 |
self.skills["CatchABreath"]:SetActive(true); |
339 |
|
Kragenwar-3044 |
self.skills["LitanyOfDefiance"]:SetActive(true); |
340 |
|
Kragenwar-3044 |
self.bars["BlockTier1"]:SetZOrder(0); |
341 |
|
Kragenwar-3044 |
self.bars["BlockTier2"]:SetZOrder(-10); |
342 |
|
Kragenwar-3044 |
end |
343 |
|
Kragenwar-3044 |
end |
344 |
|
Kragenwar-3044 |
|
345 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["ParryResponse"]) then |
346 |
6 |
Kragenwar-3044 |
self.bars["ParryTier1"]:SetState( false, effect:GetID()); |
347 |
|
Kragenwar-3044 |
if (not self.bars["ParryTier1"].state) then |
348 |
|
Kragenwar-3044 |
self.skills["Retaliation"]:SetActive(false); |
349 |
|
Kragenwar-3044 |
end |
350 |
|
Kragenwar-3044 |
|
351 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Retaliation"]) then |
352 |
6 |
Kragenwar-3044 |
self.bars["ParryTier2"]:SetState( false, effect:GetID()); |
353 |
|
Kragenwar-3044 |
if (not self.bars["ParryTier2"].state) then |
354 |
|
Kragenwar-3044 |
self.skills["Overwhelm"]:SetActive(false); |
355 |
|
Kragenwar-3044 |
self.skills["Thrust"]:SetActive(false); |
356 |
|
Kragenwar-3044 |
self.skills["WhirlingRetaliation"]:SetActive(false); |
357 |
|
Kragenwar-3044 |
if (self.bars["ParryTier1"].state) then |
358 |
|
Kragenwar-3044 |
self.skills["Retaliation"]:SetActive(true); |
359 |
|
Kragenwar-3044 |
self.bars["ParryTier1"]:SetZOrder(0); |
360 |
|
Kragenwar-3044 |
self.bars["ParryTier2"]:SetZOrder(-10); |
361 |
|
Kragenwar-3044 |
end |
362 |
|
Kragenwar-3044 |
end |
363 |
|
Kragenwar-3044 |
|
364 |
|
Kragenwar-3044 |
-- Stunned, Dazed or Knocked Down |
365 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Stunned"] or effect:GetName() == self.effectlist["Dazed"] or effect:GetName() == self.effectlist["KnockedDown"]) then |
366 |
6 |
Kragenwar-3044 |
self.skills["TurnTheTables"]:SetState( false , false, effect:GetID()); |
367 |
|
Kragenwar-3044 |
|
368 |
|
Kragenwar-3044 |
-- Stance Change |
369 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Overpower"]) then |
370 |
6 |
Kragenwar-3044 |
self.bars["Overpower"]:SetState( false, effect:GetID() ); |
371 |
|
Kragenwar-3044 |
if (not self.bars["Overpower"].state) then |
372 |
|
Kragenwar-3044 |
self.windows["Overpower"]:SetZOrder(-10); |
373 |
|
Kragenwar-3044 |
self.windows["Block"]:SetZOrder(0); |
374 |
|
Kragenwar-3044 |
self.skills["ForcedOpening"]:SetActive( false ); |
375 |
|
Kragenwar-3044 |
self.skills["Stagger"]:SetActive( false ); |
376 |
|
Kragenwar-3044 |
self.skills["BrutalAssault"]:SetActive( false ); |
377 |
|
Kragenwar-3044 |
self.skills["ShieldBlow"]:SetActive( true ); |
378 |
|
Kragenwar-3044 |
self.skills["Protection"]:SetActive( true ); |
379 |
|
Kragenwar-3044 |
self.skills["ShieldWall"]:SetActive( true ); |
380 |
|
Kragenwar-3044 |
end |
381 |
|
Kragenwar-3044 |
|
382 |
|
Kragenwar-3044 |
|
383 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["Campsite"]) then |
384 |
6 |
Kragenwar-3044 |
self.skills["SummonTinker"]:SetState(false, false, effect:GetID() ); |
385 |
|
Kragenwar-3044 |
|
386 |
19 |
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["WesternesseSpikes"] or effect:GetName() == self.effectlist["BeleriandSpikes"] or effect:GetName() == self.effectlist["AncientDwarfSpikes"] or effect:GetName() == self.effectlist["LargeShieldSpikes"]) then |
387 |
6 |
Kragenwar-3044 |
self.multi["ShieldSpikes"]:SetState(false, true, effect:GetID() ); |
388 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:SetHover(false); |
389 |
|
Kragenwar-3044 |
|
390 |
|
Kragenwar-3044 |
-- Wound |
391 |
|
Kragenwar-3044 |
elseif (effect:GetCategory() == Turbine.Gameplay.EffectCategory.Wound ) then |
392 |
|
Kragenwar-3044 |
self.wound = self.wound - 1; |
393 |
|
Kragenwar-3044 |
if (self.wound == 0) then |
394 |
|
Kragenwar-3044 |
self.skills["IgnoreThePain"]:SetColor(); |
395 |
|
Kragenwar-3044 |
end |
396 |
|
Kragenwar-3044 |
|
397 |
|
Kragenwar-3044 |
end |
398 |
|
Kragenwar-3044 |
end |
399 |
|
Kragenwar-3044 |
|
400 |
|
Kragenwar-3044 |
|
401 |
|
Kragenwar-3044 |
function GuardianBars:StanceChange(stance) |
402 |
|
Kragenwar-3044 |
|
403 |
|
Kragenwar-3044 |
-- PRIMARY STANCE SWITCHING |
404 |
|
Kragenwar-3044 |
if (self.settings["Features"].stancepriority) then |
405 |
|
Kragenwar-3044 |
local newstance = 0; |
406 |
|
Kragenwar-3044 |
|
407 |
|
Kragenwar-3044 |
if (stance == 3) then |
408 |
|
Kragenwar-3044 |
newstance = 4; |
409 |
|
Kragenwar-3044 |
elseif (stance == 4) then |
410 |
|
Kragenwar-3044 |
newstance = 3; |
411 |
|
Kragenwar-3044 |
else |
412 |
|
Kragenwar-3044 |
newstance = stance; |
413 |
|
Kragenwar-3044 |
end |
414 |
|
Kragenwar-3044 |
|
415 |
|
Kragenwar-3044 |
if (newstance == self.settings["Features"].primarystance) then |
416 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetIndex(self.settings["Features"].secondarystance); |
417 |
|
Kragenwar-3044 |
else |
418 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetIndex(self.settings["Features"].primarystance); |
419 |
|
Kragenwar-3044 |
end |
420 |
|
Kragenwar-3044 |
end |
421 |
|
Kragenwar-3044 |
|
422 |
|
Kragenwar-3044 |
-- HOVER/DISAPPEAR SWITCHING |
423 |
10 |
Kragenwar-3044 |
if (stance == 0) then |
424 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetHover( false ); |
425 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetActive( true ); |
426 |
|
Kragenwar-3044 |
else |
427 |
12 |
Valdacil-446 |
self.multi["StanceSlot"]:SetActive( self.settings["Features"].stanceactive ~= 3); |
428 |
10 |
Kragenwar-3044 |
self.multi["StanceSlot"]:SetHover( self.settings["Features"].stanceactive == 2 ); |
429 |
6 |
Kragenwar-3044 |
end |
430 |
|
Kragenwar-3044 |
end |
431 |
|
Kragenwar-3044 |
|
432 |
|
Kragenwar-3044 |
function GuardianBars:BlockChange(tier, state) |
433 |
|
Kragenwar-3044 |
if (tier == 3) then |
434 |
|
Kragenwar-3044 |
self.skills["ShieldSmash"]:SetActive( state and self.settings["Features"].shieldsmash ); |
435 |
|
Kragenwar-3044 |
end |
436 |
|
Kragenwar-3044 |
end |
437 |
|
Kragenwar-3044 |
|
438 |
|
Kragenwar-3044 |
function GuardianBars:ParryChange(tier, state) |
439 |
|
Kragenwar-3044 |
if (tier == 3) then |
440 |
|
Kragenwar-3044 |
self.skills["ToTheKing"]:SetActive( state and self.settings["Features"].totheking ); |
441 |
|
Kragenwar-3044 |
end |
442 |
|
Kragenwar-3044 |
end |
443 |
|
Kragenwar-3044 |
|
444 |
|
Kragenwar-3044 |
|
445 |
|
Kragenwar-3044 |
function GuardianBars:DefaultSettings() |
446 |
|
Kragenwar-3044 |
self.settings = { }; |
447 |
|
Kragenwar-3044 |
|
448 |
|
Kragenwar-3044 |
self.settings["Block"] = { }; |
449 |
|
Kragenwar-3044 |
self.settings["Block"].active = true; |
450 |
|
Kragenwar-3044 |
self.settings["Block"].x = 0; |
451 |
|
Kragenwar-3044 |
self.settings["Block"].y = 0; |
452 |
|
Kragenwar-3044 |
|
453 |
|
Kragenwar-3044 |
self.settings["Parry"] = { }; |
454 |
|
Kragenwar-3044 |
self.settings["Parry"].active = true; |
455 |
|
Kragenwar-3044 |
self.settings["Parry"].x = 0; |
456 |
|
Kragenwar-3044 |
self.settings["Parry"].y = 0; |
457 |
|
Kragenwar-3044 |
|
458 |
|
Kragenwar-3044 |
self.settings["Overpower"] = { }; |
459 |
|
Kragenwar-3044 |
self.settings["Overpower"].active = true; |
460 |
|
Kragenwar-3044 |
self.settings["Overpower"].x = 0; |
461 |
|
Kragenwar-3044 |
self.settings["Overpower"].y = 0; |
462 |
|
Kragenwar-3044 |
|
463 |
|
Kragenwar-3044 |
self.settings["Ward"] = { }; |
464 |
|
Kragenwar-3044 |
self.settings["Ward"].active = true; |
465 |
|
Kragenwar-3044 |
self.settings["Ward"].x = 0; |
466 |
|
Kragenwar-3044 |
self.settings["Ward"].y = 0; |
467 |
|
Kragenwar-3044 |
|
468 |
|
Kragenwar-3044 |
self.settings["Melee"] = { }; |
469 |
|
Kragenwar-3044 |
self.settings["Melee"].active = true; |
470 |
|
Kragenwar-3044 |
self.settings["Melee"].x = 0; |
471 |
|
Kragenwar-3044 |
self.settings["Melee"].y = 0; |
472 |
|
Kragenwar-3044 |
|
473 |
|
Kragenwar-3044 |
self.settings["SelfBuffs"] = { }; |
474 |
|
Kragenwar-3044 |
self.settings["SelfBuffs"].active = true; |
475 |
|
Kragenwar-3044 |
self.settings["SelfBuffs"].x = 0; |
476 |
|
Kragenwar-3044 |
self.settings["SelfBuffs"].y = 0; |
477 |
|
Kragenwar-3044 |
|
478 |
|
Kragenwar-3044 |
self.settings["Protect"] = { }; |
479 |
|
Kragenwar-3044 |
self.settings["Protect"].active = true; |
480 |
|
Kragenwar-3044 |
self.settings["Protect"].x = 0; |
481 |
|
Kragenwar-3044 |
self.settings["Protect"].y = 0; |
482 |
|
Kragenwar-3044 |
|
483 |
|
Kragenwar-3044 |
self.settings["Taunt"] = { }; |
484 |
|
Kragenwar-3044 |
self.settings["Taunt"].active = true; |
485 |
|
Kragenwar-3044 |
self.settings["Taunt"].x = 0; |
486 |
|
Kragenwar-3044 |
self.settings["Taunt"].y = 0; |
487 |
|
Kragenwar-3044 |
|
488 |
|
Kragenwar-3044 |
self.settings["Stances"] = { }; |
489 |
|
Kragenwar-3044 |
self.settings["Stances"].active = true; |
490 |
|
Kragenwar-3044 |
self.settings["Stances"].x = 0; |
491 |
|
Kragenwar-3044 |
self.settings["Stances"].y = 0; |
492 |
|
Kragenwar-3044 |
|
493 |
|
Kragenwar-3044 |
self.settings["Stunned"] = { }; |
494 |
|
Kragenwar-3044 |
self.settings["Stunned"].active = true; |
495 |
|
Kragenwar-3044 |
self.settings["Stunned"].x = 0; |
496 |
|
Kragenwar-3044 |
self.settings["Stunned"].y = 0; |
497 |
|
Kragenwar-3044 |
|
498 |
|
Kragenwar-3044 |
self.settings["Utility"] = { }; |
499 |
|
Kragenwar-3044 |
self.settings["Utility"].active = true; |
500 |
|
Kragenwar-3044 |
self.settings["Utility"].x = 0; |
501 |
|
Kragenwar-3044 |
self.settings["Utility"].y = 0; |
502 |
|
Kragenwar-3044 |
|
503 |
|
Kragenwar-3044 |
self.settings["ClassItems"] = { }; |
504 |
|
Kragenwar-3044 |
self.settings["ClassItems"].active = true; |
505 |
|
Kragenwar-3044 |
self.settings["ClassItems"].x = 0; |
506 |
|
Kragenwar-3044 |
self.settings["ClassItems"].y = 0; |
507 |
|
Kragenwar-3044 |
|
508 |
|
Kragenwar-3044 |
self.settings["Ranged"] = { }; |
509 |
|
Kragenwar-3044 |
self.settings["Ranged"].active = true; |
510 |
|
Kragenwar-3044 |
self.settings["Ranged"].x = 0; |
511 |
|
Kragenwar-3044 |
self.settings["Ranged"].y = 0; |
512 |
|
Kragenwar-3044 |
|
513 |
|
Kragenwar-3044 |
self.settings["Features"] = { }; |
514 |
|
Kragenwar-3044 |
self.settings["Features"].threatstance = false; |
515 |
|
Kragenwar-3044 |
self.settings["Features"].totheking = false; |
516 |
|
Kragenwar-3044 |
self.settings["Features"].darkness = false; |
517 |
|
Kragenwar-3044 |
self.settings["Features"].shieldsmash = false; |
518 |
|
Kragenwar-3044 |
self.settings["Features"].stancepriority = true; |
519 |
|
Kragenwar-3044 |
self.settings["Features"].primarystance = 1; |
520 |
|
Kragenwar-3044 |
self.settings["Features"].secondarystance = 3; |
521 |
|
Kragenwar-3044 |
self.settings["Features"].woundindicator = true; |
522 |
10 |
Kragenwar-3044 |
self.settings["Features"].stanceactive = 2; |
523 |
|
Kragenwar-3044 |
self.settings["Features"].wardactive = 4; |
524 |
6 |
Kragenwar-3044 |
|
525 |
10 |
Kragenwar-3044 |
|
526 |
6 |
Kragenwar-3044 |
self.settings["Quickslots"] = { }; |
527 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike1 = {active = false, type = 0, data = "" } |
528 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike2 = {active = false, type = 0, data = "" } |
529 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike3 = {active = false, type = 0, data = "" } |
530 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike4 = {active = false, type = 0, data = "" } |
531 |
|
Kragenwar-3044 |
|
532 |
|
Kragenwar-3044 |
end |
533 |
|
Kragenwar-3044 |
|
534 |
|
Kragenwar-3044 |
|
535 |
|
Kragenwar-3044 |
function GuardianBars:UpdateSettings() |
536 |
10 |
Kragenwar-3044 |
if (settings.vers < 3.01) then |
537 |
|
Kragenwar-3044 |
|
538 |
|
Kragenwar-3044 |
if (self.settings["Features"].wardwarning) then self.settings["Features"].wardactive = 4; else self.settings["Features"].wardactive = 3; end |
539 |
|
Kragenwar-3044 |
if (self.settings["Features"].stancehover) then self.settings["Features"].stanceactive = 2; else if (self.settings["Features"].stancedisappear) then self.settings["Features"].stanceactive = 3; else self.settings["Features"].stanceactive = 1; end end |
540 |
|
Kragenwar-3044 |
|
541 |
|
Kragenwar-3044 |
self.settings["Features"].wardwarning = nil; |
542 |
|
Kragenwar-3044 |
self.settings["Features"].stancehover = nil; |
543 |
|
Kragenwar-3044 |
self.settings["Features"].stancedisappear = nil; |
544 |
|
Kragenwar-3044 |
end |
545 |
|
Kragenwar-3044 |
|
546 |
|
Kragenwar-3044 |
settings.vers = vars.vers; |
547 |
6 |
Kragenwar-3044 |
|
548 |
|
Kragenwar-3044 |
end |
549 |
|
Kragenwar-3044 |
|
550 |
|
Kragenwar-3044 |
|
551 |
|
Kragenwar-3044 |
function GuardianBars:ShowSetup() |
552 |
|
Kragenwar-3044 |
self.setup:SetVisible(true); |
553 |
|
Kragenwar-3044 |
|
554 |
|
Kragenwar-3044 |
self.setupbb.opacityslider:SetValue(settings.opacity * 100); |
555 |
|
Kragenwar-3044 |
self.setupbb.checkboxlock:SetChecked(settings.lockslots); |
556 |
|
Kragenwar-3044 |
self.setupbb.checkboxgrid:SetChecked(settings.snaptogrid); |
557 |
|
Kragenwar-3044 |
|
558 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetText("Block Reactives"); |
559 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetChecked (self.settings["Block"].active); |
560 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetVisible(true); |
561 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetText("Parry Reactives"); |
562 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetChecked (self.settings["Parry"].active); |
563 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetVisible(true); |
564 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetText("Overpower Skills"); |
565 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetChecked (self.settings["Overpower"].active); |
566 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetVisible(true); |
567 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetText("Guardians Ward"); |
568 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetChecked (self.settings["Ward"].active); |
569 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetVisible(true); |
570 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetText("Melee Skills"); |
571 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetChecked (self.settings["Melee"].active); |
572 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetVisible(true); |
573 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetText("Self Buffs"); |
574 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetChecked (self.settings["SelfBuffs"].active); |
575 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetVisible(true); |
576 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetText("Protect Fellows"); |
577 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetChecked (self.settings["Protect"].active); |
578 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetVisible(true); |
579 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetText("Taunt"); |
580 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetChecked (self.settings["Taunt"].active); |
581 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetVisible(true); |
582 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetText("Stances"); |
583 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetChecked (self.settings["Stances"].active); |
584 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetVisible(true); |
585 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetText("Stunned"); |
586 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetChecked (self.settings["Stunned"].active); |
587 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetVisible(true); |
588 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetText("Utility"); |
589 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetChecked (self.settings["Utility"].active); |
590 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetVisible(true); |
591 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetText("Class Items"); |
592 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetChecked (self.settings["ClassItems"].active); |
593 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetVisible(true); |
594 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetText("Ranged"); |
595 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetChecked (self.settings["Ranged"].active); |
596 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetVisible(true); |
597 |
|
Kragenwar-3044 |
|
598 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetText("Guardian's Threat"); |
599 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetChecked (self.settings["Features"].threatstance); |
600 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetVisible(true); |
601 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetText("Shield Smash"); |
602 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetChecked (self.settings["Features"].shieldsmash); |
603 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetVisible(true); |
604 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetText("To The King"); |
605 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetChecked (self.settings["Features"].totheking); |
606 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetVisible(true); |
607 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetText("Challenge The Darkness"); |
608 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetChecked (self.settings["Features"].darkness); |
609 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetVisible(true); |
610 |
|
Kragenwar-3044 |
|
611 |
10 |
Kragenwar-3044 |
self.setupf.checkboxf10:SetText("Stance Priority"); |
612 |
|
Kragenwar-3044 |
self.setupf.checkboxf10:SetChecked (self.settings["Features"].stancepriority); |
613 |
6 |
Kragenwar-3044 |
self.setupf.checkboxf10:SetVisible(true); |
614 |
|
Kragenwar-3044 |
|
615 |
10 |
Kragenwar-3044 |
self.setupf.checkboxf11:SetText("Wound Indicator"); |
616 |
|
Kragenwar-3044 |
self.setupf.checkboxf11:SetChecked (self.settings["Features"].woundindicator); |
617 |
6 |
Kragenwar-3044 |
self.setupf.checkboxf11:SetVisible(true); |
618 |
|
Kragenwar-3044 |
|
619 |
10 |
Kragenwar-3044 |
self.setupf.combo1box.listBox:ClearItems(); |
620 |
|
Kragenwar-3044 |
self.setupf.combo1Label:SetText("Guardian's Ward Active"); |
621 |
|
Kragenwar-3044 |
self.setupf.combo1Label:SetVisible(true); |
622 |
|
Kragenwar-3044 |
local combolist = {"None", "Dim", "Hide", "Early Warning"} |
623 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
624 |
|
Kragenwar-3044 |
self.setupf.combo1box:AddItem(v, k); |
625 |
|
Kragenwar-3044 |
end |
626 |
|
Kragenwar-3044 |
self.setupf.combo1box:SetVisible(true); |
627 |
|
Kragenwar-3044 |
self.setupf.combo1box:SetSelection(self.settings["Features"].wardactive); |
628 |
6 |
Kragenwar-3044 |
|
629 |
10 |
Kragenwar-3044 |
self.setupf.combo2box.listBox:ClearItems(); |
630 |
|
Kragenwar-3044 |
self.setupf.combo2Label:SetText("Primary Stance"); |
631 |
|
Kragenwar-3044 |
self.setupf.combo2Label:SetVisible(true); |
632 |
|
Kragenwar-3044 |
local combolist = {"Guardian's Defence", "Guardian's Parry", "Overpower", "Threat"} |
633 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
634 |
|
Kragenwar-3044 |
self.setupf.combo2box:AddItem(v, k); |
635 |
|
Kragenwar-3044 |
end |
636 |
|
Kragenwar-3044 |
self.setupf.combo2box:SetVisible(true); |
637 |
|
Kragenwar-3044 |
self.setupf.combo2box:SetSelection(self.settings["Features"].primarystance); |
638 |
6 |
Kragenwar-3044 |
|
639 |
10 |
Kragenwar-3044 |
self.setupf.combo3box.listBox:ClearItems(); |
640 |
|
Kragenwar-3044 |
self.setupf.combo3Label:SetText("Secondary Stance"); |
641 |
|
Kragenwar-3044 |
self.setupf.combo3Label:SetVisible(true); |
642 |
|
Kragenwar-3044 |
local combolist = {"Guardian's Defence", "Guardian's Parry", "Overpower", "Threat"} |
643 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
644 |
|
Kragenwar-3044 |
self.setupf.combo3box:AddItem(v, k); |
645 |
6 |
Kragenwar-3044 |
end |
646 |
10 |
Kragenwar-3044 |
self.setupf.combo3box:SetVisible(true); |
647 |
|
Kragenwar-3044 |
self.setupf.combo3box:SetSelection(self.settings["Features"].secondarystance); |
648 |
|
Kragenwar-3044 |
|
649 |
|
Kragenwar-3044 |
self.setupf.combo4box.listBox:ClearItems(); |
650 |
|
Kragenwar-3044 |
self.setupf.combo4Label:SetText("Stance Active"); |
651 |
|
Kragenwar-3044 |
self.setupf.combo4Label:SetVisible(true); |
652 |
|
Kragenwar-3044 |
local combolist = {"None", "Dim", "Hide"} |
653 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
654 |
|
Kragenwar-3044 |
self.setupf.combo4box:AddItem(v, k); |
655 |
|
Kragenwar-3044 |
end |
656 |
|
Kragenwar-3044 |
self.setupf.combo4box:SetVisible(true); |
657 |
|
Kragenwar-3044 |
self.setupf.combo4box:SetSelection(self.settings["Features"].stanceactive); |
658 |
6 |
Kragenwar-3044 |
|
659 |
|
Kragenwar-3044 |
self.setupqs.quickslot1:SetVisible(true); |
660 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot1:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].spike1["type"], self.settings["Quickslots"].spike1["data"] ) ); end); |
661 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetText("Shield Spikes"); |
662 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetChecked(self.settings["Quickslots"].spike1["active"]); |
663 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetVisible(true); |
664 |
|
Kragenwar-3044 |
self.setupqs.quickslot2:SetVisible(true); |
665 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot2:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].spike2["type"], self.settings["Quickslots"].spike2["data"] ) ); end); |
666 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetText("Shield Spikes"); |
667 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetChecked(self.settings["Quickslots"].spike2["active"]); |
668 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetVisible(true); |
669 |
|
Kragenwar-3044 |
self.setupqs.quickslot3:SetVisible(true); |
670 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot3:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].spike3["type"], self.settings["Quickslots"].spike3["data"] ) ); end); |
671 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetText("Shield Spikes"); |
672 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetChecked(self.settings["Quickslots"].spike3["active"]); |
673 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetVisible(true); |
674 |
|
Kragenwar-3044 |
self.setupqs.quickslot4:SetVisible(true); |
675 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot4:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].spike4["type"], self.settings["Quickslots"].spike4["data"] ) ); end); |
676 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetText("Shield Spikes"); |
677 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetChecked(self.settings["Quickslots"].spike4["active"]); |
678 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetVisible(true); |
679 |
|
Kragenwar-3044 |
|
680 |
|
Kragenwar-3044 |
|
681 |
|
Kragenwar-3044 |
end |
682 |
|
Kragenwar-3044 |
|
683 |
|
Kragenwar-3044 |
|
684 |
|
Kragenwar-3044 |
function GuardianBars:SetupClosing() |
685 |
|
Kragenwar-3044 |
settings.opacity = self.setupbb.opacityslider:GetValue() / 100; |
686 |
|
Kragenwar-3044 |
settings.lockslots = self.setupbb.checkboxlock:IsChecked(); |
687 |
|
Kragenwar-3044 |
settings.snaptogrid = self.setupbb.checkboxgrid:IsChecked(); |
688 |
|
Kragenwar-3044 |
|
689 |
|
Kragenwar-3044 |
self.settings["Block"].active = self.setupbb.checkboxbb1:IsChecked(); |
690 |
|
Kragenwar-3044 |
self.settings["Parry"].active = self.setupbb.checkboxbb2:IsChecked(); |
691 |
|
Kragenwar-3044 |
self.settings["Overpower"].active = self.setupbb.checkboxbb3:IsChecked(); |
692 |
|
Kragenwar-3044 |
self.settings["Ward"].active = self.setupbb.checkboxbb4:IsChecked(); |
693 |
|
Kragenwar-3044 |
self.settings["Melee"].active = self.setupbb.checkboxbb5:IsChecked(); |
694 |
|
Kragenwar-3044 |
self.settings["SelfBuffs"].active = self.setupbb.checkboxbb6:IsChecked(); |
695 |
|
Kragenwar-3044 |
self.settings["Protect"].active = self.setupbb.checkboxbb7:IsChecked(); |
696 |
|
Kragenwar-3044 |
self.settings["Taunt"].active = self.setupbb.checkboxbb8:IsChecked(); |
697 |
|
Kragenwar-3044 |
self.settings["Stances"].active = self.setupbb.checkboxbb9:IsChecked(); |
698 |
|
Kragenwar-3044 |
self.settings["Stunned"].active = self.setupbb.checkboxbb10:IsChecked(); |
699 |
|
Kragenwar-3044 |
self.settings["Utility"].active = self.setupbb.checkboxbb11:IsChecked(); |
700 |
|
Kragenwar-3044 |
self.settings["ClassItems"].active = self.setupbb.checkboxbb12:IsChecked(); |
701 |
|
Kragenwar-3044 |
self.settings["Ranged"].active = self.setupbb.checkboxbb13:IsChecked(); |
702 |
|
Kragenwar-3044 |
|
703 |
|
Kragenwar-3044 |
self.settings["Features"].threatstance = self.setupf.checkboxf1:IsChecked(); |
704 |
|
Kragenwar-3044 |
self.settings["Features"].shieldsmash = self.setupf.checkboxf2:IsChecked(); |
705 |
|
Kragenwar-3044 |
self.settings["Features"].totheking = self.setupf.checkboxf3:IsChecked(); |
706 |
|
Kragenwar-3044 |
self.settings["Features"].darkness = self.setupf.checkboxf4:IsChecked(); |
707 |
|
Kragenwar-3044 |
|
708 |
10 |
Kragenwar-3044 |
self.settings["Features"].stancepriority = self.setupf.checkboxf10:IsChecked(); |
709 |
|
Kragenwar-3044 |
self.settings["Features"].woundindicator = self.setupf.checkboxf11:IsChecked(); |
710 |
6 |
Kragenwar-3044 |
|
711 |
10 |
Kragenwar-3044 |
self.settings["Features"].wardactive = self.setupf.combo1box:GetSelection(); |
712 |
|
Kragenwar-3044 |
self.settings["Features"].primarystance = self.setupf.combo2box:GetSelection(); |
713 |
|
Kragenwar-3044 |
self.settings["Features"].secondarystance = self.setupf.combo3box:GetSelection(); |
714 |
|
Kragenwar-3044 |
self.settings["Features"].stanceactive = self.setupf.combo4box:GetSelection(); |
715 |
6 |
Kragenwar-3044 |
|
716 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike1 = { active = self.setupqs.quickslot1cb:IsChecked(), type = self.setupqs.quickslot1:GetShortcut():GetType(), data = self.setupqs.quickslot1:GetShortcut():GetData() }; |
717 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike2 = { active = self.setupqs.quickslot2cb:IsChecked(), type = self.setupqs.quickslot2:GetShortcut():GetType(), data = self.setupqs.quickslot2:GetShortcut():GetData() }; |
718 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike3 = { active = self.setupqs.quickslot3cb:IsChecked(), type = self.setupqs.quickslot3:GetShortcut():GetType(), data = self.setupqs.quickslot3:GetShortcut():GetData() }; |
719 |
|
Kragenwar-3044 |
self.settings["Quickslots"].spike4 = { active = self.setupqs.quickslot4cb:IsChecked(), type = self.setupqs.quickslot4:GetShortcut():GetType(), data = self.setupqs.quickslot4:GetShortcut():GetData() }; |
720 |
|
Kragenwar-3044 |
|
721 |
|
Kragenwar-3044 |
self:SaveSettings(); |
722 |
|
Kragenwar-3044 |
self:Refresh(); |
723 |
|
Kragenwar-3044 |
|
724 |
|
Kragenwar-3044 |
end |
725 |
|
Kragenwar-3044 |
|
726 |
|
Kragenwar-3044 |
|
727 |
|
Kragenwar-3044 |
function GuardianBars:Refresh() |
728 |
|
Kragenwar-3044 |
|
729 |
|
Kragenwar-3044 |
self:RefreshBars(); |
730 |
|
Kragenwar-3044 |
|
731 |
10 |
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetActive( true ); |
732 |
|
Kragenwar-3044 |
if (self.settings["Features"].wardactive == 2) then |
733 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetHover( self.skills["GuardiansWard"].state ); |
734 |
|
Kragenwar-3044 |
elseif (self.settings["Features"].wardactive >= 3) then |
735 |
|
Kragenwar-3044 |
self.skills["GuardiansWard"]:SetActive( not self.skills["GuardiansWard"].state ); |
736 |
|
Kragenwar-3044 |
end |
737 |
|
Kragenwar-3044 |
|
738 |
6 |
Kragenwar-3044 |
-- Set State on Legendary Skills |
739 |
|
Kragenwar-3044 |
self.skills["ShieldSmash"]:SetActive(self.settings["Features"].shieldsmash and vars.classattr:IsBlockTier3Available()); |
740 |
|
Kragenwar-3044 |
self.skills["ToTheKing"]:SetActive(self.settings["Features"].totheking and vars.classattr:IsParryTier3Available()); |
741 |
|
Kragenwar-3044 |
self.skills["ChallengeTheDarkness"]:SetActive(self.settings["Features"].darkness); |
742 |
|
Kragenwar-3044 |
|
743 |
|
Kragenwar-3044 |
-- Re-Build Stance Slot (Multi) |
744 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:Clear(); |
745 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("GuardiansDefence", 4, "0x70003EDF"); |
746 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("GuardiansParry", 12, "0x70003EE3"); |
747 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("Overpower", 30, "0x7000D4B1"); |
748 |
|
Kragenwar-3044 |
if (self.settings["Features"].threatstance) then self.multi["StanceSlot"]:AddShortCut("GuardiansThreat", 41, "0x70002ED4"); end |
749 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:LevelCheck(); |
750 |
|
Kragenwar-3044 |
|
751 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:Clear(); |
752 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike1", self.settings["Quickslots"].spike1["active"], self.settings["Quickslots"].spike1["type"], self.settings["Quickslots"].spike1["data"]); |
753 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike2", self.settings["Quickslots"].spike2["active"], self.settings["Quickslots"].spike2["type"], self.settings["Quickslots"].spike2["data"]); |
754 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike3", self.settings["Quickslots"].spike3["active"], self.settings["Quickslots"].spike3["type"], self.settings["Quickslots"].spike3["data"]); |
755 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:AddShortCut("Spike4", self.settings["Quickslots"].spike4["active"], self.settings["Quickslots"].spike4["type"], self.settings["Quickslots"].spike4["data"]); |
756 |
|
Kragenwar-3044 |
self.multi["ShieldSpikes"]:Refresh(); |
757 |
|
Kragenwar-3044 |
|
758 |
|
Kragenwar-3044 |
if (self.settings["Features"].woundindicator and self.wound > 0) then |
759 |
|
Kragenwar-3044 |
self.skills["IgnoreThePain"]:SetColor("red"); |
760 |
|
Kragenwar-3044 |
else |
761 |
|
Kragenwar-3044 |
self.skills["IgnoreThePain"]:SetColor(); |
762 |
|
Kragenwar-3044 |
end |
763 |
|
Kragenwar-3044 |
|
764 |
|
Kragenwar-3044 |
self:StanceChange(vars.classattr:GetStance()); |
765 |
|
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
766 |
|
Kragenwar-3044 |
|
767 |
|
Kragenwar-3044 |
Turbine.Shell.WriteLine("KragenBars: Guardian Bars refresh completed successfully."); |
768 |
|
Kragenwar-3044 |
|
769 |
|
Kragenwar-3044 |
end |