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 |
BurglarBars = class( KragenPlugs.KragenBars.ClassBar ); |
8 |
|
Kragenwar-3044 |
|
9 |
|
Kragenwar-3044 |
function BurglarBars:Constructor() |
10 |
|
Kragenwar-3044 |
|
11 |
|
Kragenwar-3044 |
KragenPlugs.KragenBars.ClassBar.Constructor( self ); |
12 |
|
Kragenwar-3044 |
|
13 |
48 |
Kragenwar-3044 |
-- CLASS SPECIFIC VARIABLES |
14 |
6 |
Kragenwar-3044 |
self.poison = 0; |
15 |
118 |
Kragenwar-3044 |
self.stance = 0; |
16 |
21 |
Kragenwar-3044 |
|
17 |
53 |
Kragenwar-3044 |
self.effectlist['CriticalResponse'] = Effect(); |
18 |
|
Kragenwar-3044 |
self.effectlist['DoubleEdged'] = Effect(); |
19 |
|
Kragenwar-3044 |
self.effectlist['FMResponse'] = Effect(); |
20 |
|
Kragenwar-3044 |
self.effectlist['ImprovedFeint'] = Effect(); |
21 |
|
Kragenwar-3044 |
self.effectlist['Campsite'] = Effect(); |
22 |
|
Kragenwar-3044 |
self.effectlist['Stunned'] = Effect(); |
23 |
|
Kragenwar-3044 |
self.effectlist['Dazed'] = Effect(); |
24 |
|
Kragenwar-3044 |
self.effectlist['KnockedDown'] = Effect(); |
25 |
|
Kragenwar-3044 |
self.effectlist['KnockedOut'] = Effect(); |
26 |
118 |
Kragenwar-3044 |
self.effectlist['Mischief'] = Effect(); |
27 |
|
Kragenwar-3044 |
self.effectlist['QuietKnife'] = Effect(); |
28 |
|
Kragenwar-3044 |
self.effectlist['Gambler'] = Effect(); |
29 |
53 |
Kragenwar-3044 |
|
30 |
48 |
Kragenwar-3044 |
-- DEFINE THE EFFECT LIST BASED ON CLIENT LANGUAGE |
31 |
|
Kragenwar-3044 |
self.DefineEffectList = function() |
32 |
|
Kragenwar-3044 |
-- ENGLISH CLIENT |
33 |
|
Kragenwar-3044 |
if (settings.language == 1) then |
34 |
53 |
Kragenwar-3044 |
self.effectlist['CriticalResponse'] :SetName('Critical Response'); |
35 |
|
Kragenwar-3044 |
self.effectlist['DoubleEdged'] :SetName('Double Edged'); |
36 |
|
Kragenwar-3044 |
self.effectlist['FMResponse'] :SetName('Fellowship Manoeuvre Response'); |
37 |
|
Kragenwar-3044 |
self.effectlist['ImprovedFeint'] :SetName('Improved Feint'); |
38 |
|
Kragenwar-3044 |
self.effectlist['Campsite'] :SetName('Campsite'); |
39 |
|
Kragenwar-3044 |
self.effectlist['Stunned'] :SetName('Stunned'); |
40 |
|
Kragenwar-3044 |
self.effectlist['Dazed'] :SetName('Dazed'); |
41 |
|
Kragenwar-3044 |
self.effectlist['KnockedDown'] :SetName('Knocked Down'); |
42 |
|
Kragenwar-3044 |
self.effectlist['KnockedOut'] :SetName('Knocked Out'); |
43 |
118 |
Kragenwar-3044 |
self.effectlist['Mischief'] :SetName('Mischievous'); |
44 |
|
Kragenwar-3044 |
self.effectlist['QuietKnife'] :SetName('Quiet Knife'); |
45 |
|
Kragenwar-3044 |
self.effectlist['Gambler'] :SetName('Gambler'); |
46 |
48 |
Kragenwar-3044 |
|
47 |
|
Kragenwar-3044 |
-- FRENCH CLIENT |
48 |
|
Kragenwar-3044 |
elseif (settings.language == 2) then |
49 |
53 |
Kragenwar-3044 |
self.effectlist['CriticalResponse'] :SetName('Critical Response'); |
50 |
|
Kragenwar-3044 |
self.effectlist['DoubleEdged'] :SetName('Double Edged'); |
51 |
|
Kragenwar-3044 |
self.effectlist['FMResponse'] :SetName('Fellowship Manoeuvre Response'); |
52 |
|
Kragenwar-3044 |
self.effectlist['ImprovedFeint'] :SetName('Improved Feint'); |
53 |
|
Kragenwar-3044 |
self.effectlist['Campsite'] :SetName('Campsite'); |
54 |
|
Kragenwar-3044 |
self.effectlist['Stunned'] :SetName('Etourdissement'); |
55 |
105 |
Kragenwar-3044 |
self.effectlist['Dazed'] :SetName('Hébété'); |
56 |
|
Kragenwar-3044 |
self.effectlist['KnockedDown'] :SetName('Renversé'); |
57 |
53 |
Kragenwar-3044 |
self.effectlist['KnockedOut'] :SetName('Knocked Out'); |
58 |
118 |
Kragenwar-3044 |
self.effectlist['Mischief'] :SetName('Mischievous'); |
59 |
|
Kragenwar-3044 |
self.effectlist['QuietKnife'] :SetName('Quiet Knife'); |
60 |
|
Kragenwar-3044 |
self.effectlist['Gambler'] :SetName('Gambler'); |
61 |
49 |
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"); |
62 |
48 |
Kragenwar-3044 |
|
63 |
|
Kragenwar-3044 |
-- GERMAN CLIENT |
64 |
|
Kragenwar-3044 |
elseif (settings.language == 3) then |
65 |
53 |
Kragenwar-3044 |
self.effectlist['CriticalResponse'] :SetName('Kritische Erwiderung'); |
66 |
|
Kragenwar-3044 |
self.effectlist['DoubleEdged'] :SetName('Zweischneidiger Schlag'); |
67 |
105 |
Kragenwar-3044 |
self.effectlist['FMResponse'] :SetName('Erwiderung "Gefährtenmanöver"'); |
68 |
53 |
Kragenwar-3044 |
self.effectlist['ImprovedFeint'] :SetName('Improved Feint'); |
69 |
|
Kragenwar-3044 |
self.effectlist['Campsite'] :SetName('Campsite'); |
70 |
|
Kragenwar-3044 |
self.effectlist['Stunned'] :SetName('Bewusstlos geschlagen'); |
71 |
|
Kragenwar-3044 |
self.effectlist['Dazed'] :SetName('Benommenheit'); |
72 |
|
Kragenwar-3044 |
self.effectlist['KnockedDown'] :SetName('Zu Boden geschlagen'); |
73 |
|
Kragenwar-3044 |
self.effectlist['KnockedOut'] :SetName('Knocked Out'); |
74 |
118 |
Kragenwar-3044 |
self.effectlist['Mischief'] :SetName('Mischievous'); |
75 |
|
Kragenwar-3044 |
self.effectlist['QuietKnife'] :SetName('Quiet Knife'); |
76 |
|
Kragenwar-3044 |
self.effectlist['Gambler'] :SetName('Gambler'); |
77 |
49 |
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"); |
78 |
48 |
Kragenwar-3044 |
end |
79 |
21 |
Kragenwar-3044 |
end |
80 |
6 |
Kragenwar-3044 |
|
81 |
48 |
Kragenwar-3044 |
-- BUILD WINDOWS BARS SKILLS AND MULTIS -- |
82 |
|
Kragenwar-3044 |
|
83 |
|
Kragenwar-3044 |
-- Build Bars |
84 |
102 |
Kragenwar-3044 |
self.bars["CritTier1"] = SkillBar(self.windows["Crit"], 1, 1, 1, 1, true, true); |
85 |
|
Kragenwar-3044 |
self.bars["CritTier2"] = SkillBar(self.windows["Crit"], 2, 1, 1, 1, true, true); |
86 |
6 |
Kragenwar-3044 |
|
87 |
48 |
Kragenwar-3044 |
-- Build Skills |
88 |
6 |
Kragenwar-3044 |
self.skills["BurglarsAdvantage"] = SkillSlot(self.bars["CritTier1"], 1, 1, false, 2, "0x70003F0B"); |
89 |
127 |
Valdacil-446 |
self.skills["DoubleEdgedStrike"] = SkillSlot(self.bars["CritTier2"], 1, 1, false, 6, "0x70003F0C"); |
90 |
102 |
Kragenwar-3044 |
self.skills["ExposedThroat"] = SkillSlot(self.bars["Legendary"], 1, 1, false, 41, "0x70000F80"); |
91 |
|
Kragenwar-3044 |
self.skills["FlashingBlades"] = SkillSlot(self.bars["Legendary"], 2, 1, false, 41, "0x70000F5D"); |
92 |
|
Kragenwar-3044 |
|
93 |
127 |
Valdacil-446 |
self.skills["LuckyStrike"] = SkillSlot(self.bars["Capstones"], 1, 1, self.settings.traits["DealingsDone"].active, 56, "0x7000FD86"); |
94 |
|
Valdacil-446 |
self.skills["FeintAttack"] = SkillSlot(self.bars["Capstones"], 2, 1, self.settings.traits["PracticedBluff"].active, 58, "0x7000FB71"); |
95 |
|
Valdacil-446 |
self.skills["SmallSnag"] = SkillSlot(self.bars["Capstones"], 3, 1, self.settings.traits["LittleAnnoyances"].active, 60, "0x7000FB73"); |
96 |
6 |
Kragenwar-3044 |
|
97 |
127 |
Valdacil-446 |
self.skills["EscapeClause"] = SkillSlot(self.bars["FMReactives"], 1, 1, false, 48, "0x7000D443"); |
98 |
6 |
Kragenwar-3044 |
|
99 |
|
Kragenwar-3044 |
self.skills["FindFooting"] = SkillSlot(self.bars["Stunned"], 1, 1, false, 32, "0x70003F14"); |
100 |
|
Kragenwar-3044 |
|
101 |
92 |
Kragenwar-3044 |
self.skills["SurpriseStrike"] = SkillSlot(self.bars["Melee"], 1, 1, true, 1, "0x70003F08"); |
102 |
|
Kragenwar-3044 |
self.skills["CunningAttack"] = SkillSlot(self.bars["Melee"], 2, 1, true, 1, "0x70003F09"); |
103 |
127 |
Valdacil-446 |
self.skills["SubtleStab"] = SkillSlot(self.bars["Melee"], 3, 1, true, { 1, 72}, { "0x700031D3", "0x7002837D" }); |
104 |
92 |
Kragenwar-3044 |
|
105 |
|
Kragenwar-3044 |
self.skills["Disable"] = SkillSlot(self.bars["Tricks"], 1, 1, true, 4, "0x700031FA"); |
106 |
|
Kragenwar-3044 |
self.skills["DITE"] = SkillSlot(self.bars["Tricks"], 2, 1, true, 16, "0x700031E7"); |
107 |
127 |
Valdacil-446 |
self.skills["CounterDefences"] = SkillSlot(self.bars["Tricks"], 3, 1, true, { 24, 68 }, { "0x70003200", "0x7002837A" }); |
108 |
92 |
Kragenwar-3044 |
self.skills["Enrage"] = SkillSlot(self.bars["Tricks"], 4, 1, true, 38, "0x70003218"); |
109 |
|
Kragenwar-3044 |
|
110 |
127 |
Valdacil-446 |
self.skills["Riddle"] = SkillSlot(self.bars["Control"], 1, 1, true, { 8, 66}, { "0x700031D8", "0x70028385" }); |
111 |
92 |
Kragenwar-3044 |
self.skills["Addle"] = SkillSlot(self.bars["Control"], 2, 1, true, 14, "0x70003F0E"); |
112 |
|
Kragenwar-3044 |
self.skills["Provoke"] = SkillSlot(self.bars["Control"], 3, 1, true, 34, "0x70003F0A"); |
113 |
|
Kragenwar-3044 |
self.skills["Confound"] = SkillSlot(self.bars["Control"], 4, 1, vars.classattr:GetStance() == 1, 46, "0x7000D441"); |
114 |
|
Kragenwar-3044 |
|
115 |
|
Kragenwar-3044 |
self.skills["Sneak"] = SkillSlot(self.bars["Stealth"], 1, 1, true, 4, "0x70003212"); |
116 |
|
Kragenwar-3044 |
self.skills["Diversion"] = SkillSlot(self.bars["Stealth"], 2, 1, true, 18, "0x700031F5"); |
117 |
102 |
Kragenwar-3044 |
self.skills["ShareTheFun"] = SkillSlot(self.bars["Stealth"], 3, 1, true, 42, "0x7000D448"); |
118 |
|
Kragenwar-3044 |
|
119 |
|
Kragenwar-3044 |
self.skills["HideInPlainSight"] = SkillSlot(self.bars["HIPS"], 1, 1, true, { 30, 54 }, { "0x7000320D", "0x70015A02" }); |
120 |
6 |
Kragenwar-3044 |
|
121 |
92 |
Kragenwar-3044 |
self.skills["MischieviousGlee"] = SkillSlot(self.bars["Removals"], 1, 1, true, {10, 64}, { "0x70003F10", "0x70020DD0" }); |
122 |
127 |
Valdacil-446 |
self.skills["StartlingTwist"] = SkillSlot(self.bars["Removals"], 2, 1, true, {20, 52, 74}, { "0x70003F0F", "0x70015A04", "0x70028383" }); |
123 |
92 |
Kragenwar-3044 |
self.skills["CleverRetort"] = SkillSlot(self.bars["Removals"], 3, 1, self.settings.traits["HonedWit"].active or vars.classattr:GetStance() == 1, 30, "0x7000D440"); |
124 |
6 |
Kragenwar-3044 |
|
125 |
92 |
Kragenwar-3044 |
self.skills["ExploitOpening"] = SkillSlot(self.bars["FMStarters"], 1, 1, true, 12, "0x70003F0D"); |
126 |
|
Kragenwar-3044 |
self.skills["Trip"] = SkillSlot(self.bars["FMStarters"], 2, 1, true, 28, "0x70003F07"); |
127 |
|
Kragenwar-3044 |
self.skills["Marbles"] = ItemSlot(self.bars["FMStarters"], 3, 1, true, self.settings.quickslots["Marbles"]); |
128 |
6 |
Kragenwar-3044 |
|
129 |
92 |
Kragenwar-3044 |
self.skills["Aim"] = SkillSlot(self.bars["Buffs"], 1, 1, true, 12, "0x700031E1"); |
130 |
|
Kragenwar-3044 |
self.skills["RevealWeakness"] = SkillSlot(self.bars["Buffs"], 2, 1, true, 22, "0x70003F11"); |
131 |
|
Kragenwar-3044 |
self.skills["LIE"] = SkillSlot(self.bars["Buffs"], 3, 1, true, 50, "0x7000D445"); |
132 |
6 |
Kragenwar-3044 |
|
133 |
92 |
Kragenwar-3044 |
self.skills["WellPlacedStrike"] = SkillSlot(self.bars["Induction"], 1, 1, true, 40, "0x7000D43E"); |
134 |
|
Kragenwar-3044 |
|
135 |
|
Kragenwar-3044 |
self.skills["Caltrops"] = ItemSlot(self.bars["ClassItems"], 1, 1, true, self.settings.quickslots["Caltrops"]); |
136 |
|
Kragenwar-3044 |
self.skills["StunDust"] = ItemSlot(self.bars["ClassItems"], 2, 1, true, self.settings.quickslots["StunDust"]); |
137 |
|
Kragenwar-3044 |
self.skills["Knives"] = ItemSlot(self.bars["ClassItems"], 3, 1, true, self.settings.quickslots["Knives"]); |
138 |
6 |
Kragenwar-3044 |
|
139 |
92 |
Kragenwar-3044 |
self.skills["TouchAndGo"] = SkillSlot(self.bars["SelfBuffs"], 1, 1, true, 6, "0x70003F13"); |
140 |
|
Kragenwar-3044 |
self.skills["ReadyAndAble"] = SkillSlot(self.bars["SelfBuffs"], 2, 1, true, 36, "0x70003F12"); |
141 |
127 |
Valdacil-446 |
self.skills["KnivesOut"] = SkillSlot(self.bars["SelfBuffs"], 3, 1, true, 44, "0x7000D444"); |
142 |
92 |
Kragenwar-3044 |
|
143 |
|
Kragenwar-3044 |
self.skills["CurePoison"] = SkillSlot(self.bars["Cure"], 1, 1, true, { 26, 62 }, {"0x70003F17", "0x7001F4A4" }); |
144 |
6 |
Kragenwar-3044 |
|
145 |
92 |
Kragenwar-3044 |
self.skills["Burgle"] = SkillSlot(self.bars["Utility"], 1, 1, true, 14, "0x70003F16"); |
146 |
|
Kragenwar-3044 |
self.skills["ContactPedlar"] = SkillSlot(self.bars["Utility"], 2, 1, false, 26, "0x7000D442"); |
147 |
|
Kragenwar-3044 |
self.skills["TrackTreasure"] = SkillSlot(self.bars["Utility"], 3, 1, true, 20, "0x70003F15"); |
148 |
109 |
Kragenwar-3044 |
self.skills["SafeFall"] = SkillSlot(self.bars["Utility"], 4, 1, true, 18, "0x7002613D"); |
149 |
6 |
Kragenwar-3044 |
|
150 |
109 |
Kragenwar-3044 |
-- Build Stance Slot |
151 |
|
Kragenwar-3044 |
self.multi["Stances"] = SkillMultiSlot(self.bars["Stance"], 1, 1, true); |
152 |
|
Kragenwar-3044 |
self.multi["Stances"]:AddShortCut("Mischief", 20, "0x7000D4A4"); |
153 |
|
Kragenwar-3044 |
self.multi["Stances"]:AddShortCut("QuietKnife", 20, "0x7002613C"); |
154 |
|
Kragenwar-3044 |
self.multi["Stances"]:AddShortCut("Gambler", 20, "0x7002613B"); |
155 |
|
Kragenwar-3044 |
self.multi["Stances"]:LevelCheck(); |
156 |
|
Kragenwar-3044 |
|
157 |
|
Kragenwar-3044 |
|
158 |
48 |
Kragenwar-3044 |
-- SET COMBAT STATES |
159 |
109 |
Kragenwar-3044 |
self.multi["Stances"]:SetCombat(false, true); |
160 |
6 |
Kragenwar-3044 |
self.skills["Sneak"]:SetCombat(false, true); |
161 |
|
Kragenwar-3044 |
self.skills["ShareTheFun"]:SetCombat(false, true); |
162 |
|
Kragenwar-3044 |
self.skills["ContactPedlar"]:SetCombat(false, true); |
163 |
|
Kragenwar-3044 |
self.skills["Burgle"]:SetCombat(false, true); |
164 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetCombat(false, true); |
165 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetCombat(false, true); |
166 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetCombat(false, true); |
167 |
92 |
Kragenwar-3044 |
self.skills["TrackTreasure"]:SetCombat(false, true); |
168 |
6 |
Kragenwar-3044 |
|
169 |
66 |
Kragenwar-3044 |
-- ITEM MANAGER |
170 |
73 |
Kragenwar-3044 |
--self.itemmanager = ItemManager(); |
171 |
|
Kragenwar-3044 |
--self.itemmanager:RegisterItem("Bag of Marbles", { "Tiny","Small","Medium","Large","Big","Giant" }, {"Recipe"}, self.skills["Marbles"]); |
172 |
|
Kragenwar-3044 |
--self.itemmanager:RegisterItem("Caltrops", { "Caltrops","Improved","Sharp","Deadly","Lethal","Crippling" }, {"Recipe"}, self.skills["Caltrops"]); |
173 |
|
Kragenwar-3044 |
--self.itemmanager:RegisterItem("Stun Dust", { "Stun Dust","Improved","Blinding","Overpowering","Paralyzing", "Incapacitating" }, {"Recipe"}, self.skills["StunDust"]); |
174 |
|
Kragenwar-3044 |
--self.itemmanager:RegisterItem("Serrated Knife", { "Ancient Steel","Precise Ancient Steel","Sellsword","Precise Sellsword" }, {"Recipe"}, self.skills["Knives"]); |
175 |
|
Kragenwar-3044 |
--self.itemmanager:ParseItems(); |
176 |
66 |
Kragenwar-3044 |
|
177 |
48 |
Kragenwar-3044 |
-- CLASS SPECIFIC SETUP/DEFAULT CODE |
178 |
6 |
Kragenwar-3044 |
|
179 |
|
Kragenwar-3044 |
-- Stance Event |
180 |
|
Kragenwar-3044 |
AddCallback(vars.classattr, "StanceChanged", function(sender, args) |
181 |
|
Kragenwar-3044 |
KragenBars:StanceChange(); |
182 |
|
Kragenwar-3044 |
end); |
183 |
|
Kragenwar-3044 |
|
184 |
48 |
Kragenwar-3044 |
-- INITIALIZE BARS |
185 |
6 |
Kragenwar-3044 |
self:InitBars(); |
186 |
120 |
Kragenwar-3044 |
self:StanceChange(); |
187 |
6 |
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
188 |
|
Kragenwar-3044 |
|
189 |
|
Kragenwar-3044 |
end |
190 |
|
Kragenwar-3044 |
|
191 |
48 |
Kragenwar-3044 |
-- ADD EFFECT EVENT |
192 |
6 |
Kragenwar-3044 |
function BurglarBars:AddEffect( effectIndex ) |
193 |
21 |
Kragenwar-3044 |
local effect = vars.player:GetEffects():Get( effectIndex ); |
194 |
53 |
Kragenwar-3044 |
local name = effect:GetName(); |
195 |
|
Kragenwar-3044 |
local id = effect:GetID(); |
196 |
|
Kragenwar-3044 |
|
197 |
6 |
Kragenwar-3044 |
-- Crit Response |
198 |
53 |
Kragenwar-3044 |
if (name == self.effectlist["CriticalResponse"]:GetName()) then |
199 |
|
Kragenwar-3044 |
if (self.effectlist["CriticalResponse"]:SetState(true, id)) then |
200 |
|
Kragenwar-3044 |
self.skills["BurglarsAdvantage"]:SetActive(true); |
201 |
|
Kragenwar-3044 |
end |
202 |
6 |
Kragenwar-3044 |
|
203 |
|
Kragenwar-3044 |
-- Double Edged |
204 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["DoubleEdged"]:GetName()) then |
205 |
|
Kragenwar-3044 |
if (self.effectlist["DoubleEdged"]:SetState(true, id)) then |
206 |
|
Kragenwar-3044 |
self.skills["DoubleEdgedStrike"]:SetActive(false); |
207 |
58 |
Kragenwar-3044 |
self.skills["ExposedThroat"]:SetActive(self.settings.traits["ExposedThroat"].active); |
208 |
|
Kragenwar-3044 |
self.skills["FlashingBlades"]:SetActive(self.settings.traits["FlashingBlades"].active); |
209 |
53 |
Kragenwar-3044 |
self.skills["LuckyStrike"]:SetActive(true); |
210 |
127 |
Valdacil-446 |
self.skills["FeintAttack"]:SetActive(self.stance ~= 1); |
211 |
53 |
Kragenwar-3044 |
self.skills["SmallSnag"]:SetActive(true); |
212 |
|
Kragenwar-3044 |
end |
213 |
6 |
Kragenwar-3044 |
|
214 |
|
Kragenwar-3044 |
-- Stunned, Dazed, Knocked Down |
215 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["Stunned"]:GetName() or name == self.effectlist["Dazed"]:GetName() or name == self.effectlist["KnockedDown"]:GetName() or name == self.effectlist["KnockedOut"]:GetName()) then |
216 |
|
Kragenwar-3044 |
if (self.effectlist["Stunned"]:SetState(true, id)) then |
217 |
|
Kragenwar-3044 |
self.skills["FindFooting"]:SetActive( true ); |
218 |
|
Kragenwar-3044 |
end |
219 |
6 |
Kragenwar-3044 |
|
220 |
|
Kragenwar-3044 |
-- Fellowship Manoeuvre Response |
221 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["FMResponse"]:GetName()) then |
222 |
|
Kragenwar-3044 |
if (self.effectlist["FMResponse"]:SetState(true, id)) then |
223 |
|
Kragenwar-3044 |
self.skills["EscapeClause"]:SetActive(true); |
224 |
|
Kragenwar-3044 |
end |
225 |
6 |
Kragenwar-3044 |
|
226 |
|
Kragenwar-3044 |
-- Improved Feint Attack |
227 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["ImprovedFeint"]:GetName()) then |
228 |
|
Kragenwar-3044 |
if (self.effectlist["ImprovedFeint"]:SetState(true, id)) then |
229 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetActive( true ); |
230 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetCombat(true, true); |
231 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetCombat(true, true); |
232 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetCombat(true, true); |
233 |
|
Kragenwar-3044 |
end |
234 |
6 |
Kragenwar-3044 |
|
235 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["Campsite"]:GetName()) then |
236 |
|
Kragenwar-3044 |
if (self.effectlist["Campsite"]:SetState(true, id)) then |
237 |
|
Kragenwar-3044 |
self.skills["ContactPedlar"]:SetActive( true ); |
238 |
|
Kragenwar-3044 |
end |
239 |
118 |
Kragenwar-3044 |
|
240 |
|
Kragenwar-3044 |
elseif (name == self.effectlist["Mischief"]:GetName() or name == self.effectlist["QuietKnife"]:GetName() or name == self.effectlist["Gambler"]:GetName()) then |
241 |
|
Kragenwar-3044 |
if (self.effectlist["Mischief"]:SetState(true, id)) then |
242 |
|
Kragenwar-3044 |
if (name == self.effectlist["Mischief"]:GetName()) then |
243 |
|
Kragenwar-3044 |
self.skills["Sneak"]:SetActive( false ); |
244 |
|
Kragenwar-3044 |
self.skills["ShareTheFun"]:SetActive( false ); |
245 |
|
Kragenwar-3044 |
self.skills["Confound"]:SetActive( true ); |
246 |
|
Kragenwar-3044 |
self.skills["CleverRetort"]:SetActive( true ); |
247 |
|
Kragenwar-3044 |
self.skills["FeintAttack"]:SetActive( false ); |
248 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetActive( false ); |
249 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetActive( false ); |
250 |
|
Kragenwar-3044 |
self.skills["Burgle"]:SetActive( false ); |
251 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetActive( false ); |
252 |
|
Kragenwar-3044 |
self.stance = 1; |
253 |
|
Kragenwar-3044 |
else |
254 |
|
Kragenwar-3044 |
self.skills["Sneak"]:SetActive( true ); |
255 |
|
Kragenwar-3044 |
self.skills["ShareTheFun"]:SetActive( true ); |
256 |
|
Kragenwar-3044 |
self.skills["Confound"]:SetActive( false ); |
257 |
|
Kragenwar-3044 |
self.skills["CleverRetort"]:SetActive( self.settings.traits["HonedWit"].active ); |
258 |
|
Kragenwar-3044 |
self.skills["FeintAttack"]:SetActive( self.effectlist["DoubleEdged"]:GetState() ); |
259 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetActive( true ); |
260 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetActive( true ); |
261 |
|
Kragenwar-3044 |
self.skills["Burgle"]:SetActive( true ); |
262 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetActive( true ); |
263 |
|
Kragenwar-3044 |
if (name == self.effectlist["QuietKnife"]:GetName()) then |
264 |
|
Kragenwar-3044 |
self.stance = 2 |
265 |
|
Kragenwar-3044 |
elseif (name == self.effectlist["Gambler"]:GetName()) then |
266 |
|
Kragenwar-3044 |
self.stance = 3 |
267 |
|
Kragenwar-3044 |
end |
268 |
|
Kragenwar-3044 |
end |
269 |
|
Kragenwar-3044 |
|
270 |
120 |
Kragenwar-3044 |
self:StanceChange(); |
271 |
118 |
Kragenwar-3044 |
|
272 |
|
Kragenwar-3044 |
end |
273 |
6 |
Kragenwar-3044 |
|
274 |
|
Kragenwar-3044 |
-- Fear |
275 |
21 |
Kragenwar-3044 |
elseif (effect:GetCategory() == Turbine.Gameplay.EffectCategory.Poison ) then |
276 |
6 |
Kragenwar-3044 |
self.poison = self.poison + 1; |
277 |
127 |
Valdacil-446 |
if (settings.skilldata["CurePoison"].parent ~= nil and vars.playerlevel >= self.skills["CurePoison"].level[1] and self.settings.features["PoisonIndicator"].active) then |
278 |
|
Valdacil-446 |
if (self.settings.userconf[settings.skilldata["CurePoison"].parent].active) then |
279 |
|
Valdacil-446 |
self.skills["CurePoison"]:SetColor("green"); |
280 |
|
Valdacil-446 |
end |
281 |
6 |
Kragenwar-3044 |
end |
282 |
|
Kragenwar-3044 |
end |
283 |
|
Kragenwar-3044 |
|
284 |
|
Kragenwar-3044 |
end |
285 |
|
Kragenwar-3044 |
|
286 |
48 |
Kragenwar-3044 |
-- REMOVE EFFECT EVENT |
287 |
6 |
Kragenwar-3044 |
function BurglarBars:RemoveEffect( effect ) |
288 |
53 |
Kragenwar-3044 |
local name = effect:GetName(); |
289 |
|
Kragenwar-3044 |
local id = effect:GetID(); |
290 |
|
Kragenwar-3044 |
|
291 |
6 |
Kragenwar-3044 |
-- Crit Response |
292 |
53 |
Kragenwar-3044 |
if (name == self.effectlist["CriticalResponse"]:GetName()) then |
293 |
|
Kragenwar-3044 |
if (not self.effectlist["CriticalResponse"]:SetState(false, id)) then |
294 |
|
Kragenwar-3044 |
self.skills["BurglarsAdvantage"]:SetActive(false); |
295 |
6 |
Kragenwar-3044 |
self.skills["DoubleEdgedStrike"]:SetActive(true); |
296 |
|
Kragenwar-3044 |
self.skills["DoubleEdgedStrike"]:StartTimer(5, false); |
297 |
127 |
Valdacil-446 |
|
298 |
|
Valdacil-446 |
-- Begin Ugly Hack because Turbine removed "Double-Edged" buff |
299 |
|
Valdacil-446 |
if (self.settings.traits["ExposedThroat"].active) then |
300 |
|
Valdacil-446 |
self.skills["ExposedThroat"]:SetActive(true) |
301 |
|
Valdacil-446 |
self.skills["ExposedThroat"]:StartTimer(10, false); |
302 |
|
Valdacil-446 |
end |
303 |
|
Valdacil-446 |
if (self.settings.traits["FlashingBlades"].active) then |
304 |
|
Valdacil-446 |
self.skills["FlashingBlades"]:SetActive(true) |
305 |
|
Valdacil-446 |
self.skills["FlashingBlades"]:StartTimer(10, false); |
306 |
|
Valdacil-446 |
end |
307 |
|
Valdacil-446 |
if (not self.settings.traits["DealingsDone"].active) then |
308 |
|
Valdacil-446 |
self.skills["LuckyStrike"]:SetActive(true) |
309 |
|
Valdacil-446 |
self.skills["LuckyStrike"]:StartTimer(10, false); |
310 |
|
Valdacil-446 |
else |
311 |
|
Valdacil-446 |
self.skills["LuckyStrike"]:SetActive(self.settings.traits["DealingsDone"].active); |
312 |
|
Valdacil-446 |
end |
313 |
|
Valdacil-446 |
if (not self.settings.traits["PracticedBluff"].active) then |
314 |
|
Valdacil-446 |
if (self.stance ~= 1) then |
315 |
|
Valdacil-446 |
self.skills["FeintAttack"]:SetActive(true) |
316 |
|
Valdacil-446 |
self.skills["FeintAttack"]:StartTimer(10, false); |
317 |
|
Valdacil-446 |
end |
318 |
|
Valdacil-446 |
else |
319 |
|
Valdacil-446 |
self.skills["FeintAttack"]:SetActive(self.settings.traits["PracticedBluff"].active and self.stance ~=1); |
320 |
|
Valdacil-446 |
end |
321 |
|
Valdacil-446 |
if (not self.settings.traits["LittleAnnoyances"].active) then |
322 |
|
Valdacil-446 |
self.skills["SmallSnag"]:SetActive(true) |
323 |
|
Valdacil-446 |
self.skills["SmallSnag"]:StartTimer(10, false); |
324 |
|
Valdacil-446 |
else |
325 |
|
Valdacil-446 |
self.skills["SmallSnag"]:SetActive(self.settings.traits["LittleAnnoyances"].active); |
326 |
|
Valdacil-446 |
end |
327 |
|
Valdacil-446 |
-- End Ugly Hack |
328 |
6 |
Kragenwar-3044 |
end |
329 |
|
Kragenwar-3044 |
|
330 |
|
Kragenwar-3044 |
-- Double Edged |
331 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["DoubleEdged"]:GetName()) then |
332 |
|
Kragenwar-3044 |
if (not self.effectlist["DoubleEdged"]:SetState(false, id)) then |
333 |
6 |
Kragenwar-3044 |
self.skills["ExposedThroat"]:SetActive(false); |
334 |
|
Kragenwar-3044 |
self.skills["FlashingBlades"]:SetActive(false); |
335 |
127 |
Valdacil-446 |
self.skills["LuckyStrike"]:SetActive(self.settings.traits["DealingsDone"].active); |
336 |
|
Valdacil-446 |
self.skills["FeintAttack"]:SetActive(self.settings.traits["PracticedBluff"].active and self.stance ~= 1); |
337 |
|
Valdacil-446 |
self.skills["SmallSnag"]:SetActive(self.settings.traits["LittleAnnoyances"].active); |
338 |
6 |
Kragenwar-3044 |
end |
339 |
|
Kragenwar-3044 |
|
340 |
|
Kragenwar-3044 |
|
341 |
|
Kragenwar-3044 |
-- Stunned, Dazed or Knocked Down |
342 |
53 |
Kragenwar-3044 |
elseif ((name == self.effectlist["Stunned"]:GetName() or name == self.effectlist["Dazed"]:GetName() or name == self.effectlist["KnockedDown"]:GetName() or name == self.effectlist["KnockedOut"]:GetName())) then |
343 |
|
Kragenwar-3044 |
if (not self.effectlist["Stunned"]:SetState(false, id)) then |
344 |
|
Kragenwar-3044 |
self.skills["FindFooting"]:SetActive(false); |
345 |
|
Kragenwar-3044 |
end |
346 |
6 |
Kragenwar-3044 |
|
347 |
|
Kragenwar-3044 |
-- Fellowship Manoeuvre Response |
348 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["FMResponse"]:GetName()) then |
349 |
|
Kragenwar-3044 |
if (not self.effectlist["FMResponse"]:SetState(false, id)) then |
350 |
6 |
Kragenwar-3044 |
self.skills["EscapeClause"]:SetActive(false); |
351 |
|
Kragenwar-3044 |
end |
352 |
|
Kragenwar-3044 |
|
353 |
|
Kragenwar-3044 |
-- Improved Feint Attack |
354 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["ImprovedFeint"]:GetName()) then |
355 |
|
Kragenwar-3044 |
if (not self.effectlist["ImprovedFeint"]:SetState(false, id)) then |
356 |
6 |
Kragenwar-3044 |
self.skills["LIE"]:SetCombat(false, true); |
357 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetCombat(false, true); |
358 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetCombat(false, true); |
359 |
|
Kragenwar-3044 |
end |
360 |
|
Kragenwar-3044 |
|
361 |
53 |
Kragenwar-3044 |
elseif (name == self.effectlist["Campsite"]:GetName()) then |
362 |
|
Kragenwar-3044 |
if (not self.effectlist["Campsite"]:SetState(false, id)) then |
363 |
|
Kragenwar-3044 |
self.skills["ContactPedlar"]:SetActive(false); |
364 |
|
Kragenwar-3044 |
end |
365 |
118 |
Kragenwar-3044 |
|
366 |
|
Kragenwar-3044 |
elseif (name == self.effectlist["Mischief"]:GetName() or name == self.effectlist["QuietKnife"]:GetName() or name == self.effectlist["Gambler"]:GetName()) then |
367 |
|
Kragenwar-3044 |
if (not self.effectlist["Mischief"]:SetState(false, id)) then |
368 |
|
Kragenwar-3044 |
self.stance = 0; |
369 |
|
Kragenwar-3044 |
self.skills["Sneak"]:SetActive( true ); |
370 |
|
Kragenwar-3044 |
self.skills["ShareTheFun"]:SetActive( true ); |
371 |
|
Kragenwar-3044 |
self.skills["Confound"]:SetActive( false ); |
372 |
|
Kragenwar-3044 |
self.skills["CleverRetort"]:SetActive( self.settings.traits["HonedWit"].active ); |
373 |
|
Kragenwar-3044 |
self.skills["FeintAttack"]:SetActive( self.effectlist["DoubleEdged"]:GetState() ); |
374 |
|
Kragenwar-3044 |
self.skills["LIE"]:SetActive( true ); |
375 |
|
Kragenwar-3044 |
self.skills["Diversion"]:SetActive( true ); |
376 |
|
Kragenwar-3044 |
self.skills["Burgle"]:SetActive( true ); |
377 |
|
Kragenwar-3044 |
self.skills["Trip"]:SetActive( true ); |
378 |
|
Kragenwar-3044 |
|
379 |
120 |
Kragenwar-3044 |
self:StanceChange(); |
380 |
118 |
Kragenwar-3044 |
end |
381 |
6 |
Kragenwar-3044 |
-- Poison |
382 |
|
Kragenwar-3044 |
elseif (effect:GetCategory() == Turbine.Gameplay.EffectCategory.Poison ) then |
383 |
|
Kragenwar-3044 |
self.poison = self.poison - 1; |
384 |
|
Kragenwar-3044 |
if (self.poison == 0) then |
385 |
|
Kragenwar-3044 |
self.skills["CurePoison"]:SetColor(); |
386 |
|
Kragenwar-3044 |
end |
387 |
|
Kragenwar-3044 |
|
388 |
|
Kragenwar-3044 |
end |
389 |
|
Kragenwar-3044 |
|
390 |
|
Kragenwar-3044 |
end |
391 |
|
Kragenwar-3044 |
|
392 |
48 |
Kragenwar-3044 |
-- STANCE CHANGED EVENT |
393 |
6 |
Kragenwar-3044 |
function BurglarBars:StanceChange() |
394 |
127 |
Valdacil-446 |
|
395 |
120 |
Kragenwar-3044 |
-- PRIMARY STANCE SWITCHING |
396 |
|
Kragenwar-3044 |
if (self.settings.features["StancePriority"].active) then |
397 |
|
Kragenwar-3044 |
if (self.stance == self.settings.defaults["PrimaryStance"].selected) then |
398 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetIndex(self.settings.defaults["SecondaryStance"].selected); |
399 |
|
Kragenwar-3044 |
else |
400 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetIndex(self.settings.defaults["PrimaryStance"].selected); |
401 |
|
Kragenwar-3044 |
end |
402 |
|
Kragenwar-3044 |
end |
403 |
|
Kragenwar-3044 |
|
404 |
|
Kragenwar-3044 |
-- HOVER/DISAPPEAR SWITCHING |
405 |
|
Kragenwar-3044 |
if (self.stance == 0) then |
406 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetHover( false ); |
407 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetActive( true ); |
408 |
|
Kragenwar-3044 |
else |
409 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetActive( self.settings.defaults["StanceActive"].selected ~= 3); |
410 |
|
Kragenwar-3044 |
self.multi["Stances"]:SetHover( self.settings.defaults["StanceActive"].selected == 2 ); |
411 |
|
Kragenwar-3044 |
end |
412 |
6 |
Kragenwar-3044 |
end |
413 |
|
Kragenwar-3044 |
|
414 |
48 |
Kragenwar-3044 |
-- CRIT CHANGED EVENT |
415 |
6 |
Kragenwar-3044 |
function BurglarBars:CritChange(tier, state) |
416 |
102 |
Kragenwar-3044 |
|
417 |
6 |
Kragenwar-3044 |
end |
418 |
|
Kragenwar-3044 |
|
419 |
48 |
Kragenwar-3044 |
-- DEFAULT SETTINGS |
420 |
6 |
Kragenwar-3044 |
function BurglarBars:DefaultSettings() |
421 |
58 |
Kragenwar-3044 |
self.settings = { preconf = { }, userconf = { }, traits = { }, features = { }, defaults = { }, quickslots = { } }; |
422 |
60 |
Kragenwar-3044 |
|
423 |
102 |
Kragenwar-3044 |
self.settings.preconf["Crit"] = { id = 1, name = "Crit Reactives", defpos = {1,2}, size={2,1}, pos = {0,0}, combat = {true,true}, active = true }; |
424 |
6 |
Kragenwar-3044 |
|
425 |
102 |
Kragenwar-3044 |
self.settings.userconf["Legendary"] = { id = 2, name = "Legendary", defpos = {3,2}, size={2,1}, pos = {0,0}, combat = {true,true}, active = true }; |
426 |
|
Kragenwar-3044 |
self.settings.userconf["Capstones"] = { id = 3, name = "Capstones", defpos = {5,2}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
427 |
|
Kragenwar-3044 |
self.settings.userconf["Melee"] = { id = 4, name = "Melee", defpos = {1,4}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
428 |
|
Kragenwar-3044 |
self.settings.userconf["Tricks"] = { id = 5, name = "Tricks", defpos = {4,4}, size={4,1}, pos = {0,0}, combat = {true,true}, active = true }; |
429 |
|
Kragenwar-3044 |
self.settings.userconf["Control"] = { id = 6, name = "Control", defpos = {8,4}, size={4,1}, pos = {0,0}, combat = {true,true}, active = true }; |
430 |
|
Kragenwar-3044 |
self.settings.userconf["Stance"] = { id = 7, name = "Stance", defpos = {12,4}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
431 |
|
Kragenwar-3044 |
self.settings.userconf["Removals"] = { id = 8, name = "Removals", defpos = {4,3}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
432 |
|
Kragenwar-3044 |
self.settings.userconf["FMStarters"] = { id = 9, name = "FM Starters", defpos = {7,3}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
433 |
127 |
Valdacil-446 |
self.settings.userconf["FMReactives"] = { id = 10, name = "FM Reactives", defpos = {10,2}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
434 |
102 |
Kragenwar-3044 |
self.settings.userconf["Buffs"] = { id = 11, name = "Battle Buffs", defpos = {1,3}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
435 |
|
Kragenwar-3044 |
self.settings.userconf["Induction"] = { id = 12, name = "Induction", defpos = {8,2}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
436 |
|
Kragenwar-3044 |
self.settings.userconf["Stealth"] = { id = 13, name = "Stealth", defpos = {10,3}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
437 |
|
Kragenwar-3044 |
self.settings.userconf["HIPS"] = { id = 14, name = "HIPS", defpos = {12,2}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
438 |
|
Kragenwar-3044 |
self.settings.userconf["SelfBuffs"] = { id = 15, name = "Self Buffs", defpos = {1,1}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
439 |
|
Kragenwar-3044 |
self.settings.userconf["Stunned"] = { id = 16, name = "Stun", defpos = {4,1}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
440 |
|
Kragenwar-3044 |
self.settings.userconf["Cure"] = { id = 17, name = "Poison Cure", defpos = {5,1}, size={1,1}, pos = {0,0}, combat = {true,true}, active = true }; |
441 |
|
Kragenwar-3044 |
self.settings.userconf["ClassItems"] = { id = 18, name = "Class Items", defpos = {6,1}, size={3,1}, pos = {0,0}, combat = {true,true}, active = true }; |
442 |
|
Kragenwar-3044 |
self.settings.userconf["Utility"] = { id = 19, name = "Utility", defpos = {9,1}, size={4,1}, pos = {0,0}, combat = {true,true}, active = true }; |
443 |
6 |
Kragenwar-3044 |
|
444 |
58 |
Kragenwar-3044 |
self.settings.traits["ExposedThroat"] = { id = 1, name = 'Exposed Throat', active = false }; |
445 |
|
Kragenwar-3044 |
self.settings.traits["FlashingBlades"] = { id = 2, name = 'Flashing Blades', active = false }; |
446 |
|
Kragenwar-3044 |
self.settings.traits["HonedWit"] = { id = 3, name = 'Honed Wit', active = false }; |
447 |
127 |
Valdacil-446 |
self.settings.traits["PracticedBluff"] = { id = 4, name = 'Practiced Bluff', active = false }; |
448 |
|
Valdacil-446 |
self.settings.traits["LittleAnnoyances"] = { id = 5, name = 'Little Annoyances', active = false }; |
449 |
|
Valdacil-446 |
self.settings.traits["DealingsDone"] = { id = 6, name = 'Dealings Done', active = false }; |
450 |
53 |
Kragenwar-3044 |
|
451 |
58 |
Kragenwar-3044 |
self.settings.features["PoisonIndicator"] = { id = 1, name = 'Poison Indicator', active = true }; |
452 |
118 |
Kragenwar-3044 |
self.settings.features["StancePriority"] = { id = 2, name = 'Stance Priority', active = true }; |
453 |
58 |
Kragenwar-3044 |
|
454 |
118 |
Kragenwar-3044 |
self.settings.defaults["PrimaryStance"] = { id = 1, name = 'Primary Stance', selected = 1, list = { "Mischief", "Quiet Knife", "Gambler" } }; |
455 |
|
Kragenwar-3044 |
self.settings.defaults["SecondaryStance"] = { id = 2, name = 'Secondary Stance', selected = 2, list = { "Mischief", "Quiet Knife", "Gambler" } }; |
456 |
|
Kragenwar-3044 |
self.settings.defaults["StanceActive"] = { id = 3, name = 'Stance Active', selected = 2, list = { "None", "Dim", "Hide" } }; |
457 |
|
Kragenwar-3044 |
|
458 |
58 |
Kragenwar-3044 |
self.settings.quickslots["Marbles"] = {id = 1, name = "Marbles", active = false, type = 0, data = ""}; |
459 |
|
Kragenwar-3044 |
self.settings.quickslots["Caltrops"] = {id = 2, name = "Caltops",active = false, type = 0, data = ""}; |
460 |
|
Kragenwar-3044 |
self.settings.quickslots["StunDust"] = {id = 3, name = "StunDust", active = false, type = 0, data = ""}; |
461 |
|
Kragenwar-3044 |
self.settings.quickslots["Knives"] = {id = 4, name = "Knives/Hatchets", active = false, type = 0, data = ""}; |
462 |
6 |
Kragenwar-3044 |
|
463 |
|
Kragenwar-3044 |
end |
464 |
|
Kragenwar-3044 |
|
465 |
48 |
Kragenwar-3044 |
-- UPDATE SETTINGS |
466 |
6 |
Kragenwar-3044 |
function BurglarBars:UpdateSettings() |
467 |
49 |
Kragenwar-3044 |
if (settings.vers < 3.20) then |
468 |
115 |
Kragenwar-3044 |
--self.settings.quickslots.knives = {active = false, type = 0, data = ""}; |
469 |
49 |
Kragenwar-3044 |
end |
470 |
113 |
Kragenwar-3044 |
if (settings.vers < 4.00) then |
471 |
56 |
Kragenwar-3044 |
self:DefaultSettings(); |
472 |
|
Kragenwar-3044 |
end |
473 |
109 |
Kragenwar-3044 |
if (settings.vers < 4.1) then |
474 |
|
Kragenwar-3044 |
if (settings.skilldata["Mischief"] ~= nil) then |
475 |
|
Kragenwar-3044 |
settings.multidata["Stances"] = { }; |
476 |
|
Kragenwar-3044 |
settings.multidata["Stances"].parent = settings.skilldata["Mischief"].parent; |
477 |
|
Kragenwar-3044 |
settings.multidata["Stances"].pos = { }; |
478 |
|
Kragenwar-3044 |
settings.multidata["Stances"].pos[1] = settings.skilldata["Mischief"].pos[1]; |
479 |
|
Kragenwar-3044 |
settings.multidata["Stances"].pos[2] = settings.skilldata["Mischief"].pos[2]; |
480 |
|
Kragenwar-3044 |
settings.multidata["Stances"].current = { 1 }; |
481 |
|
Kragenwar-3044 |
settings.multidata["Stances"].lock = false; |
482 |
|
Kragenwar-3044 |
settings.multidata["Stances"].layer = 1; |
483 |
|
Kragenwar-3044 |
|
484 |
|
Kragenwar-3044 |
settings.skilldata["Mischief"] = nil; |
485 |
|
Kragenwar-3044 |
end |
486 |
|
Kragenwar-3044 |
|
487 |
|
Kragenwar-3044 |
settings.skilldata["SafeFall"] = {parent = nil, pos = {1,1}}; |
488 |
|
Kragenwar-3044 |
end |
489 |
56 |
Kragenwar-3044 |
|
490 |
118 |
Kragenwar-3044 |
if (settings.vers < 4.13) then |
491 |
|
Kragenwar-3044 |
self.settings.features["StancePriority"] = { id = 2, name = 'Stance Priority', active = true }; |
492 |
|
Kragenwar-3044 |
|
493 |
|
Kragenwar-3044 |
self.settings.defaults["PrimaryStance"] = { id = 1, name = 'Primary Stance', selected = 1, list = { "Mischief", "Quiet Knife", "Gambler" } }; |
494 |
|
Kragenwar-3044 |
self.settings.defaults["SecondaryStance"] = { id = 2, name = 'Secondary Stance', selected = 2, list = { "Mischief", "Quiet Knife", "Gambler" } }; |
495 |
|
Kragenwar-3044 |
self.settings.defaults["StanceActive"] = { id = 3, name = 'Stance Active', selected = 2, list = { "None", "Dim", "Hide" } }; |
496 |
|
Kragenwar-3044 |
end |
497 |
|
Kragenwar-3044 |
|
498 |
127 |
Valdacil-446 |
if (settings.vers < 5.00) then |
499 |
|
Valdacil-446 |
self.settings.traits["PracticedBluff"] = { id = 4, name = 'Practiced Bluff', active = false }; |
500 |
|
Valdacil-446 |
self.settings.traits["LittleAnnoyances"] = { id = 5, name = 'Little Annoyances', active = false }; |
501 |
|
Valdacil-446 |
self.settings.traits["DealingsDone"] = { id = 6, name = 'Dealings Done', active = false }; |
502 |
|
Valdacil-446 |
settings.skilldata["SeizeInitiative"] = nil; |
503 |
|
Valdacil-446 |
end |
504 |
|
Valdacil-446 |
|
505 |
6 |
Kragenwar-3044 |
settings.vers = vars.vers; |
506 |
|
Kragenwar-3044 |
|
507 |
|
Kragenwar-3044 |
end |
508 |
|
Kragenwar-3044 |
|
509 |
48 |
Kragenwar-3044 |
-- REFRESH SKILLS AND BARS |
510 |
6 |
Kragenwar-3044 |
function BurglarBars:Refresh() |
511 |
|
Kragenwar-3044 |
|
512 |
48 |
Kragenwar-3044 |
-- GENERIC REFRESH (Required for all classes) |
513 |
|
Kragenwar-3044 |
self:RefreshBars(); |
514 |
6 |
Kragenwar-3044 |
|
515 |
48 |
Kragenwar-3044 |
-- REDEFINE EFFECTLIST IN CASE OF LANGUAGE CHANGE |
516 |
|
Kragenwar-3044 |
self.DefineEffectList(); |
517 |
|
Kragenwar-3044 |
|
518 |
|
Kragenwar-3044 |
-- CLASS SPECIFIC REFRESH |
519 |
|
Kragenwar-3044 |
-- Setup Features |
520 |
58 |
Kragenwar-3044 |
self.skills["ExposedThroat"]:SetActive(self.effectlist["DoubleEdged"]:GetState() and self.settings.traits["ExposedThroat"].active); |
521 |
|
Kragenwar-3044 |
self.skills["FlashingBlades"]:SetActive(self.effectlist["DoubleEdged"]:GetState() and self.settings.traits["FlashingBlades"].active); |
522 |
|
Kragenwar-3044 |
self.skills["CleverRetort"]:SetActive(self.settings.traits["HonedWit"].active or vars.classattr:GetStance() == 1); |
523 |
127 |
Valdacil-446 |
self.skills["LuckyStrike"]:SetActive(self.settings.traits["DealingsDone"].active); |
524 |
|
Valdacil-446 |
self.skills["FeintAttack"]:SetActive(self.settings.traits["PracticedBluff"].active and self.stance ~= 1); |
525 |
|
Valdacil-446 |
self.skills["SmallSnag"]:SetActive(self.settings.traits["LittleAnnoyances"].active); |
526 |
6 |
Kragenwar-3044 |
|
527 |
48 |
Kragenwar-3044 |
-- Set Poison Indicator |
528 |
127 |
Valdacil-446 |
if (settings.skilldata["CurePoison"].parent ~= nil and vars.playerlevel >= self.skills["CurePoison"].level[1] and self.settings.features["PoisonIndicator"].active and self.poison > 0) then |
529 |
|
Valdacil-446 |
if (self.settings.userconf[settings.skilldata["CurePoison"].parent].active) then |
530 |
|
Valdacil-446 |
self.skills["CurePoison"]:SetColor("green"); |
531 |
|
Valdacil-446 |
end |
532 |
6 |
Kragenwar-3044 |
else |
533 |
|
Kragenwar-3044 |
self.skills["CurePoison"]:SetColor(); |
534 |
|
Kragenwar-3044 |
end |
535 |
127 |
Valdacil-446 |
|
536 |
48 |
Kragenwar-3044 |
-- Refresh States |
537 |
120 |
Kragenwar-3044 |
self:StanceChange(); |
538 |
6 |
Kragenwar-3044 |
self:CombatChange(vars.player:IsInCombat()); |
539 |
|
Kragenwar-3044 |
|
540 |
58 |
Kragenwar-3044 |
--Turbine.Shell.WriteLine("KragenBars: Burglar Bars refresh completed successfully."); |
541 |
6 |
Kragenwar-3044 |
|
542 |
|
Kragenwar-3044 |
end |