vanilla-wow-addons – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | --[[ |
2 | DiscoDice by Discoepfeand of Sargeras |
||
3 | |||
4 | The mod is designed to make it easier to manage Slice and Dice |
||
5 | |||
6 | Many Thanks goes to the creator of stunwatch for great examples |
||
7 | |||
8 | in his code which I could use in here. |
||
9 | |||
10 | "get Jiggy" |
||
11 | ]] |
||
12 | |||
13 | -- Constants |
||
14 | DISCODICE_MAX_COMBO_POINTS = MAX_COMBO_POINTS; |
||
15 | |||
16 | function DiscoDice_Initialize() |
||
17 | this:RegisterEvent("CHAT_MSG_WHISPER"); |
||
18 | this:RegisterEvent("CHAT_MSG_SPELL_PERIODIC_SELF_BUFFS") |
||
19 | this:RegisterEvent("CHAT_MSG_SPELL_SELF_DAMAGE") |
||
20 | this:RegisterEvent("PLAYER_COMBO_POINTS"); |
||
21 | this:RegisterEvent("SPELLCAST_STOP") |
||
22 | this:RegisterEvent("SPELLCAST_START") |
||
23 | DiscoDice_StartupMessage() |
||
24 | DiscoDice.SnDEnd = 0; |
||
25 | DiscoDice.SnDEndRupture = 0; |
||
26 | DiscoDice.SnDEndEA = 0; |
||
27 | DiscoDice.itsago = 0; |
||
28 | DiscoDice.itsagoRupture = 0; |
||
29 | DiscoDice.itsagoEA = 0; |
||
30 | DiscoDice.ShowStatus = 3; |
||
31 | |||
32 | maxtime = GetTime() |
||
33 | -- oldichi = CastSpellByName |
||
34 | -- CastSpellByName = MyMod_newCastSpellByName |
||
35 | |||
36 | if DiscoDice_var == nil then |
||
37 | DiscoDice_var = 1.0 |
||
38 | end |
||
39 | |||
40 | if DiscoDice_ShowType == nil then |
||
41 | DiscoDice_ShowType = "normal" |
||
42 | end |
||
43 | |||
44 | if DiscoDice_State == nil then |
||
45 | DiscoDice_state = "on" |
||
46 | end |
||
47 | |||
48 | if DiscoDice_displaytype == nil then |
||
49 | DiscoDice_Displaytype = 2 |
||
50 | end |
||
51 | |||
52 | if DiscoDice_Scale == nil then |
||
53 | DiscoDice_Scale = 1 |
||
54 | end |
||
55 | |||
56 | if DiscoDice.EndMod == nil then |
||
57 | DiscoDice.EndMod = 0 |
||
58 | end |
||
59 | |||
60 | if DiscoDice.EndModRupture == nil then |
||
61 | DiscoDice.EndModRupture = 0 |
||
62 | end |
||
63 | |||
64 | if DiscoDice.EndModEA == nil then |
||
65 | DiscoDice.EndModEA = 0 |
||
66 | end |
||
67 | |||
68 | if DiscoDice_EAONOFF == nil then |
||
69 | DiscoDice_EAONOFF = "off" |
||
70 | end |
||
71 | |||
72 | if DiscoDice_RuptureONOFF == nil then |
||
73 | DiscoDice_RuptureONOFF = "off" |
||
74 | end |
||
75 | |||
76 | DiscoDice.CurrCombo = 0 |
||
77 | |||
78 | DiscoDice.SnDEnd = GetTime() |
||
79 | DiscoDice.SnDEndRupture = GetTime() |
||
80 | DiscoDice.SnDEndEA = GetTime() |
||
81 | |||
82 | DiscoDice:SetScale(DiscoDice_Scale * UIParent:GetScale()); |
||
83 | DEFAULT_CHAT_FRAME:AddMessage("blah " .. DiscoDice.EndMod .. "DiscoDice is using a ".. DiscoDice_var .. " time multiplier due to talents. It is currently turned " .. DiscoDice_state .. " and using a " .. DiscoDice_Scale .. " scaling factor.") |
||
84 | |||
85 | SlashCmdList["DISCODICE"] = DiscoDice_command; |
||
86 | SLASH_DISCODICE1 = "/discodice"; |
||
87 | SLASH_DISCODICE2 = "/ddice"; |
||
88 | |||
89 | end |
||
90 | |||
91 | function DiscoDice_command(myArg1) |
||
92 | |||
93 | if (myArg1 == "on") then |
||
94 | DiscoDice_state = "on" |
||
95 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is now on") |
||
96 | elseif (myArg1 == "off") then |
||
97 | DiscoDice_state = "off" |
||
98 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is now off.") |
||
99 | elseif (myArg1 == "hide") then |
||
100 | DiscoDiceBar1:Hide() |
||
101 | DiscoDiceBar2:Hide() |
||
102 | DiscoDiceBar3:Hide() |
||
103 | DiscoDice.ShowStatus = 3; |
||
104 | DiscoDice:EnableMouse(0) |
||
105 | elseif myArg1 == "status" then |
||
106 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is using a ".. DiscoDice_var .. " time multiplier due to talents. It is currently turned " .. DiscoDice_state .. " and using a " .. DiscoDice_Scale .. " scaling factor. Expose Armor bar is " .. DiscoDice_EAONOFF .. " and Rupture bar is " .. DiscoDice_RuptureONOFF ..". SnD Show Type is " .. DiscoDice_ShowType ..".") |
||
107 | elseif (myArg1 == "show") then |
||
108 | DiscoDice_ShowBars() |
||
109 | elseif strfind(myArg1, "rupture") then |
||
110 | local DiscoDiceArg = string.find(myArg1, " "); |
||
111 | DiscoDice_RuptureONOFF = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)); |
||
112 | DEFAULT_CHAT_FRAME:AddMessage("Rupture bar is now" .. DiscoDice_RuptureONOFF .. ".") |
||
113 | elseif strfind(myArg1, "expose") then |
||
114 | local DiscoDiceArg = string.find(myArg1, " "); |
||
115 | DiscoDice_EAONOFF = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)); |
||
116 | DEFAULT_CHAT_FRAME:AddMessage("Expose Armor bar is now" .. DiscoDice_EAONOFF .. ".") |
||
117 | elseif strfind(myArg1, "display") then |
||
118 | local DiscoDiceArg = string.find(myArg1, " "); |
||
119 | DiscoDice_Displaytype = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)); |
||
120 | elseif myArg1 == "doRupture" then |
||
121 | DiscoDiceBar2_Rupture() |
||
122 | elseif myArg1 == "doEA" then |
||
123 | DiscoDiceBar3_EA() |
||
124 | elseif strfind(myArg1, "talent") then |
||
125 | local DiscoDiceArg = string.find(myArg1, " "); |
||
126 | DiscoDice.Talent = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)); |
||
127 | if DiscoDice.Talent == "1" then |
||
128 | DiscoDice_var = 1.15 |
||
129 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is using 1/3 improved Slice and Dice.") |
||
130 | elseif DiscoDice.Talent == "2" then |
||
131 | DiscoDice_var = 1.30 |
||
132 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is using 2/3 improved Slice and Dice.") |
||
133 | elseif DiscoDice.Talent == "3" then |
||
134 | DiscoDice_var = 1.45 |
||
135 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is using 3/3 improved Slice and Dice.") |
||
136 | else |
||
137 | DiscoDice_var = 1.00 |
||
138 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is using 0/3 improved Slice and Dice.") |
||
139 | end |
||
140 | elseif strfind(myArg1, "scale") then |
||
141 | local DiscoDiceArg = string.find(myArg1, " ") |
||
142 | DiscoDice_Scale = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)) |
||
143 | DiscoDice_Scale = DiscoDice_Scale * 1 |
||
144 | if ((DiscoDice_Scale < 3.01) and (DiscoDice_Scale > 0.5)) then |
||
145 | DiscoDice:ClearAllPoints(); |
||
146 | DiscoDice:SetPoint("CENTER", "UIParent", "CENTER", 0, 0); |
||
147 | DiscoDice_ShowBars() |
||
148 | else |
||
149 | DEFAULT_CHAT_FRAME:AddMessage("Please choose a number between 0.5 and 3") |
||
150 | end |
||
151 | elseif strfind(myArg1, "mode") then |
||
152 | local DiscoDiceArg = string.find(myArg1, " ") |
||
153 | local DiscoDiceTempShow = string.sub(myArg1, DiscoDiceArg + 1, string.len(myArg1)) |
||
154 | if (DiscoDiceTempShow == "fixed") then |
||
155 | DiscoDice_ShowType = "fixed"; |
||
156 | DEFAULT_CHAT_FRAME:AddMessage("Now using a fixed bar size for Slice and Dice events") |
||
157 | else |
||
158 | DiscoDice_ShowType = "normal" |
||
159 | DEFAULT_CHAT_FRAME:AddMessage("Now using a full bar for all Slice and Dice events") |
||
160 | end |
||
161 | else |
||
162 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice commands:") |
||
163 | DEFAULT_CHAT_FRAME:AddMessage("/discodice and /ddice are interchangeable.") |
||
164 | DEFAULT_CHAT_FRAME:AddMessage("/ddice on and /ddice off turn the display on and off.") |
||
165 | DEFAULT_CHAT_FRAME:AddMessage("/ddice show: shows the bar and lets you move it.") |
||
166 | DEFAULT_CHAT_FRAME:AddMessage("/ddice hide: returns the bar to its hidden state until you next use Slice and Dice.") |
||
167 | DEFAULT_CHAT_FRAME:AddMessage("/ddice display [combo/timer] : toggles between the bar text being combo points or seconds left.") |
||
168 | DEFAULT_CHAT_FRAME:AddMessage("/ddice talent [0/1/2/3] : registers you as that many points in improved Slice and Dice.") |
||
169 | DEFAULT_CHAT_FRAME:AddMessage("/ddice scale [put number from 0.5 to 3 here] : scales the size of the bar on your screen.") |
||
170 | DEFAULT_CHAT_FRAME:AddMessage("/ddice rupture [on/off] : turns the rupture bar on or off") |
||
171 | DEFAULT_CHAT_FRAME:AddMessage("/ddice expose [on/off] : turns the expose armor bar on or off") |
||
172 | DEFAULT_CHAT_FRAME:AddMessage(myArg1) |
||
173 | |||
174 | end |
||
175 | end |
||
176 | |||
177 | function DiscoDice_ShowBars() |
||
178 | DiscoDice:EnableMouse(1); |
||
179 | DiscoDice.ShowStatus = 1; |
||
180 | |||
181 | DiscoDiceBar1:SetAlpha(1); |
||
182 | DiscoDiceBar1StatusBar:SetMinMaxValues(0, 100); |
||
183 | DiscoDiceBar1StatusBar:SetValue(100) |
||
184 | DiscoDiceBar1StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar1", "LEFT", 5, 0); |
||
185 | DiscoDiceBar1Text:SetText("Slice and Dice"); |
||
186 | DiscoDiceBar1StatusBar:SetStatusBarColor(.5, .5, 1, 1); |
||
187 | |||
188 | DiscoDiceBar2:SetAlpha(1); |
||
189 | DiscoDiceBar2StatusBar:SetMinMaxValues(0, 100); |
||
190 | DiscoDiceBar2StatusBar:SetValue(100) |
||
191 | DiscoDiceBar2StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar2", "LEFT", 5, 0); |
||
192 | DiscoDiceBar2Text:SetText("Rupture"); |
||
193 | DiscoDiceBar2StatusBar:SetStatusBarColor(1, .5, .5, 1); |
||
194 | |||
195 | DiscoDiceBar3:SetAlpha(1); |
||
196 | DiscoDiceBar3StatusBar:SetMinMaxValues(0, 100); |
||
197 | DiscoDiceBar3StatusBar:SetValue(100) |
||
198 | DiscoDiceBar3StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar3", "LEFT", 5, 0); |
||
199 | DiscoDiceBar3Text:SetText("Expose Armor"); |
||
200 | DiscoDiceBar3StatusBar:SetStatusBarColor(.5, 1, .5, 1); |
||
201 | |||
202 | DiscoDice:SetScale(DiscoDice_Scale * UIParent:GetScale()); |
||
203 | DiscoDiceBar1:Show(); |
||
204 | DiscoDiceBar2:Show(); |
||
205 | DiscoDiceBar3:Show(); |
||
206 | end |
||
207 | |||
208 | function DiscoDice_OnUpdate() |
||
209 | |||
210 | if (DiscoDice.itsago == 0 ) then |
||
211 | else |
||
212 | local status = GetTime() |
||
213 | if DiscoDice_ShowType == "normal" then |
||
214 | if ( status <= DiscoDice.SnDEnd ) then |
||
215 | DiscoDiceBar1StatusBar:SetMinMaxValues(DiscoDice.SnDStart, DiscoDice.SnDEnd); |
||
216 | local sparkPosition = 162 - ((status - DiscoDice.SnDStart) / (DiscoDice.SnDEnd - DiscoDice.SnDStart)) * 162; |
||
217 | DiscoDiceBar1StatusBar:SetValue(DiscoDice.SnDEnd + DiscoDice.SnDStart - status); |
||
218 | DiscoDiceBar1StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar1StatusBar", "LEFT", sparkPosition, 0); |
||
219 | if DiscoDice_Displaytype == "combo" then |
||
220 | DiscoDice.SnDText = DiscoDice.CurrCombo |
||
221 | else |
||
222 | DiscoDice.RoundedTime = floor(DiscoDice.SnDEnd - status) |
||
223 | DiscoDice.SnDText = DiscoDice.RoundedTime |
||
224 | end |
||
225 | DiscoDiceBar1Text:SetText(DiscoDice.SnDText) |
||
226 | elseif ( DiscoDiceBar1:GetAlpha() > 0 ) then |
||
227 | local alpha = DiscoDiceBar1:GetAlpha() - 0.05; |
||
228 | if( alpha > 0 ) then |
||
229 | DiscoDiceBar1:SetAlpha(alpha); |
||
230 | else |
||
231 | DiscoDiceBar1:Hide(); |
||
232 | DiscoDice.itsago = 0 |
||
233 | end |
||
234 | end |
||
235 | else |
||
236 | if ( status <= DiscoDice.SnDEnd ) then |
||
237 | DiscoDiceBar1StatusBar:SetMinMaxValues(DiscoDice.SnDStart, DiscoDice.SnDEnd); |
||
238 | DiscoDiceBar1StatusBarB:SetMinMaxValues(DiscoDice.SnDStart, DiscoDice.SnDEnd); |
||
239 | local sparkPosition = 162 - ((status - DiscoDice.SnDStart) / (DiscoDice.SnDEnd - DiscoDice.SnDStart)) * 162; |
||
240 | sparkPosition = sparkPosition * DiscoDice.FixedRatio |
||
241 | DiscoDiceBar1StatusBar:SetValue(DiscoDice.SnDEnd * DiscoDice.FixedRatio + DiscoDice.SnDStart - status * DiscoDice.FixedRatio); |
||
242 | if DiscoDice.CurrCombo > 0 then |
||
243 | DiscoDiceBar1StatusBarB:SetValue(((DiscoDice.SnDEnd - DiscoDice.SnDStart)/21)*(6 + DiscoDice.CurrCombo * 3) + DiscoDice.SnDStart); |
||
244 | else |
||
245 | DiscoDiceBar1StatusBarB:SetValue(DiscoDice.SnDStart); |
||
246 | end |
||
247 | DiscoDiceBar1StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar1StatusBar", "LEFT", sparkPosition, 0); |
||
248 | if DiscoDice_Displaytype == "combo" then |
||
249 | DiscoDice.SnDText = DiscoDice.CurrCombo |
||
250 | else |
||
251 | DiscoDice.RoundedTime = floor(DiscoDice.SnDEnd - status) |
||
252 | DiscoDice.SnDText = DiscoDice.RoundedTime |
||
253 | end |
||
254 | DiscoDiceBar1Text:SetText(DiscoDice.SnDText) |
||
255 | elseif ( DiscoDiceBar1:GetAlpha() > 0 ) then |
||
256 | local alpha = DiscoDiceBar1:GetAlpha() - 0.05; |
||
257 | if( alpha > 0 ) then |
||
258 | DiscoDiceBar1:SetAlpha(alpha); |
||
259 | else |
||
260 | DiscoDiceBar1:Hide(); |
||
261 | DiscoDice.itsago = 0 |
||
262 | end |
||
263 | end |
||
264 | end |
||
265 | end |
||
266 | |||
267 | if (DiscoDice.itsagoRupture == 0 ) then |
||
268 | else |
||
269 | local statusRupture = GetTime() |
||
270 | if ( statusRupture <= DiscoDice.SnDEndRupture ) then |
||
271 | DiscoDiceBar2StatusBar:SetMinMaxValues(DiscoDice.SnDStartRupture, DiscoDice.SnDEndRupture); |
||
272 | local sparkPositionRupture = 162 - ((statusRupture - DiscoDice.SnDStartRupture) / (DiscoDice.SnDEndRupture - DiscoDice.SnDStartRupture)) * 162; |
||
273 | DiscoDiceBar2StatusBar:SetValue(DiscoDice.SnDEndRupture + DiscoDice.SnDStartRupture - statusRupture); |
||
274 | DiscoDiceBar2StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar2StatusBar", "LEFT", sparkPositionRupture, 0); |
||
275 | if DiscoDice_Displaytype == "combo" then |
||
276 | DiscoDice.SnDTextRupture = DiscoDice.CurrCombo |
||
277 | else |
||
278 | DiscoDice.RoundedTimeRupture = floor(DiscoDice.SnDEndRupture - statusRupture) |
||
279 | DiscoDice.SnDTextRupture = DiscoDice.RoundedTimeRupture |
||
280 | end |
||
281 | DiscoDiceBar2Text:SetText(DiscoDice.SnDTextRupture) |
||
282 | elseif ( DiscoDiceBar2:GetAlpha() > 0 ) then |
||
283 | local alphaRupture = DiscoDiceBar2:GetAlpha() - 0.05; |
||
284 | if( alphaRupture > 0 ) then |
||
285 | DiscoDiceBar2:SetAlpha(alphaRupture); |
||
286 | else |
||
287 | DiscoDiceBar2:Hide(); |
||
288 | DiscoDice.itsagoRupture = 0 |
||
289 | end |
||
290 | end |
||
291 | end |
||
292 | |||
293 | if (DiscoDice.itsagoEA == 0 ) then |
||
294 | else |
||
295 | local statusEA = GetTime() |
||
296 | if ( statusEA <= DiscoDice.SnDEndEA ) then |
||
297 | DiscoDiceBar3StatusBar:SetMinMaxValues(DiscoDice.SnDStartEA, DiscoDice.SnDEndEA); |
||
298 | local sparkPositionEA = 162 - ((statusEA - DiscoDice.SnDStartEA) / (DiscoDice.SnDEndEA - DiscoDice.SnDStartEA)) * 162; |
||
299 | DiscoDiceBar3StatusBar:SetValue(DiscoDice.SnDEndEA + DiscoDice.SnDStartEA - statusEA); |
||
300 | DiscoDiceBar3StatusBarSpark:SetPoint("CENTER", "DiscoDiceBar3StatusBar", "LEFT", sparkPositionEA, 0); |
||
301 | if DiscoDice_Displaytype == "combo" then |
||
302 | DiscoDice.SnDTextEA = DiscoDice.CurrCombo |
||
303 | else |
||
304 | DiscoDice.RoundedTimeEA = floor(DiscoDice.SnDEndEA - statusEA) |
||
305 | DiscoDice.SnDTextEA = DiscoDice.RoundedTimeEA |
||
306 | end |
||
307 | DiscoDiceBar3Text:SetText(DiscoDice.SnDTextEA) |
||
308 | elseif ( DiscoDiceBar3:GetAlpha() > 0 ) then |
||
309 | local alphaEA = DiscoDiceBar3:GetAlpha() - 0.05; |
||
310 | if( alphaEA > 0 ) then |
||
311 | DiscoDiceBar3:SetAlpha(alphaEA); |
||
312 | else |
||
313 | DiscoDiceBar3:Hide(); |
||
314 | DiscoDice.itsagoEA = 0 |
||
315 | end |
||
316 | end |
||
317 | end |
||
318 | |||
319 | |||
320 | |||
321 | end |
||
322 | |||
323 | function DiscoDice_LockUnlock() |
||
324 | if (DiscoDice.ShowStatus == 1) then |
||
325 | DiscoDice.ShowStatus = 2; |
||
326 | else |
||
327 | DiscoDice.ShowStatus = 1; |
||
328 | end |
||
329 | end |
||
330 | |||
331 | |||
332 | function DiscoDice_OnEvent(event) |
||
333 | if DiscoDice_state ~= "on" then |
||
334 | return |
||
335 | end |
||
336 | if event == "CHAT_MSG_SPELL_SELF_DAMAGE" then |
||
337 | if arg1 == "You perform Slice and Dice." then |
||
338 | DiscoDiceBar1_Slice() |
||
339 | end |
||
340 | elseif event == "PLAYER_COMBO_POINTS" then |
||
341 | DiscoDice.CurrCombo = GetComboPoints() |
||
342 | end |
||
343 | end |
||
344 | |||
345 | |||
346 | function DiscoDiceBar1_Slice() |
||
347 | if DiscoDice.EndMod ~= 0 then |
||
348 | DiscoDice.SnDPoss = GetTime() + DiscoDice_var * (6 + (3*DiscoDice.CurrCombo)) |
||
349 | if DiscoDice.SnDPoss < DiscoDice.SnDEnd then |
||
350 | return |
||
351 | end |
||
352 | end |
||
353 | DiscoDice:EnableMouse(0) |
||
354 | DiscoDice.itsago = 1; |
||
355 | DiscoDice:SetScale(DiscoDice_Scale * UIParent:GetScale()); |
||
356 | DiscoDiceBar1Text:SetText(""); |
||
357 | DiscoDiceBar1:SetBackdropColor(0, 0, 0, 0.3); |
||
358 | DiscoDiceBar1StatusBar:SetStatusBarColor(.5, .5, 1, 1); |
||
359 | DiscoDiceBar1:SetAlpha(1) |
||
360 | DiscoDiceBar1StatusBar:SetAlpha(.75) |
||
361 | DiscoDiceBar1:Show() |
||
362 | DiscoDice.EndMod = DiscoDice_var * (6 + (3*DiscoDice.CurrCombo)) |
||
363 | DiscoDice.SnDStart = GetTime(); |
||
364 | DiscoDice.SnDEnd = GetTime() + DiscoDice.EndMod; |
||
365 | DiscoDice.FixedRatio = (6 + (3*DiscoDice.CurrCombo))/21; |
||
366 | -- DiscoDiceBar1StatusBarB:SetValue(DiscoDice.SnDEnd); |
||
367 | DiscoDiceBar1StatusBarB:SetValue(0); |
||
368 | DiscoDiceBar1StatusBarB:SetStatusBarColor(1, 1, 0, .9); |
||
369 | end |
||
370 | |||
371 | function DiscoDiceBar2_Rupture() |
||
372 | CastSpellByName("Rupture") |
||
373 | if ((DiscoDice_RuptureONOFF ~= "on") or (DiscoDice.CurrCombo == 0) or (UnitMana("player") < 25)) then |
||
374 | return |
||
375 | end |
||
376 | DiscoDice.itsagoRupture = 1; |
||
377 | if DiscoDice.EndModRupture ~= 0 then |
||
378 | DiscoDice.SnDPossRupture = GetTime() + DiscoDice_var * (2 + (4*DiscoDice.CurrCombo)) |
||
379 | if DiscoDice.SnDPossRupture < DiscoDice.SnDEndRupture then |
||
380 | return |
||
381 | end |
||
382 | end |
||
383 | DiscoDice:EnableMouse(0) |
||
384 | DiscoDiceBar2Text:SetText(""); |
||
385 | DiscoDice:SetScale(DiscoDice_Scale * UIParent:GetScale()); |
||
386 | DiscoDiceBar2:SetBackdropColor(0, 0, 0, 0.3); |
||
387 | DiscoDiceBar2StatusBar:SetStatusBarColor(1, .5, .5, 1); |
||
388 | DiscoDiceBar2:SetAlpha(0.75) |
||
389 | DiscoDiceBar2:Show() |
||
390 | DiscoDice.EndModRupture = 2 + 4*DiscoDice.CurrCombo |
||
391 | DiscoDice.SnDStartRupture = GetTime(); |
||
392 | DiscoDice.SnDEndRupture = GetTime() + DiscoDice.EndModRupture; |
||
393 | end |
||
394 | |||
395 | function DiscoDiceBar3_EA() |
||
396 | CastSpellByName("Expose Armor") |
||
397 | if ((DiscoDice_EAONOFF ~= "on") or (DiscoDice.CurrCombo == 0) or (UnitMana("player") < 25)) then |
||
398 | return |
||
399 | end |
||
400 | DiscoDice:EnableMouse(0) |
||
401 | DiscoDice.itsagoEA = 1; |
||
402 | DiscoDiceBar3Text:SetText(""); |
||
403 | DiscoDice:SetScale(DiscoDice_Scale * UIParent:GetScale()); |
||
404 | DiscoDiceBar3:SetBackdropColor(0, 0, 0, 0.3); |
||
405 | DiscoDiceBar3StatusBar:SetStatusBarColor(.5, 1, .5, 1); |
||
406 | DiscoDiceBar3:SetAlpha(0.75) |
||
407 | DiscoDiceBar3:Show() |
||
408 | DiscoDice.EndModEA = 30 |
||
409 | DiscoDice.SnDStartEA = GetTime(); |
||
410 | DiscoDice.SnDEndEA = GetTime() + DiscoDice.EndModEA; |
||
411 | end |
||
412 | |||
413 | function DiscoDice_StartupMessage() |
||
414 | DEFAULT_CHAT_FRAME:AddMessage("DiscoDice is loaded. Type /ddice to show commands.") |
||
415 | end |
||
416 |