1 |
72 |
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 |
HunterBars = class( KragenPlugs.KragenBars.ClassBar ); |
8 |
|
Kragenwar-3044 |
|
9 |
|
Kragenwar-3044 |
function HunterBars:Constructor() |
10 |
|
Kragenwar-3044 |
|
11 |
|
Kragenwar-3044 |
KragenPlugs.KragenBars.ClassBar.Constructor( self ); |
12 |
|
Kragenwar-3044 |
|
13 |
|
Kragenwar-3044 |
-- SET AND UPDATE DEFAULT SETTINGS |
14 |
|
Kragenwar-3044 |
if (not settings.class) then |
15 |
|
Kragenwar-3044 |
settings.class = vars.playerclass; |
16 |
|
Kragenwar-3044 |
self:DefaultSettings(); |
17 |
|
Kragenwar-3044 |
self:ShowSetup(); |
18 |
|
Kragenwar-3044 |
else |
19 |
|
Kragenwar-3044 |
self.settings = settings.classinfo; |
20 |
|
Kragenwar-3044 |
if (settings.vers ~= vars.vers) then |
21 |
|
Kragenwar-3044 |
self:UpdateSettings(); |
22 |
|
Kragenwar-3044 |
end |
23 |
|
Kragenwar-3044 |
end |
24 |
|
Kragenwar-3044 |
|
25 |
|
Kragenwar-3044 |
-- CLASS SPECIFIC VARIABLES |
26 |
|
Kragenwar-3044 |
|
27 |
|
Kragenwar-3044 |
|
28 |
|
Kragenwar-3044 |
-- DEFINE THE EFFECT LIST BASED ON CLIENT LANGUAGE |
29 |
|
Kragenwar-3044 |
self.DefineEffectList = function() |
30 |
|
Kragenwar-3044 |
self.effectlist = { }; |
31 |
|
Kragenwar-3044 |
-- ENGLISH CLIENT |
32 |
|
Kragenwar-3044 |
if (settings.language == 1) then |
33 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Parry Response"; |
34 |
|
Kragenwar-3044 |
self.effectlist["FindthePath"] = "Find the Path"; |
35 |
|
Kragenwar-3044 |
self.effectlist["SwiftStroke"] = "Swift Stroke"; |
36 |
|
Kragenwar-3044 |
self.effectlist["SimpleFireoil"] = "Simple Fire-oil"; |
37 |
|
Kragenwar-3044 |
self.effectlist["Fireoil"] = "Fire-oil"; |
38 |
|
Kragenwar-3044 |
self.effectlist["RefinedFireoil"] = "Refined Fire-oil"; |
39 |
|
Kragenwar-3044 |
self.effectlist["PureFireoil"] = "Pure Fire-oil"; |
40 |
|
Kragenwar-3044 |
self.effectlist["SimpleLightoil"] = "Simple Light-oil"; |
41 |
|
Kragenwar-3044 |
self.effectlist["Lightoil"] = "Light-oil"; |
42 |
|
Kragenwar-3044 |
self.effectlist["RefinedLightoil"] = "Refined Light-oil"; |
43 |
|
Kragenwar-3044 |
self.effectlist["PureLightoil"] = "Pure Light-oil"; |
44 |
|
Kragenwar-3044 |
self.effectlist["BowChant"] = "Bow Chant"; |
45 |
|
Kragenwar-3044 |
elseif (settings.language == 2) then |
46 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Parry Response"; |
47 |
|
Kragenwar-3044 |
self.effectlist["FindthePath"] = "Find the Path"; |
48 |
|
Kragenwar-3044 |
self.effectlist["SwiftStroke"] = "Swift Stroke"; |
49 |
|
Kragenwar-3044 |
self.effectlist["SimpleFireoil"] = "Simple Fire-oil"; |
50 |
|
Kragenwar-3044 |
self.effectlist["Fireoil"] = "Fire-oil"; |
51 |
|
Kragenwar-3044 |
self.effectlist["RefinedFireoil"] = "Refined Fire-oil"; |
52 |
|
Kragenwar-3044 |
self.effectlist["PureFireoil"] = "Pure Fire-oil"; |
53 |
|
Kragenwar-3044 |
self.effectlist["SimpleLightoil"] = "Simple Light-oil"; |
54 |
|
Kragenwar-3044 |
self.effectlist["Lightoil"] = "Light-oil"; |
55 |
|
Kragenwar-3044 |
self.effectlist["RefinedLightoil"] = "Refined Light-oil"; |
56 |
|
Kragenwar-3044 |
self.effectlist["PureLightoil"] = "Pure Light-oil"; |
57 |
|
Kragenwar-3044 |
self.effectlist["BowChant"] = "Bow Chant"; |
58 |
|
Kragenwar-3044 |
Turbine.Shell.WriteLine("Some features may not function with the French Client. If you would like to help with French effect names goto http://www.lotrointerface.com/downloads/info384-KragenBars.html"); |
59 |
|
Kragenwar-3044 |
elseif (settings.language == 3) then |
60 |
|
Kragenwar-3044 |
self.effectlist["ParryResponse"] = "Parry Response"; |
61 |
|
Kragenwar-3044 |
self.effectlist["FindthePath"] = "Find the Path"; |
62 |
|
Kragenwar-3044 |
self.effectlist["SwiftStroke"] = "Swift Stroke"; |
63 |
|
Kragenwar-3044 |
self.effectlist["SimpleFireoil"] = "Simple Fire-oil"; |
64 |
|
Kragenwar-3044 |
self.effectlist["Fireoil"] = "Fire-oil"; |
65 |
|
Kragenwar-3044 |
self.effectlist["RefinedFireoil"] = "Refined Fire-oil"; |
66 |
|
Kragenwar-3044 |
self.effectlist["PureFireoil"] = "Pure Fire-oil"; |
67 |
|
Kragenwar-3044 |
self.effectlist["SimpleLightoil"] = "Simple Light-oil"; |
68 |
|
Kragenwar-3044 |
self.effectlist["Lightoil"] = "Light-oil"; |
69 |
|
Kragenwar-3044 |
self.effectlist["RefinedLightoil"] = "Refined Light-oil"; |
70 |
|
Kragenwar-3044 |
self.effectlist["PureLightoil"] = "Pure Light-oil"; |
71 |
|
Kragenwar-3044 |
self.effectlist["BowChant"] = "Bow Chant"; |
72 |
|
Kragenwar-3044 |
Turbine.Shell.WriteLine("Some features may not function with the German Client. If you would like to help with German effect names goto http://www.lotrointerface.com/downloads/info384-KragenBars.html"); |
73 |
|
Kragenwar-3044 |
end |
74 |
|
Kragenwar-3044 |
end |
75 |
|
Kragenwar-3044 |
|
76 |
|
Kragenwar-3044 |
-- BUILD WINDOWS BARS SKILLS AND MULTIS -- |
77 |
|
Kragenwar-3044 |
|
78 |
|
Kragenwar-3044 |
-- ALL X, Y, WIDTH, HEIGHT values are in quickslot (ie: 1 width = the width of one quickslot: 35 px); |
79 |
|
Kragenwar-3044 |
-- Build Windows SkillWindow( name:String, defaultx:int, defaulty:int, width:int, height:int, settings:table); |
80 |
|
Kragenwar-3044 |
self.windows["Parry"] = SkillWindow("Parry", 1, 1, 1, 1, self.settings["Parry"] ); |
81 |
|
Kragenwar-3044 |
self.windows["Melee"] = SkillWindow("Melee", 2, 1, 5, 1, self.settings["Melee"] ); |
82 |
|
Kragenwar-3044 |
self.windows["BowInduct"] = SkillWindow("BowInduct", 1, 2, 5, 1, self.settings["BowInduct"] ); |
83 |
|
Kragenwar-3044 |
self.windows["BowFocus"] = SkillWindow("BowFocus", 1, 3, 5, 1, self.settings["BowFocus"] ); |
84 |
|
Kragenwar-3044 |
self.windows["Dethreat"] = SkillWindow("Dethreat", 7, 2, 1, 1, self.settings["Dethreat"] ); |
85 |
|
Kragenwar-3044 |
self.windows["Utility"] = SkillWindow("Utility", 1, 4, 3, 1, self.settings["Utility"] ); |
86 |
|
Kragenwar-3044 |
self.windows["Tracking"] = SkillWindow("Tracking", 4, 4, 1, 1, self.settings["Tracking"] ); |
87 |
|
Kragenwar-3044 |
self.windows["Fear"] = SkillWindow("Fear", 5, 2, 2, 1, self.settings["Fear"] ); |
88 |
|
Kragenwar-3044 |
self.windows["Stance"] = SkillWindow("Stance", 7, 4, 2, 1, self.settings["Stance"] ); |
89 |
|
Kragenwar-3044 |
self.windows["Focus"] = SkillWindow("Focus", 1, 5, 4, 1, self.settings["Focus"] ); |
90 |
|
Kragenwar-3044 |
self.windows["Restoration"] = SkillWindow("Restoration",5, 5, 3, 1, self.settings["Restoration"]); |
91 |
|
Kragenwar-3044 |
self.windows["Trapping"] = SkillWindow("Trapping", 5, 4, 2, 1, self.settings["Trapping"] ); |
92 |
|
Kragenwar-3044 |
self.windows["Oils"] = SkillWindow("Oils", 9, 4, 3, 1, self.settings["Oils"] ); |
93 |
|
Kragenwar-3044 |
self.windows["Ports"] = SkillWindow("Ports", 8, 5, 1, 1, self.settings["Ports"] ); |
94 |
|
Kragenwar-3044 |
|
95 |
|
Kragenwar-3044 |
-- Build Bars SkillBar( parent:SkillWindow, x:int, y:int, width:int, height:int, active:Boolean, exclusive:boolean); |
96 |
|
Kragenwar-3044 |
self.bars["Parry"] = SkillBar(self.windows["Parry"], 1, 1, 1, 1, true, false); |
97 |
|
Kragenwar-3044 |
self.bars["Melee"] = SkillBar(self.windows["Melee"], 1, 1, 5, 1, true, false); |
98 |
|
Kragenwar-3044 |
self.bars["BowInduct"] = SkillBar(self.windows["BowInduct"], 1, 1, 5, 1, true, false); |
99 |
|
Kragenwar-3044 |
self.bars["BowFocus"] = SkillBar(self.windows["BowFocus"], 1, 1, 5, 1, true, false); |
100 |
|
Kragenwar-3044 |
self.bars["Dethreat"] = SkillBar(self.windows["Dethreat"], 1, 1, 1, 1, true, false); |
101 |
|
Kragenwar-3044 |
self.bars["Utility"] = SkillBar(self.windows["Utility"], 1, 1, 3, 1, true, false); |
102 |
|
Kragenwar-3044 |
self.bars["Tracking"] = SkillBar(self.windows["Tracking"], 1, 1, 1, 1, true, false); |
103 |
|
Kragenwar-3044 |
self.bars["Fear"] = SkillBar(self.windows["Fear"], 1, 1, 2, 1, true, false); |
104 |
|
Kragenwar-3044 |
self.bars["Stance"] = SkillBar(self.windows["Stance"], 1, 1, 2, 1, true, false); |
105 |
|
Kragenwar-3044 |
self.bars["Focus"] = SkillBar(self.windows["Focus"], 1, 1, 4, 1, true, false); |
106 |
|
Kragenwar-3044 |
self.bars["Restoration"] = SkillBar(self.windows["Restoration"], 1, 1, 3, 1, true, false); |
107 |
|
Kragenwar-3044 |
self.bars["Trapping"] = SkillBar(self.windows["Trapping"], 1, 1, 2, 1, true, false); |
108 |
|
Kragenwar-3044 |
self.bars["Oils"] = SkillBar(self.windows["Oils"], 1, 1, 3, 1, true, false); |
109 |
|
Kragenwar-3044 |
self.bars["Ports"] = SkillBar(self.windows["Ports"], 1, 1, 1, 1, true, false); |
110 |
|
Kragenwar-3044 |
|
111 |
|
Kragenwar-3044 |
-- Build Skills SkillSlot( parent:SkillBar, x:int, y:int, active:Boolean, level:int, hexcode:String ); |
112 |
|
Kragenwar-3044 |
self.skills["AgileRejoinder"] = SkillSlot(self.bars["Parry"], 1, 1, false, 24, "0x70003F3C"); |
113 |
|
Kragenwar-3044 |
|
114 |
|
Kragenwar-3044 |
self.skills["SwiftStroke"] = SkillSlot(self.bars["Melee"], 1, 1, true, 1, "0x70003F38"); |
115 |
|
Kragenwar-3044 |
self.skills["Blindside"] = SkillSlot(self.bars["Melee"], 4, 1, true, 1, "0x70003F3B"); |
116 |
|
Kragenwar-3044 |
self.skills["ScourgingBlow"] = SkillSlot(self.bars["Melee"], 2, 1, true, 4, "0x70003F3A"); |
117 |
|
Kragenwar-3044 |
self.skills["LowCut"] = SkillSlot(self.bars["Melee"], 3, 1, true, 16, "0x70003F39"); |
118 |
|
Kragenwar-3044 |
self.skills["DazingBlow"] = SkillSlot(self.bars["Melee"], 5, 1, true, { 48, 52 }, { "0x70021D0E", "0x70021D18" }); |
119 |
|
Kragenwar-3044 |
|
120 |
|
Kragenwar-3044 |
self.skills["QuickShot"] = SkillSlot(self.bars["BowInduct"], 1, 1, true, 1, "0x70003F32"); |
121 |
|
Kragenwar-3044 |
self.skills["BarbedArrow"] = SkillSlot(self.bars["BowInduct"], 2, 1, true, 4, "0x70003F33"); |
122 |
|
Kragenwar-3044 |
self.skills["SwiftBow"] = SkillSlot(self.bars["BowInduct"], 3, 1, true, { 10, 54 }, { "0x70003F34", "0x700153E2" }); |
123 |
|
Kragenwar-3044 |
self.skills["HeartSeeker"] = SkillSlot(self.bars["BowInduct"], 4, 1, true, 50, "0x7000A2D3"); |
124 |
|
Kragenwar-3044 |
self.skills["DistractingShot"] = SkillSlot(self.bars["BowInduct"], 5, 1, true, 58, "0x7000F9AB"); |
125 |
|
Kragenwar-3044 |
|
126 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"] = SkillSlot(self.bars["BowFocus"], 1, 1, true, 2, "0x70003F35"); |
127 |
|
Kragenwar-3044 |
self.skills["RainofArrows"] = SkillSlot(self.bars["BowFocus"], 2, 1, true, 20, "0x70003F36"); |
128 |
|
Kragenwar-3044 |
self.skills["MercifulShot"] = SkillSlot(self.bars["BowFocus"], 3, 1, true, { 30, 52 }, { "0x70003F37", "0x700153E5" }); |
129 |
|
Kragenwar-3044 |
self.skills["BloodArrow"] = SkillSlot(self.bars["BowFocus"], 4, 1, true, 44, "0x70021D0D"); |
130 |
|
Kragenwar-3044 |
self.skills["RainofThorns"] = SkillSlot(self.bars["BowFocus"], 5, 1, self.settings["Features"].thorns, 41, "0x700010F4"); |
131 |
|
Kragenwar-3044 |
|
132 |
|
Kragenwar-3044 |
self.skills["BeneathNotice"] = SkillSlot(self.bars["Dethreat"], 1, 1, true, { 38, 64 }, { "0x700030EC", "0x70020DF8" }); |
133 |
|
Kragenwar-3044 |
|
134 |
|
Kragenwar-3044 |
self.skills["DesperateFlight"] = SkillSlot(self.bars["Utility"], 1, 1, true, 20, "0x70003F40"); |
135 |
|
Kragenwar-3044 |
self.skills["BrightCampfire"] = SkillSlot(self.bars["Utility"], 2, 1, true, 22, "0x70003F3F"); |
136 |
|
Kragenwar-3044 |
self.skills["Camouflage"] = SkillSlot(self.bars["Utility"], 3, 1, true, 40, "0x70003F48"); |
137 |
|
Kragenwar-3044 |
|
138 |
|
Kragenwar-3044 |
self.skills["CryofthePredator"] = SkillSlot(self.bars["Fear"], 1, 1, true, 12, "0x70003F49"); |
139 |
|
Kragenwar-3044 |
self.skills["BardsArrow"] = SkillSlot(self.bars["Fear"], 2, 1, self.settings["Features"].bards, 41, "0x700010D3"); |
140 |
|
Kragenwar-3044 |
|
141 |
|
Kragenwar-3044 |
self.skills["FindthePath"] = SkillSlot(self.bars["Stance"], 2, 1, true, 14, "0x70003F3D"); |
142 |
|
Kragenwar-3044 |
|
143 |
|
Kragenwar-3044 |
self.skills["Focus"] = SkillSlot(self.bars["Focus"], 1, 1, true, 8, "0x70003F4C"); |
144 |
|
Kragenwar-3044 |
self.skills["IntentConcentration"] = SkillSlot(self.bars["Focus"], 2, 1, true, 20, "0x700030DE"); |
145 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"] = SkillSlot(self.bars["Focus"], 3, 1, true, 34, "0x700030F3"); |
146 |
|
Kragenwar-3044 |
self.skills["BurnHot"] = SkillSlot(self.bars["Focus"], 4, 1, true, 60, "0x7000F835"); |
147 |
|
Kragenwar-3044 |
|
148 |
|
Kragenwar-3044 |
self.skills["PurgePoison"] = SkillSlot(self.bars["Restoration"],1, 1, true, 16, "0x70003F3E"); |
149 |
|
Kragenwar-3044 |
self.skills["StrengthoftheEarth"] = SkillSlot(self.bars["Restoration"],2, 1, true, 42, "0x7000A2D4"); |
150 |
|
Kragenwar-3044 |
self.skills["PressOnward"] = SkillSlot(self.bars["Restoration"],3, 1, self.settings["Features"].pressonward, 41, "0x700010E5"); |
151 |
|
Kragenwar-3044 |
|
152 |
|
Kragenwar-3044 |
-- Build Quickslots ItemSlot( parent:SkillBar, x:int, y:int, active:Boolean, type:int, data:String ); |
153 |
|
Kragenwar-3044 |
self.skills["FireOil"] = ItemSlot(self.bars["Oils"], 1, 1, self.settings["Quickslots"].fireoil["active"], self.settings["Quickslots"].fireoil["type"], self.settings["Quickslots"].fireoil["data"]); |
154 |
|
Kragenwar-3044 |
self.skills["LightOil"] = ItemSlot(self.bars["Oils"], 2, 1, self.settings["Quickslots"].lightoil["active"], self.settings["Quickslots"].lightoil["type"], self.settings["Quickslots"].lightoil["data"]); |
155 |
|
Kragenwar-3044 |
self.skills["BowChant"] = ItemSlot(self.bars["Oils"], 3, 1, self.settings["Quickslots"].bowchant["active"], self.settings["Quickslots"].bowchant["type"], self.settings["Quickslots"].bowchant["data"]); |
156 |
|
Kragenwar-3044 |
|
157 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"] = ItemMultiSlot(self.bars["Trapping"], 2, 1, true); |
158 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap1", self.settings["Quickslots"].trap1["active"], self.settings["Quickslots"].trap1["type"], self.settings["Quickslots"].trap1["data"]); |
159 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap2", self.settings["Quickslots"].trap2["active"], self.settings["Quickslots"].trap2["type"], self.settings["Quickslots"].trap2["data"]); |
160 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap3", self.settings["Quickslots"].trap3["active"], self.settings["Quickslots"].trap3["type"], self.settings["Quickslots"].trap3["data"]); |
161 |
|
Kragenwar-3044 |
|
162 |
|
Kragenwar-3044 |
-- Build MultiSlots SkillMultiSlot( parent:SkillBar, x:int, y:int, active:Boolean ); |
163 |
|
Kragenwar-3044 |
-- multi:AddShortCut(name:String, level:int, hex:String); |
164 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"] = SkillMultiSlot(self.bars["Tracking"], 1, 1, true); |
165 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofNature", 12, "0x70003F45"); |
166 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofFoes", 22, "0x70003F46"); |
167 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofShadow", 32, "0x70003F47"); |
168 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:LevelCheck(); |
169 |
|
Kragenwar-3044 |
|
170 |
|
Kragenwar-3044 |
self.multi["StanceSlot"] = SkillMultiSlot(self.bars["Stance"], 1, 1, true); |
171 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("StrengthStance", 6, "0x70003F4E"); |
172 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("PrecisionStance", 18, "0x70003F4D"); |
173 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("EnduranceStance", 28, "0x70003F4F"); |
174 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("FleetStance", 56, "0x70010065"); |
175 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:LevelCheck(); |
176 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetIndex(self.settings["Features"].primarystance); |
177 |
|
Kragenwar-3044 |
|
178 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"] = SkillMultiSlot(self.bars["Trapping"], 1, 1, true); |
179 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:AddShortCut("SetTrap", 6, "0x700030BB"); |
180 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:AddShortCut("SetSnare", 36, "0x7000A6B1"); |
181 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:LevelCheck(); |
182 |
|
Kragenwar-3044 |
|
183 |
|
Kragenwar-3044 |
self.multi["PortsSlot"] = SkillMultiSlot(self.bars["Ports"], 1, 1, true); |
184 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoMichelDelving", 22, "0x7000A2C3"); |
185 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoThorinsHall", 24, "0x70003F41"); |
186 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("ReturntoCamp", 26, "0x7000A2C1"); |
187 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoOstGuruth", 26, "0x7000A2C2"); |
188 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoBree", 32, "0x70003F42"); |
189 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEsteldin", 34, "0x70003F43"); |
190 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEvendim", 36, "0x7000A2C4"); |
191 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoWestAngmar", 44, "0x7000A2C5"); |
192 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoRivendell", 46, "0x70003F44"); |
193 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoSuriKyla", 48, "0x70017C82"); |
194 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEastAngmar", 48, "0x7000A2C6"); |
195 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEchadDunann", 50, "0x70017C81"); |
196 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoTwentyFirstHall",56, "0x70017C7A"); |
197 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoMirkEaves", 62, "0x7001F459"); |
198 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoHarndirion", 62, "0x700235EF"); |
199 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:LevelCheck(); |
200 |
|
Kragenwar-3044 |
|
201 |
|
Kragenwar-3044 |
|
202 |
|
Kragenwar-3044 |
-- SET COMBAT STATES |
203 |
|
Kragenwar-3044 |
self.skills["StrengthoftheEarth"]:SetCombat(true, false); |
204 |
|
Kragenwar-3044 |
self.skills["PressOnward"]:SetCombat(self.settings["Features"].combatpressonward, self.settings["Features"].pressonward); |
205 |
|
Kragenwar-3044 |
self.skills["Focus"]:SetCombat(false, true); |
206 |
|
Kragenwar-3044 |
self.skills["Camouflage"]:SetCombat(false, true); |
207 |
|
Kragenwar-3044 |
self.skills["BrightCampfire"]:SetCombat(false, true); |
208 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:SetCombat(false, true); |
209 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:SetCombat(self.settings["Features"].combattraps, true); |
210 |
|
Kragenwar-3044 |
|
211 |
|
Kragenwar-3044 |
-- CLASS SPECIFIC SETUP/DEFAULT CODE |
212 |
|
Kragenwar-3044 |
|
213 |
|
Kragenwar-3044 |
|
214 |
|
Kragenwar-3044 |
-- EVENTS |
215 |
|
Kragenwar-3044 |
|
216 |
|
Kragenwar-3044 |
-- Stance Change Event |
217 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "StanceChanged", function(sender, args) |
218 |
|
Kragenwar-3044 |
KragenBars:StanceChange(vars.classattr:GetStance()); |
219 |
|
Kragenwar-3044 |
end); |
220 |
|
Kragenwar-3044 |
|
221 |
|
Kragenwar-3044 |
-- Focus Change Event |
222 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "FocusChanged", function(sender, args) |
223 |
|
Kragenwar-3044 |
KragenBars:FocusChange(vars.classattr:GetFocus()); |
224 |
|
Kragenwar-3044 |
end); |
225 |
|
Kragenwar-3044 |
|
226 |
|
Kragenwar-3044 |
|
227 |
|
Kragenwar-3044 |
-- INITIALIZE BARS |
228 |
|
Kragenwar-3044 |
self:InitBars(); |
229 |
|
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
230 |
|
Kragenwar-3044 |
self:StanceChange(vars.classattr:GetStance()); |
231 |
|
Kragenwar-3044 |
self:FocusChange(vars.classattr:GetFocus()); |
232 |
|
Kragenwar-3044 |
|
233 |
|
Kragenwar-3044 |
end |
234 |
|
Kragenwar-3044 |
|
235 |
|
Kragenwar-3044 |
|
236 |
|
Kragenwar-3044 |
-- ADD EFFECT EVENT |
237 |
|
Kragenwar-3044 |
function HunterBars:AddEffect( effectIndex ) |
238 |
|
Kragenwar-3044 |
local effect = vars.player:GetEffects():Get( effectIndex ); |
239 |
|
Kragenwar-3044 |
|
240 |
|
Kragenwar-3044 |
if (effect:GetName() == self.effectlist["ParryResponse"]) then |
241 |
|
Kragenwar-3044 |
self.skills["AgileRejoinder"]:SetState( true , true, effect:GetID()); |
242 |
|
Kragenwar-3044 |
|
243 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["FindthePath"]) then |
244 |
|
Kragenwar-3044 |
if (self.settings["Features"].findpathactive == 1) then |
245 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetState(true, true, effect:GetID()); |
246 |
|
Kragenwar-3044 |
elseif (self.settings["Features"].findpathactive == 2) then |
247 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetState(true, true, effect:GetID()); |
248 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetHover(true); |
249 |
|
Kragenwar-3044 |
else |
250 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetState(true, false, effect:GetID()); |
251 |
|
Kragenwar-3044 |
end |
252 |
|
Kragenwar-3044 |
|
253 |
|
Kragenwar-3044 |
elseif (string.find(effect:GetName(), self.effectlist["BowChant"]) ~= nil) then |
254 |
|
Kragenwar-3044 |
self.skills["BowChant"]:SetState(true, false, effect:GetID()); |
255 |
|
Kragenwar-3044 |
self.skills["BowChant"]:SetHover(true); |
256 |
|
Kragenwar-3044 |
self.skills["BowChant"]:StartTimer(effect:GetDuration() * .85, true); |
257 |
|
Kragenwar-3044 |
|
258 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SwiftStroke"] and self.settings["Features"].dimswiftstroke) then |
259 |
|
Kragenwar-3044 |
self.skills["SwiftStroke"]:SetState(true, true, effect:GetID()); |
260 |
|
Kragenwar-3044 |
self.skills["SwiftStroke"]:SetHover(true); |
261 |
|
Kragenwar-3044 |
|
262 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SimpleFireoil"] or effect:GetName() == self.effectlist["Fireoil"] or effect:GetName() == self.effectlist["RefinedFireoil"] or effect:GetName() == self.effectlist["PureFireoil"]) then |
263 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetState(true, false, effect:GetID()); |
264 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetHover(true); |
265 |
|
Kragenwar-3044 |
self.skills["FireOil"]:StartTimer(effect:GetDuration() * .85, true); |
266 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetHover(true); |
267 |
|
Kragenwar-3044 |
|
268 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SimpleLightoil"] or effect:GetName() == self.effectlist["Lightoil"] or effect:GetName() == self.effectlist["RefinedLightoil"] or effect:GetName() == self.effectlist["PureLightoil"]) then |
269 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetState(true, false, effect:GetID()); |
270 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetHover(true); |
271 |
|
Kragenwar-3044 |
self.skills["LightOil"]:StartTimer(effect:GetDuration() * .85, true); |
272 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetHover(true); |
273 |
|
Kragenwar-3044 |
|
274 |
|
Kragenwar-3044 |
|
275 |
|
Kragenwar-3044 |
end |
276 |
|
Kragenwar-3044 |
end |
277 |
|
Kragenwar-3044 |
|
278 |
|
Kragenwar-3044 |
|
279 |
|
Kragenwar-3044 |
-- REMOVE EFFECT EVENT |
280 |
|
Kragenwar-3044 |
function HunterBars:RemoveEffect( effect ) |
281 |
|
Kragenwar-3044 |
|
282 |
|
Kragenwar-3044 |
-- SetState can be called on both bars and skills |
283 |
|
Kragenwar-3044 |
-- it will store the incoming effect id and flag the state as well as trigger visibility |
284 |
|
Kragenwar-3044 |
-- SetState(effectstate:Boolean, visibility:Boolean, effectid:int); |
285 |
|
Kragenwar-3044 |
|
286 |
|
Kragenwar-3044 |
if (effect:GetName() == self.effectlist["ParryResponse"]) then |
287 |
|
Kragenwar-3044 |
self.skills["AgileRejoinder"]:SetState( false , false, effect:GetID()); |
288 |
|
Kragenwar-3044 |
|
289 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["FindthePath"]) then |
290 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetState (false, true, effect:GetID()); |
291 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetHover(self.skills["FindthePath"].state); |
292 |
|
Kragenwar-3044 |
|
293 |
|
Kragenwar-3044 |
elseif (string.find(effect:GetName(), self.effectlist["BowChant"]) ~= nil) then |
294 |
|
Kragenwar-3044 |
self.skills["BowChant"]:SetState(false, true, effect:GetID()); |
295 |
|
Kragenwar-3044 |
self.skills["BowChant"]:SetHover(false); |
296 |
|
Kragenwar-3044 |
|
297 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SwiftStroke"]) then |
298 |
|
Kragenwar-3044 |
self.skills["SwiftStroke"]:SetState(false, true, effect:GetID()); |
299 |
|
Kragenwar-3044 |
self.skills["SwiftStroke"]:SetHover(false); |
300 |
|
Kragenwar-3044 |
|
301 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SimpleFireoil"] or effect:GetName() == self.effectlist["Fireoil"] or effect:GetName() == self.effectlist["RefinedFireoil"] or effect:GetName() == self.effectlist["PureFireoil"]) then |
302 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetState(false, true, effect:GetID()); |
303 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetHover(false); |
304 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetHover(false); |
305 |
|
Kragenwar-3044 |
|
306 |
|
Kragenwar-3044 |
elseif (effect:GetName() == self.effectlist["SimpleLightoil"] or effect:GetName() == self.effectlist["Lightoil"] or effect:GetName() == self.effectlist["RefinedLightoil"] or effect:GetName() == self.effectlist["PureLightoil"]) then |
307 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetState(false, true, effect:GetID()); |
308 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetHover(false); |
309 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetHover(false); |
310 |
|
Kragenwar-3044 |
|
311 |
|
Kragenwar-3044 |
end |
312 |
|
Kragenwar-3044 |
end |
313 |
|
Kragenwar-3044 |
|
314 |
|
Kragenwar-3044 |
|
315 |
|
Kragenwar-3044 |
function HunterBars:FocusChange(focus) |
316 |
|
Kragenwar-3044 |
|
317 |
|
Kragenwar-3044 |
if (focus == 0) then |
318 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"]:SetActive(false); |
319 |
|
Kragenwar-3044 |
self.skills["BloodArrow"]:SetActive(false); |
320 |
|
Kragenwar-3044 |
self.skills["RainofArrows"]:SetActive(false); |
321 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"]:SetActive(false); |
322 |
|
Kragenwar-3044 |
self.skills["MercifulShot"]:SetActive(false); |
323 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(false); |
324 |
|
Kragenwar-3044 |
elseif (focus > 0 and focus < 2) then |
325 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"]:SetActive(false); |
326 |
|
Kragenwar-3044 |
self.skills["BloodArrow"]:SetActive(false); |
327 |
|
Kragenwar-3044 |
self.skills["RainofArrows"]:SetActive(false); |
328 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"]:SetActive(false); |
329 |
|
Kragenwar-3044 |
self.skills["MercifulShot"]:SetActive(false); |
330 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(false); |
331 |
|
Kragenwar-3044 |
elseif (focus >= 2 and focus < 3) then |
332 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"]:SetActive(self.settings["Features"].strongdraw); |
333 |
|
Kragenwar-3044 |
self.skills["BloodArrow"]:SetActive(self.settings["Features"].strongdraw); |
334 |
|
Kragenwar-3044 |
self.skills["RainofArrows"]:SetActive(self.settings["Features"].arrowstorm); |
335 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"]:SetActive(false); |
336 |
|
Kragenwar-3044 |
self.skills["MercifulShot"]:SetActive(false); |
337 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(false); |
338 |
|
Kragenwar-3044 |
elseif (focus >= 3 and focus < 6) then |
339 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"]:SetActive(true); |
340 |
|
Kragenwar-3044 |
self.skills["BloodArrow"]:SetActive(true); |
341 |
|
Kragenwar-3044 |
self.skills["RainofArrows"]:SetActive(true); |
342 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"]:SetActive(true); |
343 |
|
Kragenwar-3044 |
self.skills["MercifulShot"]:SetActive(false); |
344 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(false); |
345 |
|
Kragenwar-3044 |
elseif (focus >= 6) then |
346 |
|
Kragenwar-3044 |
self.skills["PenetratingShot"]:SetActive(true); |
347 |
|
Kragenwar-3044 |
self.skills["BloodArrow"]:SetActive(true); |
348 |
|
Kragenwar-3044 |
self.skills["RainofArrows"]:SetActive(true); |
349 |
|
Kragenwar-3044 |
self.skills["NeedfulHaste"]:SetActive(true); |
350 |
|
Kragenwar-3044 |
self.skills["MercifulShot"]:SetActive(true); |
351 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(self.settings["Features"].thorns); |
352 |
|
Kragenwar-3044 |
|
353 |
|
Kragenwar-3044 |
end |
354 |
|
Kragenwar-3044 |
end |
355 |
|
Kragenwar-3044 |
|
356 |
|
Kragenwar-3044 |
|
357 |
|
Kragenwar-3044 |
function HunterBars:StanceChange(stance) |
358 |
|
Kragenwar-3044 |
local stancenew = 0; |
359 |
|
Kragenwar-3044 |
|
360 |
|
Kragenwar-3044 |
-- Hack because Turbine put the stances in the wrong order |
361 |
|
Kragenwar-3044 |
if (stance == 1) then |
362 |
|
Kragenwar-3044 |
stancenew = 2; |
363 |
|
Kragenwar-3044 |
elseif (stance == 2) then |
364 |
|
Kragenwar-3044 |
stancenew = 1; |
365 |
|
Kragenwar-3044 |
else |
366 |
|
Kragenwar-3044 |
stancenew = stance; |
367 |
|
Kragenwar-3044 |
end |
368 |
|
Kragenwar-3044 |
|
369 |
|
Kragenwar-3044 |
if (stancenew ~= self.settings["Features"].primarystance) then |
370 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetIndex(self.settings["Features"].primarystance); |
371 |
|
Kragenwar-3044 |
else |
372 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetIndex(self.settings["Features"].secondarystance); |
373 |
|
Kragenwar-3044 |
end |
374 |
|
Kragenwar-3044 |
|
375 |
|
Kragenwar-3044 |
if (stance == 0) then |
376 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetHover( false ); |
377 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetActive( true ); |
378 |
|
Kragenwar-3044 |
else |
379 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetActive( self.settings["Features"].stanceactive ~= 3); |
380 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:SetHover( self.settings["Features"].stanceactive == 2 ); |
381 |
|
Kragenwar-3044 |
end |
382 |
|
Kragenwar-3044 |
|
383 |
|
Kragenwar-3044 |
|
384 |
|
Kragenwar-3044 |
end |
385 |
|
Kragenwar-3044 |
|
386 |
|
Kragenwar-3044 |
-- DEFAULT SETTINGS |
387 |
|
Kragenwar-3044 |
function HunterBars:DefaultSettings() |
388 |
|
Kragenwar-3044 |
self.settings = { }; |
389 |
|
Kragenwar-3044 |
|
390 |
|
Kragenwar-3044 |
local windowlist = {"Parry", "Melee", "BowInduct", "BowFocus", "Dethreat", "Utility", "Tracking", "Fear", "Stance", "Focus", "Restoration", "Trapping", "Oils", "Ports"}; |
391 |
|
Kragenwar-3044 |
for k,v in pairs(windowlist) do |
392 |
|
Kragenwar-3044 |
self.settings[v] = { active = true, x = 0, y = 0, rotate = 0 }; |
393 |
|
Kragenwar-3044 |
end |
394 |
|
Kragenwar-3044 |
|
395 |
|
Kragenwar-3044 |
self.settings["Features"] = { }; |
396 |
|
Kragenwar-3044 |
self.settings["Features"].dimswiftstroke = true; |
397 |
|
Kragenwar-3044 |
self.settings["Features"].thorns = false; |
398 |
|
Kragenwar-3044 |
self.settings["Features"].bards = false; |
399 |
|
Kragenwar-3044 |
self.settings["Features"].pressonward = false; |
400 |
|
Kragenwar-3044 |
self.settings["Features"].combattraps = false; |
401 |
|
Kragenwar-3044 |
self.settings["Features"].strongdraw = false; |
402 |
|
Kragenwar-3044 |
self.settings["Features"].arrowstorm = false; |
403 |
|
Kragenwar-3044 |
self.settings["Features"].combatpressonward = false; |
404 |
|
Kragenwar-3044 |
self.settings["Features"].primarystance = 1; |
405 |
|
Kragenwar-3044 |
self.settings["Features"].secondarystance = 2; |
406 |
|
Kragenwar-3044 |
self.settings["Features"].findpathactive = 2; |
407 |
|
Kragenwar-3044 |
self.settings["Features"].stanceactive = 2; |
408 |
|
Kragenwar-3044 |
|
409 |
|
Kragenwar-3044 |
self.settings["Quickslots"] = { }; |
410 |
|
Kragenwar-3044 |
self.settings["Quickslots"].fireoil = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
411 |
|
Kragenwar-3044 |
self.settings["Quickslots"].lightoil = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
412 |
|
Kragenwar-3044 |
self.settings["Quickslots"].bowchant = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
413 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap1 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
414 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap2 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
415 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap3 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
416 |
|
Kragenwar-3044 |
|
417 |
|
Kragenwar-3044 |
end |
418 |
|
Kragenwar-3044 |
|
419 |
|
Kragenwar-3044 |
|
420 |
|
Kragenwar-3044 |
-- UPDATE SETTINGS |
421 |
|
Kragenwar-3044 |
function HunterBars:UpdateSettings() |
422 |
|
Kragenwar-3044 |
|
423 |
|
Kragenwar-3044 |
if (settings.vers < 3.10) then |
424 |
|
Kragenwar-3044 |
self.settings["Features"].stanceactive = 2; |
425 |
|
Kragenwar-3044 |
self.settings["Ports"] = { active = true, x = 0, y = 0, rotate = 0 }; |
426 |
|
Kragenwar-3044 |
self.settings["Quickslots"].bowchant = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
427 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap1 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
428 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap2 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
429 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap3 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
430 |
|
Kragenwar-3044 |
elseif (settings.vers < 3.20) then |
431 |
|
Kragenwar-3044 |
self.settings["Quickslots"].bowchant = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
432 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap1 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
433 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap2 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
434 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap3 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
435 |
|
Kragenwar-3044 |
|
436 |
|
Kragenwar-3044 |
|
437 |
|
Kragenwar-3044 |
end |
438 |
|
Kragenwar-3044 |
|
439 |
|
Kragenwar-3044 |
settings.vers = vars.vers; |
440 |
|
Kragenwar-3044 |
|
441 |
|
Kragenwar-3044 |
end |
442 |
|
Kragenwar-3044 |
|
443 |
|
Kragenwar-3044 |
|
444 |
|
Kragenwar-3044 |
-- DISPLAY SETUP WINDOW AND SET ALL CHECKBOXES COMBOBOXES SLIDERS AND QUICKSLOTS |
445 |
|
Kragenwar-3044 |
function HunterBars:ShowSetup() |
446 |
|
Kragenwar-3044 |
self.setup:SetVisible(true); |
447 |
|
Kragenwar-3044 |
|
448 |
|
Kragenwar-3044 |
self.setupbb.opacityslider:SetValue(settings.opacity * 100); |
449 |
|
Kragenwar-3044 |
self.setupbb.checkboxlock:SetChecked(settings.lockslots); |
450 |
|
Kragenwar-3044 |
self.setupbb.checkboxgrid:SetChecked(settings.snaptogrid); |
451 |
|
Kragenwar-3044 |
self.setupbb.combolangbox:SetSelection(settings.language); |
452 |
|
Kragenwar-3044 |
|
453 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetText("Parry Response"); |
454 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetChecked (self.settings["Parry"].active); |
455 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb1:SetVisible(true); |
456 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetText("Melee"); |
457 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetChecked (self.settings["Melee"].active); |
458 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb2:SetVisible(true); |
459 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetText("Bow: Induction"); |
460 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetChecked (self.settings["BowInduct"].active); |
461 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb3:SetVisible(true); |
462 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetText("Bow: Focus"); |
463 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetChecked (self.settings["BowFocus"].active); |
464 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb4:SetVisible(true); |
465 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetText("Dethreat"); |
466 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetChecked (self.settings["Dethreat"].active); |
467 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb5:SetVisible(true); |
468 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetText("Utility"); |
469 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetChecked (self.settings["Utility"].active); |
470 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb6:SetVisible(true); |
471 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetText("Tracking"); |
472 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetChecked (self.settings["Tracking"].active); |
473 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb7:SetVisible(true); |
474 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetText("Fear"); |
475 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetChecked (self.settings["Fear"].active); |
476 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb8:SetVisible(true); |
477 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetText("Stance"); |
478 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetChecked (self.settings["Stance"].active); |
479 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb9:SetVisible(true); |
480 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetText("Focus"); |
481 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetChecked (self.settings["Focus"].active); |
482 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb10:SetVisible(true); |
483 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetText("Restoration"); |
484 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetChecked (self.settings["Restoration"].active); |
485 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb11:SetVisible(true); |
486 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetText("Trapping"); |
487 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetChecked (self.settings["Trapping"].active); |
488 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb12:SetVisible(true); |
489 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetText("Oils"); |
490 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetChecked (self.settings["Oils"].active); |
491 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb13:SetVisible(true); |
492 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb14:SetText("Ports"); |
493 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb14:SetChecked (self.settings["Ports"].active); |
494 |
|
Kragenwar-3044 |
self.setupbb.checkboxbb14:SetVisible(true); |
495 |
|
Kragenwar-3044 |
|
496 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetText("Rain of Thorns"); |
497 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetChecked (self.settings["Features"].thorns); |
498 |
|
Kragenwar-3044 |
self.setupf.checkboxf1:SetVisible(true); |
499 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetText("Bard's Arrow"); |
500 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetChecked (self.settings["Features"].bards); |
501 |
|
Kragenwar-3044 |
self.setupf.checkboxf2:SetVisible(true); |
502 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetText("Press Onward"); |
503 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetChecked (self.settings["Features"].pressonward); |
504 |
|
Kragenwar-3044 |
self.setupf.checkboxf3:SetVisible(true); |
505 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetText("Combat Traps"); |
506 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetChecked (self.settings["Features"].combattraps); |
507 |
|
Kragenwar-3044 |
self.setupf.checkboxf4:SetVisible(true); |
508 |
|
Kragenwar-3044 |
self.setupf.checkboxf5:SetText("Strong Draw"); |
509 |
|
Kragenwar-3044 |
self.setupf.checkboxf5:SetChecked (self.settings["Features"].strongdraw); |
510 |
|
Kragenwar-3044 |
self.setupf.checkboxf5:SetVisible(true); |
511 |
|
Kragenwar-3044 |
self.setupf.checkboxf6:SetText("arrowstorm"); |
512 |
|
Kragenwar-3044 |
self.setupf.checkboxf6:SetChecked (self.settings["Features"].arrowstorm); |
513 |
|
Kragenwar-3044 |
self.setupf.checkboxf6:SetVisible(true); |
514 |
|
Kragenwar-3044 |
self.setupf.checkboxf7:SetText("Combat Press Onward"); |
515 |
|
Kragenwar-3044 |
self.setupf.checkboxf7:SetChecked (self.settings["Features"].combatpressonward); |
516 |
|
Kragenwar-3044 |
self.setupf.checkboxf7:SetVisible(true); |
517 |
|
Kragenwar-3044 |
|
518 |
|
Kragenwar-3044 |
self.setupf.checkboxf10:SetText("Dim Swift Stroke"); |
519 |
|
Kragenwar-3044 |
self.setupf.checkboxf10:SetChecked (self.settings["Features"].dimswiftstroke); |
520 |
|
Kragenwar-3044 |
self.setupf.checkboxf10:SetVisible(true); |
521 |
|
Kragenwar-3044 |
|
522 |
|
Kragenwar-3044 |
self.setupf.combo1box.listBox:ClearItems(); |
523 |
|
Kragenwar-3044 |
self.setupf.combo1Label:SetText("Primary Stance"); |
524 |
|
Kragenwar-3044 |
self.setupf.combo1Label:SetVisible(true); |
525 |
|
Kragenwar-3044 |
local combolist = {"Strength", "Precision", "Endurance", "Fleet"} |
526 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
527 |
|
Kragenwar-3044 |
self.setupf.combo1box:AddItem(v, k); |
528 |
|
Kragenwar-3044 |
end |
529 |
|
Kragenwar-3044 |
self.setupf.combo1box:SetVisible(true); |
530 |
|
Kragenwar-3044 |
self.setupf.combo1box:SetSelection(self.settings["Features"].primarystance); |
531 |
|
Kragenwar-3044 |
|
532 |
|
Kragenwar-3044 |
self.setupf.combo2box.listBox:ClearItems(); |
533 |
|
Kragenwar-3044 |
self.setupf.combo2Label:SetText("Secondary Stance"); |
534 |
|
Kragenwar-3044 |
self.setupf.combo2Label:SetVisible(true); |
535 |
|
Kragenwar-3044 |
combolist = {"Strength", "Precision", "Endurance", "Fleet"} |
536 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
537 |
|
Kragenwar-3044 |
self.setupf.combo2box:AddItem(v, k); |
538 |
|
Kragenwar-3044 |
end |
539 |
|
Kragenwar-3044 |
self.setupf.combo2box:SetVisible(true); |
540 |
|
Kragenwar-3044 |
self.setupf.combo2box:SetSelection(self.settings["Features"].secondarystance); |
541 |
|
Kragenwar-3044 |
|
542 |
|
Kragenwar-3044 |
self.setupf.combo3box.listBox:ClearItems(); |
543 |
|
Kragenwar-3044 |
self.setupf.combo3Label:SetText("Find Path Active"); |
544 |
|
Kragenwar-3044 |
self.setupf.combo3Label:SetVisible(true); |
545 |
|
Kragenwar-3044 |
combolist = {"None", "Dim", "Hide"} |
546 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
547 |
|
Kragenwar-3044 |
self.setupf.combo3box:AddItem(v, k); |
548 |
|
Kragenwar-3044 |
end |
549 |
|
Kragenwar-3044 |
self.setupf.combo3box:SetVisible(true); |
550 |
|
Kragenwar-3044 |
self.setupf.combo3box:SetSelection(self.settings["Features"].findpathactive); |
551 |
|
Kragenwar-3044 |
|
552 |
|
Kragenwar-3044 |
self.setupf.combo4box.listBox:ClearItems(); |
553 |
|
Kragenwar-3044 |
self.setupf.combo4Label:SetText("Stance Active"); |
554 |
|
Kragenwar-3044 |
self.setupf.combo4Label:SetVisible(true); |
555 |
|
Kragenwar-3044 |
combolist = {"None", "Dim", "Hide"} |
556 |
|
Kragenwar-3044 |
for k,v in pairs(combolist) do |
557 |
|
Kragenwar-3044 |
self.setupf.combo4box:AddItem(v, k); |
558 |
|
Kragenwar-3044 |
end |
559 |
|
Kragenwar-3044 |
self.setupf.combo4box:SetVisible(true); |
560 |
|
Kragenwar-3044 |
self.setupf.combo4box:SetSelection(self.settings["Features"].stanceactive); |
561 |
|
Kragenwar-3044 |
|
562 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot1:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].fireoil["type"], self.settings["Quickslots"].fireoil["data"] ) ); end); |
563 |
|
Kragenwar-3044 |
self.setupqs.quickslot1:SetVisible(true); |
564 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetText("Fire Oil"); |
565 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetChecked(self.settings["Quickslots"].fireoil["active"]); |
566 |
|
Kragenwar-3044 |
self.setupqs.quickslot1cb:SetVisible(true); |
567 |
|
Kragenwar-3044 |
|
568 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot2:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].lightoil["type"], self.settings["Quickslots"].lightoil["data"] ) ); end); |
569 |
|
Kragenwar-3044 |
self.setupqs.quickslot2:SetVisible(true); |
570 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetText("Light Oil"); |
571 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetChecked(self.settings["Quickslots"].lightoil["active"]); |
572 |
|
Kragenwar-3044 |
self.setupqs.quickslot2cb:SetVisible(true); |
573 |
|
Kragenwar-3044 |
|
574 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot3:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].bowchant["type"], self.settings["Quickslots"].bowchant["data"] ) ); end); |
575 |
|
Kragenwar-3044 |
self.setupqs.quickslot3:SetVisible(true); |
576 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetText("Bow Chant"); |
577 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetChecked(self.settings["Quickslots"].bowchant["active"]); |
578 |
|
Kragenwar-3044 |
self.setupqs.quickslot3cb:SetVisible(true); |
579 |
|
Kragenwar-3044 |
|
580 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot4:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].trap1["type"], self.settings["Quickslots"].trap1["data"] ) ); end); |
581 |
|
Kragenwar-3044 |
self.setupqs.quickslot4:SetVisible(true); |
582 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetText("Crafted Traps"); |
583 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetChecked(self.settings["Quickslots"].trap1["active"]); |
584 |
|
Kragenwar-3044 |
self.setupqs.quickslot4cb:SetVisible(true); |
585 |
|
Kragenwar-3044 |
|
586 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot5:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].trap2["type"], self.settings["Quickslots"].trap2["data"] ) ); end); |
587 |
|
Kragenwar-3044 |
self.setupqs.quickslot5:SetVisible(true); |
588 |
|
Kragenwar-3044 |
self.setupqs.quickslot5cb:SetText("Crafted Traps"); |
589 |
|
Kragenwar-3044 |
self.setupqs.quickslot5cb:SetChecked(self.settings["Quickslots"].trap2["active"]); |
590 |
|
Kragenwar-3044 |
self.setupqs.quickslot5cb:SetVisible(true); |
591 |
|
Kragenwar-3044 |
|
592 |
|
Kragenwar-3044 |
pcall(function() self.setupqs.quickslot6:SetShortcut(Turbine.UI.Lotro.Shortcut( self.settings["Quickslots"].trap3["type"], self.settings["Quickslots"].trap3["data"] ) ); end); |
593 |
|
Kragenwar-3044 |
self.setupqs.quickslot6:SetVisible(true); |
594 |
|
Kragenwar-3044 |
self.setupqs.quickslot6cb:SetText("Crafted Traps"); |
595 |
|
Kragenwar-3044 |
self.setupqs.quickslot6cb:SetChecked(self.settings["Quickslots"].trap3["active"]); |
596 |
|
Kragenwar-3044 |
self.setupqs.quickslot6cb:SetVisible(true); |
597 |
|
Kragenwar-3044 |
|
598 |
|
Kragenwar-3044 |
|
599 |
|
Kragenwar-3044 |
end |
600 |
|
Kragenwar-3044 |
|
601 |
|
Kragenwar-3044 |
|
602 |
|
Kragenwar-3044 |
-- SET ALL VARIABLES OFF OF SETUP WINDOW |
603 |
|
Kragenwar-3044 |
function HunterBars:SetupClosing() |
604 |
|
Kragenwar-3044 |
self.settings["Parry"].active = self.setupbb.checkboxbb1:IsChecked(); |
605 |
|
Kragenwar-3044 |
self.settings["Melee"].active = self.setupbb.checkboxbb2:IsChecked(); |
606 |
|
Kragenwar-3044 |
self.settings["BowInduct"].active = self.setupbb.checkboxbb3:IsChecked(); |
607 |
|
Kragenwar-3044 |
self.settings["BowFocus"].active = self.setupbb.checkboxbb4:IsChecked(); |
608 |
|
Kragenwar-3044 |
self.settings["Dethreat"].active = self.setupbb.checkboxbb5:IsChecked(); |
609 |
|
Kragenwar-3044 |
self.settings["Utility"].active = self.setupbb.checkboxbb6:IsChecked(); |
610 |
|
Kragenwar-3044 |
self.settings["Tracking"].active = self.setupbb.checkboxbb7:IsChecked(); |
611 |
|
Kragenwar-3044 |
self.settings["Fear"].active = self.setupbb.checkboxbb8:IsChecked(); |
612 |
|
Kragenwar-3044 |
self.settings["Stance"].active = self.setupbb.checkboxbb9:IsChecked(); |
613 |
|
Kragenwar-3044 |
self.settings["Focus"].active = self.setupbb.checkboxbb10:IsChecked(); |
614 |
|
Kragenwar-3044 |
self.settings["Restoration"].active = self.setupbb.checkboxbb11:IsChecked(); |
615 |
|
Kragenwar-3044 |
self.settings["Trapping"].active = self.setupbb.checkboxbb12:IsChecked(); |
616 |
|
Kragenwar-3044 |
self.settings["Oils"].active = self.setupbb.checkboxbb13:IsChecked(); |
617 |
|
Kragenwar-3044 |
self.settings["Ports"].active = self.setupbb.checkboxbb14:IsChecked(); |
618 |
|
Kragenwar-3044 |
|
619 |
|
Kragenwar-3044 |
self.settings["Features"].thorns = self.setupf.checkboxf1:IsChecked(); |
620 |
|
Kragenwar-3044 |
self.settings["Features"].bards = self.setupf.checkboxf2:IsChecked(); |
621 |
|
Kragenwar-3044 |
self.settings["Features"].pressonward = self.setupf.checkboxf3:IsChecked(); |
622 |
|
Kragenwar-3044 |
self.settings["Features"].combattraps = self.setupf.checkboxf4:IsChecked(); |
623 |
|
Kragenwar-3044 |
self.settings["Features"].strongdraw = self.setupf.checkboxf5:IsChecked(); |
624 |
|
Kragenwar-3044 |
self.settings["Features"].arrowstorm = self.setupf.checkboxf6:IsChecked(); |
625 |
|
Kragenwar-3044 |
self.settings["Features"].combatpressonward = self.setupf.checkboxf7:IsChecked(); |
626 |
|
Kragenwar-3044 |
|
627 |
|
Kragenwar-3044 |
self.settings["Features"].dimswiftstroke = self.setupf.checkboxf10:IsChecked(); |
628 |
|
Kragenwar-3044 |
|
629 |
|
Kragenwar-3044 |
self.settings["Features"].primarystance = self.setupf.combo1box:GetSelection(); |
630 |
|
Kragenwar-3044 |
self.settings["Features"].secondarystance = self.setupf.combo2box:GetSelection(); |
631 |
|
Kragenwar-3044 |
self.settings["Features"].findpathactive = self.setupf.combo3box:GetSelection(); |
632 |
|
Kragenwar-3044 |
self.settings["Features"].stanceactive = self.setupf.combo4box:GetSelection(); |
633 |
|
Kragenwar-3044 |
|
634 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot1:GetShortcut():GetData() ~= "" ) then |
635 |
|
Kragenwar-3044 |
self.settings["Quickslots"].fireoil = { active = self.setupqs.quickslot1cb:IsChecked(), type = self.setupqs.quickslot1:GetShortcut():GetType(), data = self.setupqs.quickslot1:GetShortcut():GetData() }; |
636 |
|
Kragenwar-3044 |
else |
637 |
|
Kragenwar-3044 |
self.settings["Quickslots"].fireoil = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
638 |
|
Kragenwar-3044 |
end |
639 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot2:GetShortcut():GetData() ~= "" ) then |
640 |
|
Kragenwar-3044 |
self.settings["Quickslots"].lightoil = { active = self.setupqs.quickslot2cb:IsChecked(), type = self.setupqs.quickslot2:GetShortcut():GetType(), data = self.setupqs.quickslot2:GetShortcut():GetData() }; |
641 |
|
Kragenwar-3044 |
else |
642 |
|
Kragenwar-3044 |
self.settings["Quickslots"].lightoil = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
643 |
|
Kragenwar-3044 |
end |
644 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot3:GetShortcut():GetData() ~= "" ) then |
645 |
|
Kragenwar-3044 |
self.settings["Quickslots"].bowchant = { active = self.setupqs.quickslot3cb:IsChecked(), type = self.setupqs.quickslot3:GetShortcut():GetType(), data = self.setupqs.quickslot3:GetShortcut():GetData() }; |
646 |
|
Kragenwar-3044 |
else |
647 |
|
Kragenwar-3044 |
self.settings["Quickslots"].bowchant = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
648 |
|
Kragenwar-3044 |
end |
649 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot4:GetShortcut():GetData() ~= "" ) then |
650 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap1 = { active = self.setupqs.quickslot4cb:IsChecked(), type = self.setupqs.quickslot4:GetShortcut():GetType(), data = self.setupqs.quickslot4:GetShortcut():GetData() }; |
651 |
|
Kragenwar-3044 |
else |
652 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap1 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
653 |
|
Kragenwar-3044 |
end |
654 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot5:GetShortcut():GetData() ~= "" ) then |
655 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap2 = { active = self.setupqs.quickslot5cb:IsChecked(), type = self.setupqs.quickslot5:GetShortcut():GetType(), data = self.setupqs.quickslot5:GetShortcut():GetData() }; |
656 |
|
Kragenwar-3044 |
else |
657 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap2 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
658 |
|
Kragenwar-3044 |
end |
659 |
|
Kragenwar-3044 |
if (self.setupqs.quickslot6:GetShortcut():GetData() ~= "" ) then |
660 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap3 = { active = self.setupqs.quickslot6cb:IsChecked(), type = self.setupqs.quickslot6:GetShortcut():GetType(), data = self.setupqs.quickslot6:GetShortcut():GetData() }; |
661 |
|
Kragenwar-3044 |
else |
662 |
|
Kragenwar-3044 |
self.settings["Quickslots"].trap3 = { active = false, type = Turbine.UI.Lotro.ShortcutType.Undefined, data = "" }; |
663 |
|
Kragenwar-3044 |
end |
664 |
|
Kragenwar-3044 |
|
665 |
|
Kragenwar-3044 |
settings.opacity = (self.setupbb.opacityslider:GetValue() / 100); |
666 |
|
Kragenwar-3044 |
settings.lockslots = self.setupbb.checkboxlock:IsChecked(); |
667 |
|
Kragenwar-3044 |
settings.snaptogrid = self.setupbb.checkboxgrid:IsChecked(); |
668 |
|
Kragenwar-3044 |
settings.language = self.setupbb.combolangbox:GetSelection(); |
669 |
|
Kragenwar-3044 |
|
670 |
|
Kragenwar-3044 |
self:SaveSettings(); |
671 |
|
Kragenwar-3044 |
self:Refresh(); |
672 |
|
Kragenwar-3044 |
|
673 |
|
Kragenwar-3044 |
end |
674 |
|
Kragenwar-3044 |
|
675 |
|
Kragenwar-3044 |
|
676 |
|
Kragenwar-3044 |
-- REFRESH SKILLS AND BARS |
677 |
|
Kragenwar-3044 |
function HunterBars:Refresh() |
678 |
|
Kragenwar-3044 |
|
679 |
|
Kragenwar-3044 |
-- GENERIC REFRESH (Required for all classes) |
680 |
|
Kragenwar-3044 |
self:RefreshBars(); |
681 |
|
Kragenwar-3044 |
|
682 |
|
Kragenwar-3044 |
-- REDEFINE EFFECTLIST IN CASE OF LANGUAGE CHANGE |
683 |
|
Kragenwar-3044 |
self.DefineEffectList(); |
684 |
|
Kragenwar-3044 |
|
685 |
|
Kragenwar-3044 |
-- CLASS SPECIFIC REFRESH |
686 |
|
Kragenwar-3044 |
-- Setup Features |
687 |
|
Kragenwar-3044 |
self.skills["RainofThorns"]:SetActive(self.settings["Features"].thorns); |
688 |
|
Kragenwar-3044 |
self.skills["BardsArrow"]:SetActive(self.settings["Features"].bards); |
689 |
|
Kragenwar-3044 |
self.skills["PressOnward"]:SetActive(self.settings["Features"].pressonward); |
690 |
|
Kragenwar-3044 |
|
691 |
|
Kragenwar-3044 |
self.skills["FireOil"]:SetQuickslot(self.settings["Quickslots"].fireoil["active"], self.settings["Quickslots"].fireoil["type"], self.settings["Quickslots"].fireoil["data"]); |
692 |
|
Kragenwar-3044 |
self.skills["LightOil"]:SetQuickslot(self.settings["Quickslots"].lightoil["active"], self.settings["Quickslots"].lightoil["type"], self.settings["Quickslots"].lightoil["data"]); |
693 |
|
Kragenwar-3044 |
self.skills["BowChant"]:SetQuickslot(self.settings["Quickslots"].bowchant["active"], self.settings["Quickslots"].bowchant["type"], self.settings["Quickslots"].bowchant["data"]); |
694 |
|
Kragenwar-3044 |
|
695 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:Clear(); |
696 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap1", self.settings["Quickslots"].trap1["active"], self.settings["Quickslots"].trap1["type"], self.settings["Quickslots"].trap1["data"]); |
697 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap2", self.settings["Quickslots"].trap2["active"], self.settings["Quickslots"].trap2["type"], self.settings["Quickslots"].trap2["data"]); |
698 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:AddShortCut("Trap3", self.settings["Quickslots"].trap3["active"], self.settings["Quickslots"].trap3["type"], self.settings["Quickslots"].trap3["data"]); |
699 |
|
Kragenwar-3044 |
self.multi["TrapsSlot"]:Refresh(true); |
700 |
|
Kragenwar-3044 |
|
701 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:Clear(); |
702 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofNature", 12, "0x70003F45"); |
703 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofFoes", 22, "0x70003F46"); |
704 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:AddShortCut("PassageofShadow", 32, "0x70003F47"); |
705 |
|
Kragenwar-3044 |
self.multi["TrackingSlot"]:LevelCheck(); |
706 |
|
Kragenwar-3044 |
|
707 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:Clear(); |
708 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("StrengthStance", 6, "0x70003F4E"); |
709 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("PrecisionStance", 18, "0x70003F4D"); |
710 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("EnduranceStance", 28, "0x70003F4F"); |
711 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:AddShortCut("FleetStance", 56, "0x70010065"); |
712 |
|
Kragenwar-3044 |
self.multi["StanceSlot"]:LevelCheck(); |
713 |
|
Kragenwar-3044 |
|
714 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:Clear(); |
715 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:AddShortCut("SetTrap", 6, "0x700030BB"); |
716 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:AddShortCut("SetSnare", 36, "0x7000A6B1"); |
717 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:LevelCheck(); |
718 |
|
Kragenwar-3044 |
|
719 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:Clear(); |
720 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoMichelDelving", 22, "0x7000A2C3"); |
721 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoThorinsHall", 24, "0x70003F41"); |
722 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("ReturntoCamp", 26, "0x7000A2C1"); |
723 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoOstGuruth", 26, "0x7000A2C2"); |
724 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoBree", 32, "0x70003F42"); |
725 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEsteldin", 34, "0x70003F43"); |
726 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEvendim", 36, "0x7000A2C4"); |
727 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoWestAngmar", 44, "0x7000A2C5"); |
728 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoRivendell", 46, "0x70003F44"); |
729 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoSuriKyla", 48, "0x70017C82"); |
730 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEastAngmar", 48, "0x7000A2C6"); |
731 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoEchadDunann", 50, "0x70017C81"); |
732 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoTwentyFirstHall",56, "0x70017C7A"); |
733 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoMirkEaves", 62, "0x7001F459"); |
734 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:AddShortCut("GuidetoHarndirion", 62, "0x700235EF"); |
735 |
|
Kragenwar-3044 |
self.multi["PortsSlot"]:LevelCheck(); |
736 |
|
Kragenwar-3044 |
|
737 |
|
Kragenwar-3044 |
if (self.settings["Features"].findpathactive == 1) then |
738 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetActive(true); |
739 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetHover(false); |
740 |
|
Kragenwar-3044 |
elseif (self.settings["Features"].findpathactive == 2) then |
741 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetActive(true); |
742 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetHover(self.skills["FindthePath"].state); |
743 |
|
Kragenwar-3044 |
else |
744 |
|
Kragenwar-3044 |
self.skills["FindthePath"]:SetActive(not self.skills["FindthePath"].state); |
745 |
|
Kragenwar-3044 |
end |
746 |
|
Kragenwar-3044 |
self.skills["PressOnward"]:SetCombat(self.settings["Features"].combatpressonward, self.settings["Features"].pressonward); |
747 |
|
Kragenwar-3044 |
self.multi["TrappingSlot"]:SetCombat(self.settings["Features"].combattraps, true); |
748 |
|
Kragenwar-3044 |
|
749 |
|
Kragenwar-3044 |
-- Refresh States |
750 |
|
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
751 |
|
Kragenwar-3044 |
self:StanceChange(vars.classattr:GetStance()); |
752 |
|
Kragenwar-3044 |
self:FocusChange(vars.classattr:GetFocus()); |
753 |
|
Kragenwar-3044 |
|
754 |
|
Kragenwar-3044 |
Turbine.Shell.WriteLine("KragenBars: Hunter Bars refresh completed successfully."); |
755 |
|
Kragenwar-3044 |
|
756 |
|
Kragenwar-3044 |
end |