Nenue@51
|
1 --- ${PACKAGE_NAME}
|
Nenue@51
|
2 -- @file-author@
|
Nenue@51
|
3 -- @project-revision@ @project-hash@
|
Nenue@51
|
4 -- @file-revision@ @file-hash@
|
Nenue@51
|
5 -- Created: 3/22/2016 3:14 PM
|
Nenue@51
|
6 local _, A = ...
|
Nenue@51
|
7 local B = A.frame
|
Nenue@51
|
8 local Aura = B:RegisterModule('BuffFrame')
|
Nenue@51
|
9 -----------------------
|
Nenue@51
|
10 -- Buff frames metadata
|
Nenue@51
|
11 -----------------------
|
Nenue@51
|
12 local legendAlpha = 0.5
|
Nenue@51
|
13 Aura.guides = {}
|
Nenue@51
|
14 Aura.decors = {}
|
Nenue@51
|
15 Aura.anchors = {}
|
Nenue@51
|
16 Aura.drawn = {}
|
Nenue@51
|
17 Aura.positioned = {}
|
Nenue@51
|
18
|
Nenue@51
|
19 Aura.displays = {}
|
Nenue@51
|
20 Aura.displays.BuffButton = {
|
Nenue@51
|
21 legendColor = {0, 1, 0, legendAlpha},
|
Nenue@51
|
22 maxIcons = BUFF_MAX_DISPLAY,
|
Nenue@51
|
23 actualIcons = function () return _G.BUFF_ACTUAL_DISPLAY end,
|
Nenue@51
|
24 buffName = 'BuffButton',
|
Nenue@51
|
25 drawCount = {},
|
Nenue@51
|
26 filters = 'HELPFUL',
|
Nenue@51
|
27 anchorTemplate = 'VeneerAnchorTemplate',
|
Nenue@51
|
28 }
|
Nenue@51
|
29 Aura.displays.DebuffButton = {
|
Nenue@51
|
30 legendColor = {1, 0, 0, legendAlpha},
|
Nenue@51
|
31 maxIcons = DEBUFF_MAX_DISPLAY,
|
Nenue@51
|
32 actualIcons = function () return _G.DEBUFF_ACTUAL_DISPLAY end,
|
Nenue@51
|
33 buffName = 'DebuffButton',
|
Nenue@51
|
34 drawCount = {},
|
Nenue@51
|
35 filters = 'HARMFUL',
|
Nenue@51
|
36 anchorTemplate = 'VeneerAnchorTemplate',
|
Nenue@51
|
37 }
|
Nenue@51
|
38 Aura.displays.TempEnchant = {
|
Nenue@51
|
39 legendColor = {1, 0, 0.5, legendAlpha},
|
Nenue@51
|
40 maxIcons = NUM_TEMP_ENCHANT_FRAMES,
|
Nenue@51
|
41 actualIcons = function () return BuffFrame.numEnchants end,
|
Nenue@51
|
42 buffName = 'TempEnchant',
|
Nenue@51
|
43 drawCount = {},
|
Nenue@51
|
44 anchorTemplate = 'VeneerAnchorTemplate',
|
Nenue@51
|
45 }
|
Nenue@51
|
46
|
Nenue@51
|
47 -----------------------
|
Nenue@51
|
48 -- RaidBuff visual args
|
Nenue@51
|
49 -----------------------
|
Nenue@51
|
50 Aura.BuffStyles = {
|
Nenue@51
|
51 ["active"] = {
|
Nenue@51
|
52 SetDesaturated = false,
|
Nenue@51
|
53 Color = {1, 1, 1, 1},
|
Nenue@51
|
54 SetBlendMode = 'BLEND',
|
Nenue@51
|
55 TextColor = {1,1,1,1},
|
Nenue@51
|
56 },
|
Nenue@51
|
57 ["missing"] = {
|
Nenue@51
|
58 SetDesaturated = false,
|
Nenue@51
|
59 Color = {1, 0, 0, 0.5},
|
Nenue@51
|
60 SetBlendMode = 'ADD',
|
Nenue@51
|
61 TextColor = {1,0,0,1},
|
Nenue@51
|
62 },
|
Nenue@51
|
63 ["available"] = {
|
Nenue@51
|
64 SetDesaturated = true,
|
Nenue@51
|
65 Color = {0.35, 1, 0.35, 0.5},
|
Nenue@51
|
66 SetBlendMode = 'ADD',
|
Nenue@51
|
67 TextColor = {1, 1, 0, 1},
|
Nenue@51
|
68 },
|
Nenue@51
|
69 }
|
Nenue@51
|
70
|
Nenue@51
|
71 --- RaidBuff availability criteria
|
Nenue@51
|
72 -- @field spellID - UnitAura() == true
|
Nenue@51
|
73 -- @field spec - test for spec choice
|
Nenue@51
|
74 -- @field auraType - UnitAura() == true, and no other tests of the same value have returned true prior
|
Nenue@51
|
75 -- @field talent - test for talent selection
|
Nenue@51
|
76 -- @field petFamily - test pet family
|
Nenue@51
|
77 -- @field [true] - passive group aura
|
Nenue@51
|
78 Aura.ClassRaidBuffs = {
|
Nenue@51
|
79 -- stats
|
Nenue@51
|
80 [1] = {
|
Nenue@51
|
81 ['HUNTER'] = {
|
Nenue@51
|
82 {talent = {155228}, spellID = 160206, spellName = 'Lone Wolf: Power of the Primates', auraType = 'lonewolf'},
|
Nenue@51
|
83 {petFamily = 'Dog'}, -- active pet family
|
Nenue@51
|
84 {petFamily = 'Gorilla'},
|
Nenue@51
|
85 {petFamily = 'Shale Spider'},
|
Nenue@51
|
86 {petFamily = 'Worm'},
|
Nenue@51
|
87 },
|
Nenue@51
|
88 ['DRUID'] = {
|
Nenue@51
|
89 {spellID = 1126, spellName = 'Mark of the Wild'},
|
Nenue@51
|
90 },
|
Nenue@51
|
91 ['MONK'] = {
|
Nenue@51
|
92 {spellID = 115921, spellName = 'Legacy of the Emperor'},
|
Nenue@51
|
93 {spellID = 116781, spellName = 'Legacy of the White Tiger'} -- windwalker, replaces emperor internally
|
Nenue@51
|
94 },
|
Nenue@51
|
95 ['PALADIN'] = {spellID = 20217, spellName = 'Blessing of Kings', auraType = 'blessing'},
|
Nenue@51
|
96 },
|
Nenue@51
|
97
|
Nenue@51
|
98 -- stamina
|
Nenue@51
|
99 [2] = {
|
Nenue@51
|
100 ['HUNTER'] = {
|
Nenue@51
|
101 {talent = {155228}, spellID = 160199, spellName = 'Lone Wolf: Fortitude of the Bear', auraType = 'lonewolf'},
|
Nenue@51
|
102 {petFamily = 'Bear'}, -- active pet family
|
Nenue@51
|
103 {petFamily = 'Goat'},
|
Nenue@51
|
104 {petFamily = 'Rylak'},
|
Nenue@51
|
105 {petFamily = 'Silithid'},
|
Nenue@51
|
106 },
|
Nenue@51
|
107 ['PRIEST'] = {
|
Nenue@51
|
108 {spellID = 21562, 'Power Word: Fortitude'}
|
Nenue@51
|
109 },
|
Nenue@51
|
110 ['WARRIOR'] = {
|
Nenue@51
|
111 {spellID = 469, spellName = 'Commanding Shout', auraType = 'shout'}
|
Nenue@51
|
112 },
|
Nenue@51
|
113 ['WARLOCK'] = {
|
Nenue@51
|
114 {true}
|
Nenue@51
|
115 }
|
Nenue@51
|
116 },
|
Nenue@51
|
117
|
Nenue@51
|
118 -- attack power
|
Nenue@51
|
119 [3] = {
|
Nenue@51
|
120 ['HUNTER'] = {
|
Nenue@51
|
121 {true},
|
Nenue@51
|
122 },
|
Nenue@51
|
123 ['DEATHKNIGHT'] = {
|
Nenue@51
|
124 {spec = 2},
|
Nenue@51
|
125 {spec = 3},
|
Nenue@51
|
126 },
|
Nenue@51
|
127 ['WARRIOR'] = {
|
Nenue@51
|
128 {spellName = 'Battle Shout', auraType = 'shout'}
|
Nenue@51
|
129 }
|
Nenue@51
|
130 },
|
Nenue@51
|
131
|
Nenue@51
|
132 -- HASTE
|
Nenue@51
|
133 [4] = {
|
Nenue@51
|
134 ['HUNTER'] = {
|
Nenue@51
|
135 {talent = {155228}, spellID = 160203, spellName = 'Lone Wolf: Haste of the Hyena', auraType = 'lonewolf'},
|
Nenue@51
|
136 {petFamily = 'Hyena'}, -- active pet family
|
Nenue@51
|
137 {petFamily = 'Sporebat'},
|
Nenue@51
|
138 {petFamily = 'Rylak'},
|
Nenue@51
|
139 {petFamily = 'Wasp'},
|
Nenue@51
|
140 },
|
Nenue@51
|
141 ['DEATHKNIGHT'] = {
|
Nenue@51
|
142 {spec = 2}, -- unholy aura
|
Nenue@51
|
143 {spec = 3},
|
Nenue@51
|
144 },
|
Nenue@51
|
145 ['PRIEST'] = {
|
Nenue@51
|
146 {spec = 3}, -- mind quickening
|
Nenue@51
|
147 },
|
Nenue@51
|
148 ['ROGUE'] = {
|
Nenue@51
|
149 true -- swiftblade's
|
Nenue@51
|
150 },
|
Nenue@51
|
151 ['SHAMAN'] = {
|
Nenue@51
|
152 true -- grace of air
|
Nenue@51
|
153 },
|
Nenue@51
|
154 },
|
Nenue@51
|
155
|
Nenue@51
|
156 -- SPELL POWER
|
Nenue@51
|
157 [5] = {
|
Nenue@51
|
158 ['HUNTER'] = {
|
Nenue@51
|
159 {talent = {155228}, spellID = 160205, spellName = 'Lone Wolf: Wisdom of the Serpent', auraType = 'lonewolf'},
|
Nenue@51
|
160 {petFamily = 'Waterstrider'}, -- active pet family
|
Nenue@51
|
161 {petFamily = 'Serpent'},
|
Nenue@51
|
162 {petFamily = 'Silithid'},
|
Nenue@51
|
163 },
|
Nenue@51
|
164 ['MAGE'] = {
|
Nenue@51
|
165 {spellID = 1459, spellName = 'Arcane Brilliance'}, -- arcane brilliance
|
Nenue@51
|
166 {spellID = 61316, spellName = 'Dalaran Brilliance'}, -- dalaran brilliance
|
Nenue@51
|
167 },
|
Nenue@51
|
168 ['WARLOCK'] = {
|
Nenue@51
|
169 {spellID = 109773,spellName = 'Dark Intent' }
|
Nenue@51
|
170 },
|
Nenue@51
|
171 },
|
Nenue@51
|
172
|
Nenue@51
|
173 -- CRITICAL STRIKE
|
Nenue@51
|
174 [6] = {
|
Nenue@51
|
175 ['HUNTER'] = {
|
Nenue@51
|
176 {talent = {155228}, spellID = 160200, spellName = 'Lone Wolf: Ferocity of the Raptor', auraType = 'lonewolf'},
|
Nenue@51
|
177 {petFamily = 'Devilsaur'}, -- active pet family
|
Nenue@51
|
178 {petFamily = 'Quilen'},
|
Nenue@51
|
179 {petFamily = 'Raptor'},
|
Nenue@51
|
180 {petFamily = 'Shale Spider'},
|
Nenue@51
|
181 {petFamily = 'Waterstrider'},
|
Nenue@51
|
182 {petFamily = 'Wolf'},
|
Nenue@51
|
183 },
|
Nenue@51
|
184 ['DRUID'] = {
|
Nenue@51
|
185 {spec = 2, spellID = 17007, auraType = 'druidform'}
|
Nenue@51
|
186 },
|
Nenue@51
|
187 ['MAGE'] = {
|
Nenue@51
|
188 {spellID = 1459, spellName = 'Arcane Brilliance'}, -- arcane brilliance
|
Nenue@51
|
189 {spellID = 61316, spellName = 'Dalaran Brilliance'}, -- dalaran brilliance
|
Nenue@51
|
190 },
|
Nenue@51
|
191 ['MONK'] = {
|
Nenue@51
|
192 {spellID = 116781, spellName = 'Legacy of the White Tiger', spec = 2} -- windwalker
|
Nenue@51
|
193 }
|
Nenue@51
|
194 },
|
Nenue@51
|
195
|
Nenue@51
|
196 -- MASTERY
|
Nenue@51
|
197 [7] = {
|
Nenue@51
|
198 ['HUNTER'] = {
|
Nenue@51
|
199 {talent = {155228}, spellID = 160198, spellName = 'Lone Wolf: Grace of the Cat', auraType = 'lonewolf'},
|
Nenue@51
|
200 {petFamily = 'Cat'}, -- active pet family
|
Nenue@51
|
201 {petFamily = 'Hydra'},
|
Nenue@51
|
202 {petFamily = 'Spirit Beast'},
|
Nenue@51
|
203 {petFamily = 'Tallstrider'},
|
Nenue@51
|
204 },
|
Nenue@51
|
205 ['DEATHKNIGHT'] = {
|
Nenue@51
|
206 {spec = 1}
|
Nenue@51
|
207 },
|
Nenue@51
|
208 ['DRUID'] = {
|
Nenue@51
|
209 {spec = 1, spellID = 24907, auraType = 'druidform'},
|
Nenue@51
|
210 },
|
Nenue@51
|
211 ['PALADIN'] = {
|
Nenue@51
|
212 {spec = 1, spellID = 19740, spellName = 'Blessing of Might', auraType = 'blessing'}
|
Nenue@51
|
213 },
|
Nenue@51
|
214 ['SHAMAN'] = {true},
|
Nenue@51
|
215 },
|
Nenue@51
|
216
|
Nenue@51
|
217 -- MULTISTRIKE
|
Nenue@51
|
218 [8] = {
|
Nenue@51
|
219 ['HUNTER'] = {
|
Nenue@51
|
220 {talent = {155228}, spellID = 172968, spellName = 'Lone Wolf: Quickness of the Dragonhawk', auraType = 'lonewolf'},
|
Nenue@51
|
221 {petFamily = 'Bat'}, -- active pet family
|
Nenue@51
|
222 {petFamily = 'Clefthoof'},
|
Nenue@51
|
223 {petFamily = 'Corehound'},
|
Nenue@51
|
224 {petFamily = 'Dragonhawk'},
|
Nenue@51
|
225 {petFamily = 'Wind Serpent'},
|
Nenue@51
|
226 },
|
Nenue@51
|
227 ['MONK'] = {
|
Nenue@51
|
228 {spec = 2 }
|
Nenue@51
|
229 }, -- Windflurry,
|
Nenue@51
|
230 ['PRIEST'] = {
|
Nenue@51
|
231 {spec = 3 }
|
Nenue@51
|
232 }, -- quickening,
|
Nenue@51
|
233 ['ROGUE'] = {true}, -- swiftblade's
|
Nenue@51
|
234 ['WARLOCK'] = {
|
Nenue@51
|
235 {spellID = 109773,spellName = 'Dark Intent' }
|
Nenue@51
|
236 },
|
Nenue@51
|
237 },
|
Nenue@51
|
238
|
Nenue@51
|
239 -- VERSATILITY
|
Nenue@51
|
240 [9] = {
|
Nenue@51
|
241 ['HUNTER'] = {
|
Nenue@51
|
242 {talent = {155228}, spellID = 172967, spellName = 'Lone Wolf: Versatility of the Ravager', auraType = 'lonewolf'},
|
Nenue@51
|
243 {petFamily = 'Ravager'}, -- active pet family
|
Nenue@51
|
244 {petFamily = 'Boar'},
|
Nenue@51
|
245 {petFamily = 'Porcupine'},
|
Nenue@51
|
246 {petFamily = 'Clefthoof'},
|
Nenue@51
|
247 {petFamily = 'Stag'},
|
Nenue@51
|
248 {petFamily = 'Worm'},
|
Nenue@51
|
249 {petFamily = 'Bird of Prey'},
|
Nenue@51
|
250 },
|
Nenue@51
|
251 ['DEATH KNIGHT'] = {
|
Nenue@51
|
252 {spec = 2}, -- unholy aura
|
Nenue@51
|
253 {spec = 3},
|
Nenue@51
|
254 },
|
Nenue@51
|
255 ['DRUID'] = {
|
Nenue@51
|
256 {spellID = 1126, spellName = 'Mark of the Wild'},
|
Nenue@51
|
257 },
|
Nenue@51
|
258 ['PALADIN'] = {
|
Nenue@51
|
259 {spec = 2}, -- retribution
|
Nenue@51
|
260 },
|
Nenue@51
|
261 ['WARRIOR'] = {
|
Nenue@51
|
262 {spec = 2}, -- arms or fury
|
Nenue@51
|
263 {spec = 3},
|
Nenue@51
|
264 },
|
Nenue@51
|
265 }
|
Nenue@51
|
266 }
|
Nenue@51
|
267
|
Nenue@51
|
268 -------------------------
|
Nenue@51
|
269 -- Default config values
|
Nenue@51
|
270 -------------------------
|
Nenue@51
|
271 Aura.defaults = {
|
Nenue@51
|
272 -- defaulted to on for first-time setup
|
Nenue@51
|
273 ConfigMode = true,
|
Nenue@51
|
274 GuidesMode = true,
|
Nenue@51
|
275
|
Nenue@51
|
276 BuffButtonAnchor = {'TOPRIGHT', 'UIParent', 'TOPRIGHT', -300, -5},
|
Nenue@51
|
277 BuffButtonMax = 24,
|
Nenue@51
|
278 BuffButtonPerRow = 10,
|
Nenue@51
|
279 BuffButtonSize = 50,
|
Nenue@51
|
280 BuffButtonSpacing = 4,
|
Nenue@51
|
281 BuffButtonZoom = 15,
|
Nenue@51
|
282 BuffButtonVertexColor = {},
|
Nenue@51
|
283 BuffButtonPoint = {'TOPRIGHT', 'TOPRIGHT'},
|
Nenue@51
|
284 BuffButtonDurationSize = 16,
|
Nenue@51
|
285 BuffButtonDurationPoint = {'BOTTOM', 'BOTTOM', 0, -1},
|
Nenue@51
|
286 BuffButtonCountSize = 18,
|
Nenue@51
|
287 BuffButtonCountPoint = {'TOPRIGHT', 'TOPRIGHT', -3, -3},
|
Nenue@51
|
288 BuffButtonRelativeX = -1,
|
Nenue@51
|
289 BuffButtonRelativeY = -1,
|
Nenue@51
|
290
|
Nenue@51
|
291 BuffButtonColor = {1, 1, 1, 1},
|
Nenue@51
|
292 BuffButtonPlayerColor = {1,1,1,1},
|
Nenue@51
|
293 BuffButtonRaidColor = {0.25,1,0.25,1},
|
Nenue@51
|
294 BuffButtonBossColor = {1,0.5,0,1},
|
Nenue@51
|
295 BuffButtonBorder = 1,
|
Nenue@51
|
296
|
Nenue@51
|
297 BuffButtonWarningFade = true,
|
Nenue@51
|
298 BuffButtonShowSelfCast = true,
|
Nenue@51
|
299
|
Nenue@51
|
300 DebuffButtonAnchor = {'TOPRIGHT', 'UIParent', 'TOPRIGHT', -300, -200},
|
Nenue@51
|
301 DebuffButtonMax = 12,
|
Nenue@51
|
302 DebuffButtonPerRow = 10,
|
Nenue@51
|
303 DebuffButtonSize = 50,
|
Nenue@51
|
304 DebuffButtonSpacing = 4,
|
Nenue@51
|
305 DebuffButtonDurationSize = 16,
|
Nenue@51
|
306 DebuffButtonZoom = 15,
|
Nenue@51
|
307 DebuffButtonVertexColor = {},
|
Nenue@51
|
308 DebuffButtonPoint = {'TOPRIGHT','TOPRIGHT'},
|
Nenue@51
|
309 DebuffButtonRelativeX = -1,
|
Nenue@51
|
310 DebuffButtonRelativeY = -1,
|
Nenue@51
|
311
|
Nenue@51
|
312
|
Nenue@51
|
313 TempEnchantAnchor = {'TOPRIGHT', 'UIParent', 'TOPRIGHT', -200, -300},
|
Nenue@51
|
314 TempEnchantMax = 2,
|
Nenue@51
|
315 TempEnchantPerRow = 10,
|
Nenue@51
|
316 TempEnchantSize = 50,
|
Nenue@51
|
317 TempEnchantSpacing = 4,
|
Nenue@51
|
318 TempEnchantDurationSize = 16,
|
Nenue@51
|
319 TempEnchantZoom = 15,
|
Nenue@51
|
320 TempEnchantVertexColor = {},
|
Nenue@51
|
321 TempEnchantPoint = {'TOPRIGHT', 'TOPRIGHT'},
|
Nenue@51
|
322 TempEnchantRelativeX = -1,
|
Nenue@51
|
323 TempEnchantRelativeY = -1,
|
Nenue@51
|
324 TempEnchantColor = {1,0,0.5,1},
|
Nenue@51
|
325
|
Nenue@51
|
326 ConsolidatedBuffAnchor = {'TOPRIGHT', 'UIParent', 'TOPRIGHT', 0, 0},
|
Nenue@51
|
327 ConsolidatedBuffIcon = false,
|
Nenue@51
|
328 ConsolidatedBuffMax = 9,
|
Nenue@51
|
329 ConsolidatedBuffSize = 16,
|
Nenue@51
|
330 ConsolidatedBuffParent = 'BuffButton',
|
Nenue@51
|
331 ConsolidatedBuffPosition = 1,
|
Nenue@51
|
332 ConsolidatedBuffSpacing = 1,
|
Nenue@51
|
333 ConsolidatedBuffBorder = 0,
|
Nenue@51
|
334 ConsolidatedBuffPerRow = 3,
|
Nenue@51
|
335 ConsolidatedBuffPoint = {'TOPRIGHT', 'TOPRIGHT'},
|
Nenue@51
|
336 ConsolidatedBuffRelativeX = -1,
|
Nenue@51
|
337 ConsolidatedBuffRelativeY = -1,
|
Nenue@51
|
338 ConsolidatedBuffDurationSize = 0,
|
Nenue@51
|
339 ConsolidatedBuffDurationPoint = {'BOTTOM', 'BOTTOM', 0, 0},
|
Nenue@51
|
340 ConsolidatedBuffCountPoint = {'BOTTOM', 'BOTTOM', 0, 0},
|
Nenue@51
|
341
|
Nenue@51
|
342 RaidShowMissing = true,
|
Nenue@51
|
343
|
Nenue@51
|
344 } |