Update almost all auras to move away from using globals to using aura_env
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
function(progress)
|
||||
return Display.color.r, Display.color.g, Display.color.b, 1
|
||||
return aura_env.Display.color.r, aura_env.Display.color.g, aura_env.Display.color.b, 1
|
||||
end
|
||||
|
@@ -1,4 +1,4 @@
|
||||
function()
|
||||
local current, max = ShieldManager.GetStats()
|
||||
local current, max = aura_env.ShieldManager.GetStats()
|
||||
return current, max, 1
|
||||
end
|
@@ -1,8 +1,8 @@
|
||||
-- TICKER_500
|
||||
function()
|
||||
for _, shield in pairs(Shields) do
|
||||
for _, shield in pairs(aura_env.Shields) do
|
||||
shield:Update()
|
||||
end
|
||||
Display.Update()
|
||||
aura_env.Display.Update()
|
||||
return true
|
||||
end
|
@@ -1 +1 @@
|
||||
!DRrIYPns2VLXBLAHjyIegJ9KACQXhqmESbxiCMK1Jb1GAanwiXQdSD8g9TVV(sQ1jyxjBT7wKil19RF3hTA9gPoA4iTLJ0mi)dU1BfY9()W0WFXOEQkJ0M44AGDpbn9EdxNvJ0oXY8RFf5AeQp0XXY3eg6X(ZM5H9h1daFAGNVZYH4h9hPnlWEQVPJDLQHxeQZ(5I9dCTd1pZ0BLf6P6tdCDX2(1Ihzj6rPNCMD(QWlW2a79KGm72qbOeYE6ch3RDmTbsDA7EdBpagmW3z0jCPyGJpIqFkJLyKRCmWJ0o(MH9PlbWt)vKX9anaGnZPWIMacGJTFhl0CVrA9Vz4LD71Mn34PowoUaS9uP)Rb96E0Rnjxj4W2h7AJS(e21JYdnAbmb2AwkoEcxZ21UJlqoczNGCpnMaDAD4HhC4(h2y)9A1y)MT2B0SD3Fpcr7SVYHTAQEytLgTo4GghqNPzAgXa7HaDoYhtWnvnWuKFowVWg4lSbcMmapNRm6rDp8FAfMOOCraRng(pGxG(Kzad9yVfidNh(SW8OkwaGjFQJafk2TVzAd(ZBHoKchXimsRJPlku)khBh4k2WmyzcIlPVazGGmfkYusHmg0FjYtsvmESHH5v4s8uWm)4E9jgEkCRn9mNyHjUy0Nt4e2TxV2dgpO7hpFOW98lsHg0f8xq8H5SNIT)rYOM5xXaNh5z)50lLa0qQIv4m6tKXxNvq9)ZTcx2UZ)5mcnjgbwIYXEum0m6zgEOb1swe2KranDZkooKsIoFeSXCaNA)ZaKlouVtGLvO(FSWec3fq4WLHMeED)xPdZE)VSdtwRwHoorvs(U76eB68jc2cS58fKiyY8UMZNdfkIZ4Ygio5lRUk14Gxdfm1cMnZ8XrAJp9yTHJ1gE8GHcGgVW0qAfZX2yxZPAlCEOVnGa6FpgkmVgaIIRrANJrwqbFTaBt4jsHxIZjddNrQDqQGLB9ClNPiWHlUmou(ou)OqDTfMylJRq2iqoQ)rSVgyz8YBRajwlCvLxVNYBqP3HDp93bdZ(k0QvylRUg860crC3DHDJebv4f5XOZCCd1hdO3JYyH6MaPxHmD9QWyvVQH6goXlq8Jb)7VzLb4zjJrGjJFqSFLSGjetF3amxY42jMLLBceg2RDXudR21TV8YrA2OLyU0AGNagDMB85TV86o3Cjz4aBjNfHgH5Izy69xuvbXuJSSGl0hgYwaDxqqWKcbwlheD)F(ilGlOf3xga7VJsBFX4zgEQfYZlZOgMG35uyKNYmLlAko7GowzhC16vfqut75UobRYm(me1SNzCWRzA2bjXRPg0NVFOtaYAW3K4zNb6yp8XgKqFSbg8PFKStkgTOYUNpY1NV1rseemKHZyUT4ez)0D)nKLjYluNM5lu)z33hQBhSCc2fCnNl)WKOh(w4fKvsv18vIDzJnJ5lttkdZ5JGem)AekOG(HeqoXfJUFfjHxkWbWeyMe((CSd8UKWRRq3dvx8ci1yeudzNgHiRhqpb)DbAnaN)cYsahyHGeQ7mJe3aoSyVFku)tTh8Lq9UxDD)bdpU3WFkbn)ns4rHIKaqbVKKLf)Egc)OZPuVvdIcw(HjrpeQ)TAeAgQ)rx8tzrdzMiuPwtm88upZqOAm2OLHlLRuJ5Q04rjbxHTldpPyjL6nBkjGhEqmQoXkOCoQvtj9udvj08l7fJMRdCxzvgIuZWs7xlxzRVlYEE5S0VutgphkJN67hJPlj1tbLLJLXlsxjJq16kY6kXR6MuRbZhDFc3FQtiGrcnaLh9At61w1eusLoRQIIcNuxK0Rhs)GwgQVgriPiUjbeIck0qbax2Mw)lpiKYEEmCDjV95khlOweLTIQisXB1S6hrDCwAPJsPWMhDxS9tMX3yyBQh5PC(qH8XeOmX9yFbN8mJ4CBZZm3lsGgJpsHdAPEZi3W)gpVw9e2Q8k1l(zolYa8RrjCLx(TM3rtVzxmoIDqOsYTnUtimM1kgNFBBqiSKIblXUskIzuFTmdd7Ly3z11kYSsluEAKpMGWSK43gZDW)U71tfGj3inAiOrrizMlRapfjv4Ed7kRcbCaBz8DWSsiLyMZc1ff4KEpO9xlVv0yfu1YDrPIZT3Fxcz0cI5RSUwSgaaOwSOuDRTNrBnpoftI99wuwlu(zS4ZoP0z9lpBx65iYAYuBis6jsUMQflqad(ZGbtLAKaa1FlLT(zc5tUXEW5hE7TLy4Twi5UQW1XS0pJhBABGFuw5dHlu7S0o1yVxXjWM2tTDnx8u4nZ9kkTyEWo053X4vXQbjiOrSegqmxc6MDZCcfEbyopLFsjraHn(HKwGeyS4ImK3ANUWek4NzP2l0JxwNNp)evFohstOz9us8rP1bLUkMM8BfauKrGUdWnvskfJuwGUmlqZktl)EXwL2xy(Ok8Tj(LzzYx7kdgfGpT5TOKiVXXRwr4YeEmecwlbc3GT7wzTntBiZnB24uj5iVjpxdwEb1mQSxUcROSxFe7Ff)GssOlkoOrCUkkf4CroAdEvkPYjsIw1TEppFGtTTBdocgBD(gGsDqZDqcNWq6rmpigJe5nRSbVDYA)HA5oLDGvVeR3AYLJs5kNYv8T5NLcku1OAboQm)07YxhYO5RthswBM6H5uClrHiB6R6lEvePjs9YmYhhbVivs7ah3fx6kjLkUIvj1QiO4hFjQxqXjMmDex4YhgUIm)0auiMex1xwNwhK)k7Pu97CnIcZ6xWRLYoD0xsGtIsnSai8u)kQhau4gBt)JdCrv2HDI17utsvwTA(rfjqy5z4sPYlTod2YdV1yABRFlzrFpR6zLymvDRcq5haViMs8yoHwVKsvLMORyH8vFg8IFXyNF3Bf4sOMyCBLQVWDiLQ4v2QgV0Yb)xTgIZX)W1sIpTt5aLOET4dfTTAZs2wuYpn1pmnUGdO)9f4pg9M8s8x09FpTAj)2CBH1JN1UCRNaOe4SmFa9kUOhQUzxH0Wj8i6zofVTEfVMphzMTFcBdwf3ku3rwiedwELJKkP6Gp2sKFLDEtD1zxrQsfHU3rrx1AfdkLvIbRaJ529AGPjHYS7ZWnkkk5YoCyJyhoCf7CLTIe)BKM8lxjODoBoKsRCgNVMbOhkAzfnfTBYYBhQKjkBrWCDIoqW8yj25nYpxsHGMQkBE7(zl9HRjl11ILXc9SjrlLG8fSJ)GSdk23(NKKsSnQCwwQ21lrYQcbwoZ4MWOqAKESm8kaNFBHGgzxtIAIhmrf8Zuh5nU8oYNfCgu)UTajSnqMnM6nVzNAzqzz6)mNRT0x6PsbSDj76p9b7kf0k)DCy(yFqSlYmFV1BvvoCVwTUtYHK(gh7O5eaEBxIXtxSt1Ajxqt1CwWzi37d1Vgy8KW3q5GMh0il8FgTg5Ao9V7r(e1ZHiZq9(Rc8OlgefAxbyAB6TiUxaakC6MBIjpFZP3)uuZVmzKwGPXiTlrFn4tdw2T)d(Kg9XCjs0XbIMaG3Wo2o2Wvd(6596Hh8Y72gEe8VezANT9EO23JPnJvblv7rwxAcHX4hPaISwTaXA(wYQhMaHpfpXjuOP3(X4BheFBhiPKux(SY1zUl2ZRSU3LSS6U1spY8mJmPw0bQrDZeTQvSW8eLrc8W8wm7Ke2UTtRsSBlDC8xCnN3jDFrYM3WKAlDPD46q5(Av0UCIgXfw5dS2GEpsNhr77xpANvj6WtMExnUhEl3TsP((roGNl38x4hbTkG32wRVPl5JnJSVhii4TD8eph3jGr)RoGXmQDDjsGVZ01Iwl(aL9ueZDUPHb2EKwV2FI0EA0XgkOanzXm0u8FEkcCWTNFcY9pVP7UXpTRgLaAZG31hR5d6zMiY6PToKrzAnTth0UDpINJ9mZ5IMFHWsX9z8zSwpMoGJRjK8L3jzN3Fq3)r)Edp(skcmmLA(64oiNvVemG8)suZKg)H)XTkSVbzkAIQEKwJ6QTQV3iT1aSnBqISh9V)
|
||||
!LVXcZPTr6Fl13K5GgmbHXy3mnzQFGJX1g8GWPjNRbTGwavlK4wjHTtUWV97BFjT6jYPjDMoDspS0U737Ns67gPnA4i9LJ0nP)hCP3ke5(FZY0FXOEAne33F2mpS)hg1dw4r(nSRNg457UCi(r)r6ZcCM6B56uP6Ml2yW)hb7hqC2yGciOXyN11p1YBLn6P6tdieSJFTm2Aj6XSw2D25R2Cb2b4ZNKCWUn3hycKZ0fUKRDTCaU4Ko9g2zaSyGV7OJfS)axFeL1sWZ3SYe5JhPhi(7e007NtCdCmpX12LaAJEAuq61K97ESFBb)wF)raPqmX1JP08reF4cQAWYXYBb)A4s6Q6MUJ5uLYrIR03D3D)fKTfYBJbJCBm(m51BmCcwobtanWC1BMeEZx2CbfYP2ipjKycFTzwyBZngtPRb75JMyJ)5quWo6BJDYjem6(vufxIJdhl0aijHXBaomY0cOzJXvO7XBm8ci4iYICsIzK9dONG)UaTgoN)ckiOLyPeTXWD2gdWBGyH9(HngVVZGpUXO7vx3FWWJ6n8hIrZFX)Pv4CLn5bL8sCww(VpdoMS9AuVDtQMw9MjH3SX4l1O0CJX7i4NsJg6oHOsRMC55jUNJqTiS9BlS8XfYvArCvs80igxHDkcpjyPg1B1srap8GiuDSDqXCu7wk6PMAkO5N2lcnxhqwzxeI0sXs7xltzRpb5mVyw6NQPINdvXt99JW0LwZx4dklxWH)5ORurOw9gQ6kRp9jeXmPwd2p86yU)mNqaJuAakp2VTy)2UMKsASD1A0OHGuxe3RhYIHwUXynIsszCtStit1YcfaC5yz))8GqkN5rNRRJpMSY1gY2XyRWu2m8wnT(X2DkYweojfKif28WRISFQm(wdBtCRi3ZBZLpMqGm0yFjN8zoXf2MpZDVObAC(iboMrfbRq3W)vYeC1Jz0mDtJb5)SMfAj(zLkvzGNBTUJLWZjFKf5YWKTBBENu8SQvcK)LYGzaK8pgusn)nLCL2FAUItMc8n4fbZZ0ZQWEsOFykoGNX)2i(f(V7(6jhw0dqPiwtjXUilpLyC(BybMqfpsmAixUyxfzi(uri(ocWDC9PU3qFl7uA9UqoNr4DXWKZkcN6DvT7G0vDJXRGDvexQtA6tDrobD3d86AqzauzfYI4vjsLuT4inMKE793LTzWgsMvzDTinjCYArYu1sRmsQyP2IluGjV0XOStfl2DsH76xCA8K7rL145Sr08U0KOvZxGag8hblNgZAbh04Lm26hPK)IykfiIfAPEjgAuMMuUssLnpb74XwoM4hZ0Car9mxaLUt1xq7Z84GzZs0Ikbp1Ly6LxfGSo7q3FfJxfPyuoblXdLbK7fYAXyG0nWkTf5qISSlXfj5jCWpe34edJ5xy1dBpJbymD)N5LZYnQitRq2mwyZjzWduIxpHO)MKkJcHIRs)sohk0SWA)DB1JtWifLvqLfyLBy9ECrPkSjTJmnFzIX5MOS1UQhJDG3V9(ZILB5OvROCzmxhkbRfdHBX2DRQ2MRnu5MTBCQeFLxKLRbp3Hwkv2ZxHLxgU3H9Vc9yADr(rplfhVrooxJRf2NMsThfrRAP7Z7TcQvUE5Km26Snaf6GM5IuoHJ0yDke6n3ylE7uy)UA5oH)(CEowV10FEtcx5eUIVm7SuqXSMvZXrL7NEx26qon)60HuytvZmJYDXkn5WEphYNdtzJepjN6lLruTkUDirE(ckMfNK5xdRGQxuu8xyrRNr5kUW9gHuM9zeQ2StmWoXKOgcYS(zDqJuzVgv)gx(i3cc584683p5ZjMkwviESfEQFfTdakCJJL)rG0wzh67tft2PMIoTA1CE4fvewCYVe6(clbHT9WLgtLT0UIP918cRvIWu1sf7EfYbnpJWn56ze19CkNvyYW8L2WIzEIy)OQzj4ZTvrlImIREPePsfhNTRu9z2ovIkDPlX8CRD83dvLG1)URUmeFVKIpuSQ8a3Pd5M9kRATGMPKVfqf703vvVKvy)9z4Hg(wduy0WR)wA(I(6vBPXQWYf8m7fBgLhkgolYzWOcb9q1T7tK8CsxJEwtXL19iUiNrLtrkY6sKxPAbTXcTtRHBZFnyHsJCXY9sW4AR6Gx3sKFLDErDTzxrlPfIUxXqx1A5FugReDSCSQL7XjtsIgZUpf30OrJmzhXzdzhX5Y3llD5lXxjn(3bus7mAYKrRmwxaZa0d5bwEBX((Sz1PlDJIac27SW3czwSe)LCkEFTj)UWjljNvptL0RUMQ4xlsy3UVonqQaQSG)IvOnGDogz7VGM)s2fwgGL3xlpwcTTdLAA0stdPeRCBPOKeoXLBhMq3I4eJgaq1x)iloO845m1xKD(e7vph0Y7JnD06lEXo1YNiLYGM)3wq5B0vzBcBbpGsYxHTskd1pfh3F(TPA4n13o)wTghUx723Lv4a7XL2r3na81VeJNUyNQ1IdzlTIG8ue5(ngxdYuCaB24Gwh0Saa)aAnIyn9F7rNeH5qUJng9xf4XWciUJ8PdHby)MdbRE8X5yy4cSlbvr0ez4fmbVg8d1HgeSECK(4tosF4y9HhnGodhyAFddzaCENlV(SBUCKEaDap05rYJ0zad7YIXhPtFUkp(GGWPWPGmWgdLmNvMVffAZSbf2hfLp5msj8AcMjH6x35YlPdjd22URzmMDmx3iKPOHwzJXWUN8RDgmEFACuwcYF(gb5a(AEU8kjF0TCJQsFEP(WNqB3MPcycK3i9iPyK(CSdg8J0x4(qFW64X(7rGGTo07y8clZixfFQPxXpsQE4ECMwE)btVqbhzBZhvO14HCaUYfWuVD1AWgrOPUoJNQmUrASXnsJnUrASXnsJpkrqAbhK97bpz2Km1SnWOWJ3MyUNOZWKjXDvxNZiUWgtOlruMNPZAF4HhC4(h2C)9A3C)wT3B0SD3FpkrpB)gh2UL2HTA0S9bh08a2oTsYiMypKp1rgtXDSXRIjy6hDZW(XgBSpYg7kW1BaEUyGPebImpmQzeyXXW)dWpWh0DWp6p2BbY09Hpih2lnjaaM8ztCg7u8lFX0MI7lHUKDUzuTJ(zweeK8W1Xf(fBAfSmgXlEoWIqg)0FmCU00KRhzG4Qf2QRT8SGKV0HblKv4jw6FZWl72RJy9yd2w3E9a31bDF35dLJ82hvMepga)b4gAn7PiVHq0RB9jWNRz40Y9bfqjuZhMpeF96du3NkJFDwbT)ryfUSZz)vyeAffKaA7jUetAvg(FfSfl6oCnpgbAfE)0TR4eNurziwbBohOR()narhUVZcSTftUw4jCfCFlkVU)xPdZE)9XHjphKKosz4WeovQFNDzGRwGPd8giUmySwY74qzgv1nfTHiQW7HHsqqTFHzYX1btXZsKLt6wKc8WctfD2AHgwWpYmXS1ggVBk6UpX2fzVAbIp8WSFFIpiUuyokc83fD5GOlpdQKQ0W0kI7Cc2ZRudzmf(6KA5U1883AsTWV2jRPdP6oIZpMXJ5Omvhe4YPWbiSDrSrWgEEdIBWk2Gzhy7BXAlJ6Zckuh)ulZEfaPw10cAIDkSYtP2cE6bC6fDTtV4Q1RYHOqlJttT4m(JLKdJ3mnsOE3jw0x07WXaiMIoko9uMN3rM0afSjg6b(rENn8MDoPWKhIX1gcXME)tH9GpHnJ4qiv)vYX4MQlDDMznNFT3sxx)fxlC4Oo8X5blgsiSMAgQ2kJmdPShSJLrVWZTTeZpQ(jd60PNO)ppwVLIA7ZOhcEifKpI5H9jxiAQNCs8pxj8MMLiGaq2XE9nDPZJkY5E55SmnXqVS968EAcf2AdLNN9mMGXc)7NGa1IZ8JrKF)MU7gD3U6uaeWrftF3PRLTEEqJ9ODnBbDtF0epxYepPeFSWGmspAkzh66cw3vHzbar6b()3lGHfgfoz7z)dOK7s0NcE)GLD7)aRLykhf1g6P8otzl4sSapoXtBDE)bD)p97n8Olzgytlfdov)tbGMS9mB0CVOS7uxGr6nRR1UouLAnWhTAszLr))d
|
@@ -2,7 +2,7 @@
|
||||
---@class Colorer
|
||||
---@field colors table<number, Color>
|
||||
---@field breakpoints table<number>
|
||||
Colorer = {
|
||||
aura_env.Colorer = {
|
||||
--- Make sure colors and breakpoints always have the same number of entries! VERY IMPORTANT!
|
||||
---@type table<number, Color>
|
||||
colors = {
|
||||
@@ -24,23 +24,27 @@ Colorer = {
|
||||
|
||||
---@type table<number, table<number, number>>
|
||||
local bracket = { { 0, 0 }, { 1, 1 } }
|
||||
for i = 1, #Colorer.breakpoints do
|
||||
if value < Colorer.breakpoints[i] then
|
||||
bracket[2] = { i, Colorer.breakpoints[i] }
|
||||
for i = 1, #aura_env.Colorer.breakpoints do
|
||||
if value < aura_env.Colorer.breakpoints[i] then
|
||||
bracket[2] = { i, aura_env.Colorer.breakpoints[i] }
|
||||
break
|
||||
end
|
||||
bracket[1] = { i, Colorer.breakpoints[i] }
|
||||
bracket[1] = { i, aura_env.Colorer.breakpoints[i] }
|
||||
end
|
||||
|
||||
---@type Color
|
||||
local startColor = Colorer.colors[bracket[1][1]]
|
||||
local startColor = aura_env.Colorer.colors[bracket[1][1]]
|
||||
---@type Color
|
||||
local endColor = Colorer.colors[bracket[2][1]]
|
||||
local endColor = aura_env.Colorer.colors[bracket[2][1]]
|
||||
|
||||
if startColor == nil or endColor == nil then
|
||||
return color, "Color not found"
|
||||
end
|
||||
|
||||
local fraction = (value - bracket[1][2]) / (bracket[2][2] - bracket[1][2])
|
||||
|
||||
for k, v in pairs(startColor) do
|
||||
color[k] = Colorer.lerp(v, endColor[k], fraction)
|
||||
color[k] = aura_env.Colorer.lerp(v, endColor[k], fraction)
|
||||
end
|
||||
|
||||
return color, nil
|
||||
@@ -54,18 +58,18 @@ Colorer = {
|
||||
return a * (1 - t) + b * t
|
||||
end
|
||||
}
|
||||
setmetatable(Colorer, { __index = Colorer })
|
||||
setmetatable(aura_env.Colorer, { __index = aura_env.Colorer })
|
||||
|
||||
---@class ShieldBuffer
|
||||
---@field records table<number, number>
|
||||
---@field recordsToKeep number
|
||||
---@field pointer number
|
||||
ShieldBuffer = {
|
||||
aura_env.ShieldBuffer = {
|
||||
---@param recordsToKeep number
|
||||
---@return ShieldBuffer
|
||||
new = function(recordsToKeep)
|
||||
local self = setmetatable({}, {
|
||||
__index = ShieldBuffer
|
||||
__index = aura_env.ShieldBuffer
|
||||
})
|
||||
self.recordsToKeep = recordsToKeep
|
||||
self.records = {}
|
||||
@@ -108,16 +112,16 @@ ShieldBuffer = {
|
||||
---@field name string
|
||||
---@field value number
|
||||
---@field buffer ShieldBuffer
|
||||
Shield = {
|
||||
aura_env.Shield = {
|
||||
---@param name string
|
||||
---@return Shield
|
||||
new = function(name)
|
||||
local self = setmetatable({}, {
|
||||
__index = Shield
|
||||
__index = aura_env.Shield
|
||||
})
|
||||
self.name = name
|
||||
self.value = 0
|
||||
self.buffer = ShieldBuffer.new(30)
|
||||
self.buffer = aura_env.ShieldBuffer.new(30)
|
||||
return self
|
||||
end,
|
||||
|
||||
@@ -135,11 +139,11 @@ Shield = {
|
||||
}
|
||||
|
||||
---@class ShieldManager
|
||||
ShieldManager = {
|
||||
aura_env.ShieldManager = {
|
||||
---@return number
|
||||
GetMax = function()
|
||||
local value = 0
|
||||
for _, shield in pairs(Shields) do
|
||||
for _, shield in pairs(aura_env.Shields) do
|
||||
value = value + shield.buffer:GetMax()
|
||||
end
|
||||
return value
|
||||
@@ -147,7 +151,7 @@ ShieldManager = {
|
||||
---@return number
|
||||
GetCurrent = function()
|
||||
local value = 0
|
||||
for _, shield in pairs(Shields) do
|
||||
for _, shield in pairs(aura_env.Shields) do
|
||||
value = value + shield.buffer:GetCurrent()
|
||||
end
|
||||
return value
|
||||
@@ -157,7 +161,7 @@ ShieldManager = {
|
||||
GetStats = function()
|
||||
local max = 0
|
||||
local current = 0
|
||||
for _, shield in pairs(Shields) do
|
||||
for _, shield in pairs(aura_env.Shields) do
|
||||
max = max + shield.buffer:GetMax()
|
||||
current = current + shield.buffer:GetCurrent()
|
||||
end
|
||||
@@ -168,7 +172,7 @@ ShieldManager = {
|
||||
---@return number current (raw)
|
||||
---@return number max (raw)
|
||||
GetStatsNice = function()
|
||||
local current, max = ShieldManager.GetStats()
|
||||
local current, max = aura_env.ShieldManager.GetStats()
|
||||
if max > 1e6 or current > 1e6 then
|
||||
return string.format("%.1fM", current / 1e6), string.format("%.1fM", max / 1e6), current, max
|
||||
end
|
||||
@@ -185,25 +189,25 @@ ShieldManager = {
|
||||
---@field ofHpRaw number
|
||||
---@field ofHpRawFraction number
|
||||
---@field color Color
|
||||
Display = {
|
||||
aura_env.Display = {
|
||||
Update = function()
|
||||
local current, max, currentRaw, maxRaw = ShieldManager.GetStatsNice()
|
||||
local current, max, currentRaw, maxRaw = aura_env.ShieldManager.GetStatsNice()
|
||||
local hp = UnitHealthMax("player")
|
||||
Display.current = current
|
||||
Display.max = max
|
||||
Display.currentRaw = currentRaw
|
||||
Display.maxRaw = maxRaw
|
||||
Display.ofHpRaw = currentRaw / hp * 100
|
||||
Display.ofHpRawFraction = Display.ofHpRaw / 100
|
||||
Display.ofHp = string.format("%.0f%%", Display.ofHpRaw)
|
||||
Display.color = Colorer.Interpolate(Display.ofHpRawFraction)
|
||||
aura_env.Display.current = current
|
||||
aura_env.Display.max = max
|
||||
aura_env.Display.currentRaw = currentRaw
|
||||
aura_env.Display.maxRaw = maxRaw
|
||||
aura_env.Display.ofHpRaw = currentRaw / hp * 100
|
||||
aura_env.Display.ofHpRawFraction = aura_env.Display.ofHpRaw / 100
|
||||
aura_env.Display.ofHp = string.format("%.0f%%", aura_env.Display.ofHpRaw)
|
||||
aura_env.Display.color = aura_env.Colorer.Interpolate(aura_env.Display.ofHpRawFraction)
|
||||
return nil
|
||||
end
|
||||
}
|
||||
|
||||
---@type table<Shield>
|
||||
Shields = {
|
||||
[108366] = Shield.new("Soul Leech"),
|
||||
[108416] = Shield.new("Dark Pact"),
|
||||
[207472] = Shield.new("Xavaric's Magnum Opus"),
|
||||
aura_env.Shields = {
|
||||
[108366] = aura_env.Shield.new("Soul Leech"),
|
||||
[108416] = aura_env.Shield.new("Dark Pact"),
|
||||
[207472] = aura_env.Shield.new("Xavaric's Magnum Opus"),
|
||||
}
|
||||
|
@@ -1,3 +1,3 @@
|
||||
function()
|
||||
return Display.current, Display.max, Display.ofHp
|
||||
return aura_env.Display.current, aura_env.Display.max, aura_env.Display.ofHp
|
||||
end
|
@@ -1 +1 @@
|
||||
!DJvxZPnox4)lStMbMTK1gOjzV49ccH0qwQjd2PTzBJbHTmOgJeRSmb67w)BFp6dJnjHws6U7f7qlXs(OZNspNhHVTVNV7CF3q5)GhtwG439EsOyMVJTLz8GOOeS4d(oWeR1d8DADmmcrdMX4xXiuHVBNUoEDhAwZqMajimQArBnZBzHyF32x7nW3Dck4UPCwknSdlMXbpWXwUcNgQVBQ(UL)5hDsRx36y7wNy)RnSFDZJ8JQ)6M(GnfCY0PyEIELEBMq946fGHcstemictsNGxIPc30OiYkF3rDA76nY1R9qq0q8eyAp1cUOB)Ro)6(WKPCDi4A77QwleJZqISXVfNKGMIlu6vCSsPUx1TpSYukbKDrmAn4jUu0CS0bfYebooUxOzuk1Ovbzoom3vhP9BZRYD)61ZgFv)230D4ivAUNZBg9(bd7F2MP73T97kM9YOuAG07RIRLDz2y9NywakoBmHgIxLn()Ln(NEpgDxBiqtCrlXHh2z9DOd7ZMsO9OrSpEneioG7xTIoyQu72p6XcrRVf05gTsIYgJb1b6RYt6JvYglMHPfRi)Zl16F0eb)C2y7BvbY)xTmpirQg(gSq(C1AF9Xgv6U)yggmz2FcwHsI3vK93teERuwwQ4XX1JTiMgwmjoob)eLLT2J8puvzF8zLVQD4lRx)x4P0sw9q3aeTRC7Fs1DSFQ2tSS92zR0WQrR6wnR3Ozf9MNNTomhpt8DFgNj3CaFgrIaQp0RGbkaTeWha87fdKzqnUaJIbi8DHpPv1zBW3KGlE968BGhBBzzTdWdowKYHm(CKy2HrXmgVkcuXimD5HDqXbPXibEanMqX66DTxLn(4gwwWFSvL7I0wjR99X92FxtWtXglTvU2OTNiz7gss(SsLlXY(zRHVud80IP6wbveqssaJokOuFkBvFkBvFkBzFk4BPCubMtrXVd6lP6a24iOsGJJEqFYjiEPUENFsRJpU5rTSSA16Og22QECTk1jSKfcXjiHS6H9NSvp6B0TBtNmepfmDP2IQCRSCbwDe8)I9z4vIrjZqHS7)qEVD78faAs(EJu6hpyHz4EKkuYfXKrD3vl4qBZ7rR3YMFZ((LuIw6BY9W625ZxKx1ukuZUKKqMeJ9pTKlO7U7DbSzAW1E975018YTiX0ZXrDU9CVC2nBSPLr(pdBMirRlkKCjZgSNk74mqQx9k)WdxP0nCjFrUHYswaA(YkaI)7xag27nx8VrfOLScmHXdX8rjQ5BTzSwfQZPLkh6xUrOGVF6ZizPuIzgCOKdP7FKI4qNYZtJb2eVFgbovNlblNSTgRAgMmDgm8eiCIzidJDCGIeFASGKdQLMGbpB(eKqcqeeJssEKmQW9btkmOjNgdyOgI6NDMsFTdLzDCio8TOvsTMsauw2zC2GAO77UAQmNtMR7Oi9lbIlKpKtJ2GVNGbyuGbSjJszuS0SZre6(lDeHssMT3YlEyea2cIaUcK0Rm0Og9xJCUjekBqf(orhySrM(kNw0VAhKl10Wk4lUdzaESF1Wo67YsDFu5wsxs5zxQySPMmeo5uTYb3u)G51piusT6frq(55o7qdpN4)BD5KFyFPqrBL1YU8BX4rj9g(jp(AxICzSkEveJNn(UxjVtMSiraNLSar4jvF2(CnOwYE6R7iv(w0Y33RVSXL1pa33Q6J0v9c9RVb2tD5e4(iplRuCPH9t)BD5NYd2qnuQA9Do0ics6CsuafTUefnrtxNVWGtYYwgWBIitZV6oGlEHbaUPPFskhwv34Lx3lB8PXi6D5YrcdXaXANUVBZViIxU89K8dJqb4p1bb9XOtpfX)019QxmQURCbsqjbt1cLfSmNm5XwnLCMLGVNIeIy8va4UmRayxrCyhbCZbKaP4qGIxmt)096FsNJT28J2CUuwn2NBNHD76yCZo7dbxP3uW9u(aJtaE7M7tCXGH9(9boET7RYHHKCivyXRk1sgIpWtgSO41YeTVBJdTp6WM(Ulbd2QH0M()1d
|
||||
!DJ1BZPnot8VlCtMjm3bNnqd55f9feItHCutgSttZ1wdcBzqngjozzsOpx9N9BLSSnKaTK07UxCdjG969FA1U)2v2Z0Z1ZzHNtG8p4Y4Li(D3qceZ9Snn03pmmmglEVNnqaLiMZ4dxkimAmiHWZzD2Z9SB1wYa1hy4kgHcpQRLTR1iTAgXeiPyk9SfL3YcWEoDU2DiiVFUQDIfiUiZgekrELtaBSFsSGTW7mph9voKW0j3Gr31jHJIDqRWb17U(ou6Kx)60jusu6eXCmDF8Ko5))10jyAq6L7rr1hWMrO9PHSdrLBX9gkp9sxwaATIyasGpUYr3w7Of1okOs1dW0F4AieyJwaYTmcTgZRu9tpp3zpA45S(3Lk(GAz93GVuQOTIAPxIaTmgtxvVlkYpjcIDdPrek2LSaR4omHQYAogcKPtY(eX8rsFjNhJYhfY4PtU7xsNquBseWzjlreE8XVuFUkSLYknq(hz8uAdPoyjIm)n9p3ko9eHY)u45zx8ZPto(j6QwP(jujPQpvF4Oy8ZYkVbR0oempm9R2M21nCSiHt1Q(s1JK1YHqXC8CvDnCNGtMndZLf82k0inb1LRxIllZJtMIxHPcNKWqYdEoJ72XXDSJBNrU5mnEorIKinOerd2jvaooMEokrbeP5ir6K3IJJrZWL68kowPtNRSgmqZCSNZvd6CR1OXkuS(2Vz8ndhn480jAYdS68UcQL(zTAfCCicMEzr6l(P5VeAa(b1g0p9IlOUSuRYmsCwPALD6Jv2xA5l16FqVcGmltDTDr2K62I0TVU7cOFmd)PdVG7h0qBvyU5667vYa1N7yBzRCK)H2voeFw5RAO4A1(vEYMq71D8rulvXYX7jFQ6oe7GD2knmA0QMrZAnAwjl55zRd5Og4OO(b6Pv0afzqlAqHeQ(cnWbfuHM9e5GhozAdquWtbWhxLS9SgC1fxpiJPsqljOMDJxoqM2t6HrrWqy7dGktvNxaWjXCC7393G4VPHHXEWuYbKxGeZRhgXy8J)w9wpUAvOjz7gggWpMQSGsOXnS2UdQBchE4UMGNG1wAliDT22rW2jGe)zLkxHLJFUoBgYvy3m2udxc7iYPi9z0X(SigpRBJ8VgQVBQ(UL8B10McmNIIEh0xsnWAJtKAMSilAVXOP6DwkJIl73OJdXyWCqAhOWfic9W5UOb5HXpiXueVB5Y6ItB1UDZtAzy0Q1jnmnpXlS2RAPwQgpEPgGJrcPMXEt3AC)BZgtpz6i8m9a56(ZkZlZBaRog(VmHh)GyC8Cua7(3NFMaZCbanjFUMRSlpAP(2dyprXxitMzz9Wso0a)E06TS5gra56Sy1A8iLKX9T5EynZC64Oq95wYoksHjDiFrMczOjTIetMgHLhbrD)wh5PVTTc9(c38ZcvyPC5)mKltcxxE8iU8CqyxvmXEOTvUKV)XskDMm0h3Eqj1WRDh0hyxixNVOnaX)v3ag1)n9(3DhOvzXbeQNY4bYogz)Q9qvHAbTy1IQvX9(F)WNMZnw)Ak4a50So)rcIdDYVijcM25M5eOQoNdw(H0ZqmMJjZMd3EkSWIyi1H)tIXGtSyksKHfG9vVDGKibjhR1pcfh)eQQvYJik0OjNfbG56d4F(5kJ0jqg)Xb4G3IEOa2P73pfCBzbivqwUcEYDtqPmGE5dFyJTpf4FSQzIo5qzw5EEchi2xc6hI8XFSlcYoOZodX)419RvExnhPaA5k87E6iztDkIszwrRUUF6KZIquqac0n7mKqeHVccFYwRGp(fg0pt)kvyQuzM)Q8goTnAAK)ws6rccWqpEBR3jtvZsLUGdZOKTQD6oYYYgABijbtDGeivz)9zVgN2sfHIwopJkefcjZYFRksdQq(tK(i7CoByv09wpmdUHtG(465l6nCu)FFOTBNbkneq249)mf5F3molHg8nbaU4KtB9QwTnBDQ5)RH5RAQ6k1uLNuw3RRhLe9CAu38K6n9CwbkSvdzgG3F9
|
@@ -27,7 +27,7 @@ function(allstates, e, ...)
|
||||
local targetLevel = aura_env.config[keykeyname] or 15
|
||||
local leveldelta = level - targetLevel
|
||||
|
||||
local color, _ = Colorer.Interpolate(leveldelta)
|
||||
local color, _ = aura_env.Colorer.Interpolate(leveldelta)
|
||||
local r = math.floor(color.r * 255)
|
||||
local g = math.floor(color.g * 255)
|
||||
local b = math.floor(color.b * 255)
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---@class Colorer
|
||||
---@field colors table<number, Color>
|
||||
---@field breakpoints table<number>
|
||||
Colorer = {
|
||||
aura_env.Colorer = {
|
||||
--- Make sure colors and breakpoints always have the same number of entries! VERY IMPORTANT!
|
||||
---@type table<number, Color>
|
||||
colors = {
|
||||
@@ -23,23 +23,23 @@ Colorer = {
|
||||
|
||||
---@type table<number, table<number, number>>
|
||||
local bracket = { { 0, 0 }, { 1, 1 } }
|
||||
for i = 1, #Colorer.breakpoints do
|
||||
if value < Colorer.breakpoints[i] then
|
||||
bracket[2] = { i, Colorer.breakpoints[i] }
|
||||
for i = 1, #aura_env.Colorer.breakpoints do
|
||||
if value < aura_env.Colorer.breakpoints[i] then
|
||||
bracket[2] = { i, aura_env.Colorer.breakpoints[i] }
|
||||
break
|
||||
end
|
||||
bracket[1] = { i, Colorer.breakpoints[i] }
|
||||
bracket[1] = { i, aura_env.Colorer.breakpoints[i] }
|
||||
end
|
||||
|
||||
---@type Color
|
||||
local startColor = Colorer.colors[bracket[1][1]]
|
||||
local startColor = aura_env.Colorer.colors[bracket[1][1]]
|
||||
---@type Color
|
||||
local endColor = Colorer.colors[bracket[2][1]]
|
||||
local endColor = aura_env.Colorer.colors[bracket[2][1]]
|
||||
|
||||
local fraction = (value - bracket[1][2]) / (bracket[2][2] - bracket[1][2])
|
||||
|
||||
for k, v in pairs(startColor) do
|
||||
color[k] = Colorer.lerp(v, endColor[k], fraction)
|
||||
color[k] = aura_env.Colorer.lerp(v, endColor[k], fraction)
|
||||
end
|
||||
|
||||
return color, nil
|
||||
@@ -53,7 +53,7 @@ Colorer = {
|
||||
return a * (1 - t) + b * t
|
||||
end
|
||||
}
|
||||
setmetatable(Colorer, { __index = Colorer })
|
||||
setmetatable(aura_env.Colorer, { __index = aura_env.Colorer })
|
||||
|
||||
aura_env.KeystoneIdMap = {
|
||||
[197] = "Eye of Azshara",
|
||||
|
@@ -1,12 +1,12 @@
|
||||
w-- TICKER_500
|
||||
-- TICKER_500
|
||||
function(e)
|
||||
if ActiveSet == nil then
|
||||
ActiveSet = Cooldowns[UnitClass("player")]
|
||||
if ActiveSet == nil then
|
||||
ActiveSet = {}
|
||||
if aura_env.ActiveSet == nil then
|
||||
aura_env.ActiveSet = aura_env.Cooldowns[UnitClass("player")]
|
||||
if aura_env.ActiveSet == nil then
|
||||
aura_env.ActiveSet = {}
|
||||
end
|
||||
end
|
||||
for _, cooldown in ipairs(ActiveSet) do
|
||||
for _, cooldown in ipairs(aura_env.ActiveSet) do
|
||||
if aura_env.debug then print(string.format("Calling update on %s", cooldown.name)) end
|
||||
cooldown:Update()
|
||||
end
|
||||
|
1
FreshShit/PersonalAnnouncer/export
Normal file
1
FreshShit/PersonalAnnouncer/export
Normal file
@@ -0,0 +1 @@
|
||||
!DRrdtjUsY)lu1whuhsbiFOwVDVtDXB1Zf9zWZ7QNVaJjtGznKHAYeuE7j)2VUNjjKqsu4TU7Z3vIqspZ0t)90DsB2WCGPXutdB8dCjpq6Y8OMgxC9GZpTFptdhUN0G9BuZ(nAAAi5wZPcFg3ZSF367wVUPHf3LlG12VH6tt137Q(Uf(TeqnZFMlzXa6JWnVBMPXIlCC8PsZ(W6jEwt4Il5mpyWJ71FqVRmn8PUoHGo6IbdU4ZMgpMync6yGegSygqPsfwTc8L8P4oC9mBIeGhe(ljagGizw3WSLtmnoeUhGAjbm4J8SVKiKWfawyEm8kdB(qncnpkc1iIeKHuV51SP3fmE5O3VCKdX1NU8SLNTZo783TCj((lhDeXNEmN7AZFWtpGdJ6AVCKhzkD5iFPG5no1aomxAHdYWvgm9oQiny)l8I3Lr3bxrjP3oINhpWZIAN)Wc6ucWUWUfJ(ygmflG85xbECK(pefZicY00KwodNMLYzcOnXDeR7nMrPXO6VLEQcQmq4TUunAgE0h06bGrr9zzMDv9gxDn0xz1II(ZLBrCbcem1uibmUMsLej5oxA5V(u1uS96)nCiZZM(OAH5l3YS0NYHgWnVgkhFVsCM)4Ab57dLOzMt8WArDTX(b3vouguc(G)mSuLTCH)f162KL5YFGkuRRigCLbEHmbZjJ9W7XjZanKCc1Rynr2DiKUC4cWVVCPgpE7TVZhzNutnhILQ9M)9UrVRwdN49kfZSj7TND(sL1d7OKgJMb7SS8AeWXckeYZEnVLrpWKtsgLjpHrLcOaTbAQGnjI7L3Kte35fMzIqqWmRNDwro)kx0ZsiPQIXCZjII2xoF3WetZkCWta6uf8OS)mQR7P2heffQs8vvZgJtFct6ap4oxnnMFMqo4joWSTbvlUAfQsU0YHXfkgfzujkCUC0hqbje73oj2bG7wiMsRfcrZFn5Y3z5O)bvoGnLwUssbFsRupUCDIsre5y)8YUZhGophZNoZLk175Z5sUrgCf6EPi81XJI0ZHBsiR(PLJAuFJzgdoyJSDmIueuiFSHUPPaSj(GRU7B1BlPgmRNYZ4Aasa7tGOs5fG9upjv4qSO3ERbop)BVL4sfsFmOBn(4XBsq(cJPwOYj3yTVZhLVlhXDCw57gg3xjovCIoSlSHYCd7wT4nnwlfjqQSPhACdLC)Had6xZWI41Bo1t6xU0LNF4)ziKwF)pQOIyS(QOPrZ7FmA5H(Ww9hKQM4oL7l))mv(YZEATcymWZcpiTYowkQg8nsnbAA5vTya(DFP4u6Rb7WwHuLqLOmzq8Ug9UkoCI6oGj(7OWJcWCEvCej8qkADx)xi)MCWw(YjncIYjcYDqrFrdxPO9nZzg5J9KtRAbXHkELQPG28jS4pvsNwKbpo2Be7DfP8NhZ90K7RO1E(i(nJXosEVDT1pkWX5GcFgvm)dbrWCAINz0k0h448w5PbHKYFE8estUVIEc5J488ea8xBLYT46KED9ycfUrLscCi9XzmXIWN3Ml1swUda9ApMe5LYLqjlveN1u4ZM4SNPo4e8u(LmHzbMOs7ONQexKGA2Sh10MiaJLzRy06BywC5wqEeE2IIWJiYKfGhbB7l(gmMxo6ZCbSyx29W3LUeMqpKSO2L(dR28umz66YBVTLL)mSiGZsF3lBpHvv8nFBLRxyjCPcy8JVi9HuTDZ3CfCfxPw4oS91LLQURVlLwV5ALFGfutdnZ)ERsaGV10jjQ9vUyggDepl(NsE0)h(V45cRscs7DAqL63LbowweOfbvZfFFibYIa6VEAv)sPBicbJlk9RRpuMKrv1wPYqPr9UT72cFTnhohsRqDkAJADQuDZwD3g7JR9iIuI6KJfl2oe0SE72TAJO4c7fipDsWwJIon3VRIiOcFQ4Em672XenBUFtfcC5C77iYj5S(NQUMKgCIUFlL071QbM4sPpse3VC0Lel5wsO1B1T7UigU2dSevUexr95UZPBjI2Vt993dre4Bdrc(ermN6VrudwOIchTB3qj0(eL4kN4l5EBerGHTuRVUssqj2pWqF6qsGMNb4tkFo8DT7aNC5pr9E3H7apMXJbLUUrcgedqDP698h9A41)oudKIU7XWMWSXgcaYrY20ym1Jkywgt4pCHNPHV6xT7lCxWDQLEPG6WE00W4YENF(kWgaNHGhE8HgdgAm4WRgeUx(Mgdo94)zVRg2w18dHefMaXk4lploSDYioPICMmqYZN9zbXEYgf5xW0OpglZlop6k)6leaFZjJxGC(6tVqIDPUXbZ(EyIxygqw4)ZimHF5SBbe83M)T)(rjUUkpTGWsyWdz1N7yfxQ3Z92qJM1bHf9V(XjWxGrK(Dj6RBPKaSLsm0Qdtde7HdeA6Q95mnqQ3Xr3slFQ35xEY1NRx(khbzyV08fLXfAgd8JUvwMthON2N5Glq)DAuhN7dCH9ncYmtJBIVIHjd4rC)xrTXtZoMgFbmJzolmnoV3jdWwYHnvvUuY2Jj0n0JJThuu9uHUH(uloKxbUNygPB(SJdcSzZhBrhqcFjq7CGhommZBHQlFMWfxmlQREqCdzyrH4iWrHymLWgn6eeQwmBC8v961hjIhP26UdQFtDln55WgRXYdk4N0PoeWE)w71UEt4Nw7z6StR9b1dsoFQRZ)UYNDLSkaHmHYgprclODNUWXXD2BVo1B2PDJWfGCclbr6YjQgVsczK5jBQAhRaavXXfvWZaw9WCYa1MbHTSailYmKas)llqUBwGZMpRGnfCDe8GzzG7OBMQmWbhbRSaXEjBnGsDBMzACIG9Blh9ZbeBuRbHuvYiiMBZAn6uBxtJ5GMSvtSPYm)F
|
@@ -7,14 +7,14 @@ aura_env.debug = true
|
||||
---@field isOnCooldown boolean
|
||||
---@field announced boolean
|
||||
---@field remaining number
|
||||
BaseCooldown = {
|
||||
aura_env.BaseCooldown = {
|
||||
---@param id number
|
||||
---@param name string
|
||||
---@param playbackSpeed number?
|
||||
---@return BaseCooldown
|
||||
new = function(id, name, playbackSpeed)
|
||||
local self = setmetatable({}, {
|
||||
__index = BaseCooldown
|
||||
__index = aura_env.BaseCooldown
|
||||
})
|
||||
self.id = id
|
||||
self.name = name
|
||||
@@ -76,57 +76,57 @@ BaseCooldown = {
|
||||
}
|
||||
|
||||
---@class Spell:BaseCooldown
|
||||
Spell = {
|
||||
aura_env.Spell = {
|
||||
---@param id number
|
||||
---@param name string
|
||||
---@param playbackSpeed number?
|
||||
---@return Spell
|
||||
new = function(id, name, playbackSpeed)
|
||||
local obj = BaseCooldown.new(id, name, playbackSpeed)
|
||||
local obj = aura_env.BaseCooldown.new(id, name, playbackSpeed)
|
||||
---@cast obj Spell
|
||||
setmetatable(obj, {
|
||||
__index = Spell
|
||||
__index = aura_env.Spell
|
||||
})
|
||||
return obj
|
||||
end,
|
||||
Update = function(self)
|
||||
BaseCooldown.Update(self, GetSpellCooldown)
|
||||
aura_env.BaseCooldown.Update(self, GetSpellCooldown)
|
||||
end,
|
||||
playComplete = BaseCooldown.playComplete,
|
||||
playSoon = BaseCooldown.playSoon
|
||||
playComplete = aura_env.BaseCooldown.playComplete,
|
||||
playSoon = aura_env.BaseCooldown.playSoon
|
||||
}
|
||||
---@class Item:BaseCooldown
|
||||
Item = {
|
||||
aura_env.Item = {
|
||||
---@param id number
|
||||
---@param name string
|
||||
---@param playbackSpeed number?
|
||||
---@return Item
|
||||
new = function(id, name, playbackSpeed)
|
||||
local obj = BaseCooldown.new(id, name, playbackSpeed)
|
||||
local obj = aura_env.BaseCooldown.new(id, name, playbackSpeed)
|
||||
---@cast obj Item
|
||||
setmetatable(obj, {
|
||||
__index = Item
|
||||
__index = aura_env.Item
|
||||
})
|
||||
return obj
|
||||
end,
|
||||
Update = function(self)
|
||||
BaseCooldown.Update(self, GetItemCooldown)
|
||||
aura_env.BaseCooldown.Update(self, GetItemCooldown)
|
||||
end,
|
||||
playComplete = BaseCooldown.playComplete,
|
||||
playSoon = BaseCooldown.playSoon
|
||||
playComplete = aura_env.BaseCooldown.playComplete,
|
||||
playSoon = aura_env.BaseCooldown.playSoon
|
||||
}
|
||||
---@class Buff:BaseCooldown
|
||||
---@field isActive boolean
|
||||
Buff = {
|
||||
aura_env.Buff = {
|
||||
---@param id number
|
||||
---@param name string
|
||||
---@param playbackSpeed number?
|
||||
---@return Buff
|
||||
new = function(id, name, playbackSpeed)
|
||||
local obj = BaseCooldown.new(id, name, playbackSpeed)
|
||||
local obj = aura_env.BaseCooldown.new(id, name, playbackSpeed)
|
||||
---@cast obj Buff
|
||||
setmetatable(obj, {
|
||||
__index = Buff
|
||||
__index = aura_env.Buff
|
||||
})
|
||||
obj.isActive = false
|
||||
return obj
|
||||
@@ -168,22 +168,22 @@ Buff = {
|
||||
}
|
||||
|
||||
---@type table<BaseCooldown>|nil
|
||||
ActiveSet = nil
|
||||
aura_env.ActiveSet = nil
|
||||
|
||||
---@type table<string, table<BaseCooldown>>
|
||||
Cooldowns = {
|
||||
aura_env.Cooldowns = {
|
||||
["Warrior"] = {
|
||||
Spell.new(107574, "Avatar", 1.6),
|
||||
Spell.new(1719, "Battle Cry", 1.6),
|
||||
Spell.new(205545, "Odyns Fury", 1.6),
|
||||
Spell.new(26297, "Berserking", 1.6),
|
||||
Spell.new(12292, "Bloodbath", 1.6),
|
||||
aura_env.Spell.new(107574, "Avatar", 1.6),
|
||||
aura_env.Spell.new(1719, "Battle Cry", 1.6),
|
||||
aura_env.Spell.new(205545, "Odyns Fury", 1.6),
|
||||
aura_env.Spell.new(26297, "Berserking", 1.6),
|
||||
aura_env.Spell.new(12292, "Bloodbath", 1.6),
|
||||
},
|
||||
["Warlock"] = {
|
||||
Spell.new(108416, "Dark Pact", 1.6),
|
||||
Spell.new(104773, "Unending Resolve", 1.6),
|
||||
Spell.new(196098, "Soul Harvest", 1.6),
|
||||
Item.new(5512, "Healthstone", 1.6),
|
||||
Buff.new(0, "Deadwind Harvester", 1.6),
|
||||
aura_env.Spell.new(108416, "Dark Pact", 1.6),
|
||||
aura_env.Spell.new(104773, "Unending Resolve", 1.6),
|
||||
aura_env.Spell.new(196098, "Soul Harvest", 1.6),
|
||||
aura_env.Item.new(5512, "Healthstone", 1.6),
|
||||
aura_env.Buff.new(0, "Deadwind Harvester", 1.6),
|
||||
}
|
||||
}
|
||||
|
@@ -1 +1 @@
|
||||
!nFvBVTTnq4)l5tPalg2jzTFAdWwwUXfoYEwsRBafsIwKwMnYKAKuoXfd63(o(IKTRNtZ(2qAvipEhVN7fE3LKbjrjHBtcX6)blLviXtFMIvBscg03TF(61sI6pscac7TBmRrS8nCXcoLPsc98dI8xMe(noFR508APIVnI8IkUcJuKKWA3Vnx6sUcPOCMH3tO8ihdmnmoAEs4ku(tfcEnd7Xl5caIbd0seCR57DMV3dF79ZjaiucArbriT8f1rWAAKYYPGHEB)pC)hUfGJKKIwj5IvgnokjSGWicAE4g(ZZzGeMFpmxr3PrpJcAOQeThUVqgAlrRgv3f72zn70nuTrOOBj4oAQ9vanYoI2Fz3yprF5TKTsiRxziewVEn9LKWuVHHrPHXEE(HHwOBWZi39jHaW8hhnmkD28pM6)7qWinoyY0zqmXFCNs94BxHunzZ4fq4RwGImOyu8KjqcazfOnlLh8NTys8mRMA9CJoG3BUPj7vuyZN0mmHlAYK8TKMmbbj5SMm1gydtVQSg1KTdIvu9omNi1hay7zU4PMSRFMQ2asdPe1Wj)AtMXemRm4PjtJF4BvvjLG71R37A(06AwUof6AYp1Kzj1Kz)PKNJaHADSW5ebaVFbSJz(Xlqcjr07JeWJBz46tfNU2jqZFdIWOLgBHDGH2F0gELaEsCnW(7o)CbrvlosocddBorpTyeqhORRcx4pBw6W4LdthUyXSP(JV6skV1i1oik(Y2OnG(DM4)zt9TAYxY0p1f89SFjJtHefKlh)gtKQa4X5)VmU)vC4ct2WSTQeKpd8NfdVTngXv26nx9oltwB)hbzhuYuIAYpWBB2y(4EQZRf5KyxPfm8cZuJo8U(hQjTqqm1Km5La5dI0vD0uATT8YiDzXA2HsXknbmv(vZRvDTveBp8XSjYYMPKCWnqpiGxAoNLMFudGbMgadmnagyAamWWhtremu5VBlRam9E9Dt3ATcDtaWdQmngmL5GkrKdMPRaTKaQdkNdx4weL925EnLrLBEZ8RST3WcE1u2ebhkqVkj8LJAWUcj8UGv3)GvJjsOiPq3AfKVsWleePeIs5u5jnyT38FAjuVAjPao(OELg8PdBGEtH)dxoOq4KvCbMis5oKDFlVWLypQJf7ibgKdmb9(7cBQoEYF1o5doIZDGbSQ00A2rHGla9g(x1ib0izsTUpWN3q1tv44qs)grFrg)7gcTydG47633MfP9qLCKzwhfQeYMng426sfTnZ0s)mY5LiP8mQyk0GohOS)SJeOCY5e5LNtSAx1fukLPN(P6m6Rr5TP0NqhkPKForTl57iQC5eJa1IDtCnE8HmsVx91MBClliKh)WYGzQBv3dcR(u08N2pUTMYkDUMcYwMx1ElAVmNTMwyxdvrgI)kmXbbtWpIErlIClNR2SWLKRZmoLlQ5IfMu7OJtOBtqAFQbs(SDo3BD5gqQJ2nSC6hFamiuz1gK2E1OKRz34VEOlJYMFxlar8l3fpTjlGlGrJOW4Ble7XOV5ejQLTP6YtqKJ8fpe4myfJqIVep9Md7UjulGtoTHO457AlM9H(M0ylmOymbQlhatETS10g5IDDaAujIb32Ab0kbgfgPCgK5r6envRlk0BPVFa4k1yNSF6UyVk)QF7oNY8ElvE1WK05MgBRjzQiXfui121ibGB0uVHZsNgald9nrCm9OmG1q0zsjQagPDEC0SPb(6IMLRp9VZqNpbJY3BW77bWChaJ7VvJKK)5
|
||||
!nFvBVTTnq4)l5tPalgooznFAdWwwU1foYEMwTBafsIw8SnBKf1iPCIlg0V9D8fzNed3M9THKQiD8oE3ZDhp(0KRtwKq2MqyMFXxvvu5dFHZ0BsIUUR)7PRwPa9FMeHcO16nc50knxuQql0jK9U1DlxMJlptWlXfccJweopH8DHyRD1LcjdKdO5pWKIQesyXU4XnzdkOLp491CHMA2BR(VqY9cgKq6hVyk6M8w)tuAQu7cKv8sUAJ7D8vJuctKMxR0yaSmH4FJGkyuxuQhvqxRsitJxmzCuiAwUOmnxuiKOXrxB)TN95n2N3AEA3EnilPfFgKkB0279yOafREf0x6X64Yrs0DMGyjvgCgh09OdyGIQRLunySPskwlbLAMeY5QxKECj))YjOE5CyTpZezRT69vGPQjPOFtX)HBo6WdRGM4QkTvNuf)7GjoA)2vsTXnAe8K(q(rFqNNNX6Abu3xdiVM7WWFzbKm4GeGTgJdYFxtLqt2O6IIMSVSHJaVvdHV)6wxDBdWxVb)8MUiK1s(61yr4iGDcCnZqrXyS1Ux37U9UEys1KqnzpYnOPRHsqYZjBepoffPS)Tp2zTdDDjDl47VRnTsKQc6EtwQUe2bMsSMVfyT9uPB4MUtVSAfKsxQeYL2M2bTj72(pt5yHvYG4rJoShoL8BVzpSEEWbG4JhVcbITlP6MSjI12YOvmPE1k(tjK0G(KfPK4GGqcX0nTexW5Ypgoz2O4jop0MIg43w8SqW07h0Fr6KPFin8ZyBCAC0OXtWU5WHEBe1YCiUn28EgBnTEMmlCYKJq9QRAY(b7yZNmkmsiBYuITy9xcuLOSjtVb)O08wrnTjBN7CwtgtakZciWFuiFOj7Yh56nO14qIACLFVjZgo23SORjZKUXNvvfCG1PtN318Pv1L2rixc)stMtutM7NcrofnQfx46GedVFdXXKW4zuPcKD(aGPANcx(sZ5R8g08pOjL8clwkpQq7pgGxjXPfxIQ)Utxxc45)NzhuYWpEHFAJrm6qFDHn1N2pEE)0(ZMnzC4WloNZBbPjbXzNhJU2JxbX)Zq9Tc5Zb9ZKcEfyWlcwdNVEneu6i8u9)ZbJTU6klUYQB4f2)I6Nzo1zbXfU5rx8oNsoS)ZczFOKPL1W5cON)H9bEe)4b(JJbnJ4AhJnWnM84Ox7CAgx9n7XmZ8uA5E3127Gfo1SJgJUczzG6wiOw(h8Y1srDLLvsDHM3UxAAHzO3RfNxqvQtKY44qWCuY(twssZHtfkkovy1UQZ4uS6KFIWvokjNjW7D6MyUL9vc1(R0hGMW80Dgo8ijIGFiVKUD(vBkXo4DbEpDCfZqFGu7)7tpJNgw(6Z(gQkWa290NmKmS(o4NZ9PMJxXb7hVloOkS6pUbTCRqO3mZtsXCRWl3FEPz)LwQjlEoHK2R4BPhnOLb5ij2K7uLempmmYtntzVMD(4p8rm3TYOeEHpvtnHMnpzAFkzb)q(i(mLfVF8azch5MAjCGxAKqUTvnoJbijHi8cS5EzlAvFSHmi2aaFnGQ0yl8aQ8RXJV64xxrmg4TZKl0I8DTuhVRRLjJjRotUNr)ULLTWMmkQ24W2Joo59SCS5BPTnBT0FpWTXZIqby6czm4zEG3KcgmVLYlF7AFGq9BtFt3NOCfFDlfCdebhbge3dDuATeAfsoESWtgdtPlgh0Fs64i8vsODBy8N9FXWu7TTOAE(d7h2sJBPTmI876C977G9H7Wu1T9mnPj)7d
|
File diff suppressed because it is too large
Load Diff
@@ -7,12 +7,20 @@ function(allstates, e, ...)
|
||||
local spellId, err = CLEUParser.GetSpellId(...)
|
||||
if err then return end
|
||||
|
||||
local eventMap = EventMap[subevent]
|
||||
local spellname, err = CLEUParser.GetSpellName(...)
|
||||
local subevent, err = CLEUParser.GetSubevent(...)
|
||||
aura_env.LogSpell(spellname, spellId, subevent, ...)
|
||||
|
||||
local eventMap = aura_env.EventMap[subevent]
|
||||
if eventMap == nil then return end
|
||||
local alert = eventMap[spellId]
|
||||
if alert == nil then return end
|
||||
|
||||
local err = alert:Trigger(allstates, ...)
|
||||
if err then print(err) end
|
||||
|
||||
-- aura_env.LogSpell = function(spellName, spellId, subevent, ...)
|
||||
-- WeakAurasSaved.Cyka.CLEUExample[#WeakAurasSaved.Cyka.CLEUExample + 1] = varargToString(spellName, spellId, subevent, ...)
|
||||
-- end
|
||||
return true
|
||||
end
|
||||
|
@@ -1,11 +1,11 @@
|
||||
-- TICKER_100
|
||||
function()
|
||||
GUIDUnitMap = {}
|
||||
aura_env.GUIDUnitMap = {}
|
||||
for i = 1, 40 do
|
||||
local unit = string.format("nameplate%d", i)
|
||||
local GUID = UnitGUID(unit)
|
||||
if GUID then
|
||||
GUIDUnitMap[GUID] = unit
|
||||
aura_env.GUIDUnitMap[GUID] = unit
|
||||
end
|
||||
end
|
||||
end
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
IFS=$'\n'; for spell in $(cat spells.txt | grep -P "^#\d+" | sed 's/#//g' | sed 's/!.\+\?$//g'); do grep -P "\[\"$spell-" ../WeakAurasIridian.lua > out/$spell.txt; done
|
||||
IFS=$'\n'; for spell in $(cat spells.txt | grep -P "^#\d+" | sed 's/#//g' | sed 's/!.\+\?$//g'); do grep -P "\[\"$spell-" ../WeakAurasIridian.lua > out/$spell.txt; grep -P "\[\"$spell-" ../WeakAurasPhatphuckdave.lua >> out/$spell.txt; done
|
File diff suppressed because it is too large
Load Diff
@@ -10,3 +10,4 @@ function(e, ...)
|
||||
if err then return end
|
||||
aura_env.LogSpell(spellName, spellId, subevent, ...)
|
||||
end
|
||||
|
@@ -1 +1 @@
|
||||
!nB1AVjoox4)l9lBhPTiGwAh9kTReqHPmIgq1H5Y7hcXe7e8qWoRTdTuTk)23JVeUueZ09BRyM0WXhF8ZZ5YJjQvuyeADeIy(h8QQalx9vgrVmkOtZi0cHKqL9WjRisrreQxo71xXssvCOqKRzGjcvH1LsSMgTicHl1lfYjfAMGRGiQJqSeb3S02jPPkQokaIlMNaUnvW4Gd9heeo4j)H)KqJnB262rwEuqOrOUZcN4xWfVVz9CbaXmPOKt6lYfs4KdAzwiOT9512N3apB0XGPubxpmhNPIqtMfoEuWahoNNCWUBz3Dl7UBz3DllF4AQKJZ)cvQSaT9TrOxoICS1ooyYOASuBErVTaGpxWHNet(cCyUZOIchnrzc(AmJ)(9oLXzQLVB)1U8KPuoIpuc5atDjPuPfRdPVONvqmLruP)VlWY(VnFm8MBBFx7239XoTV56oDUTtu6vDU(GmSnhP0SKvBV3deZPuifzsQsnvstyU82nhvh)URIxU4jAMV5jO1EQHHyb4zo8F4aaGew3Dox4t93u7lee3s7CX1Vzze4eq1DfA9oFs(PnoToWZnabwKtJ6TZcLKbNl6VkXsAv8WY88Q4VUKztIopuSxPMazRclPSSLaIVUzZ9LK()0wpFJBUaBhu14CkxBZcRlHbrlt012pXCsowPoXkHLMYsalBpzjjoHEQrr(Pgl2uCMdLXntKfNypfNupDCKDvbn5uJM82BmQ9no9GJL4LfU)EOVvr7s(b0otjuYJ4xScsj1sr7gfTqJ5FB3iKnSLmqj8A53))BF4JFEL(oZ0tE6B0PE2Pp2gQDPs8AksdT5ytHcPwle6Lt996MgKJXeZoliTD4Hh2xx3Nupx2RwJCO5eSpIqFLIx1f8x9)Mk3sWV61Sumtg4PrF6bGKgcGOfllFT)9(0Kz0UucU8TP9WYUG60vtKyEgfzw170d(wYwnDdi2nmiFZSrvX9YX8vwTDHbyVkeR3lpBiKwKSPwn8UM2UAxqzecLhHcg8ftIdaBklZL3X5flD5Sd4PlLGgmEq)WHp19XbM9SBo1gY(VhbAdySxhz3Y9UBOSgesg0Q6uLqaOch1V745JcGxr2tJtyhC3LwYYYGGTxmYzW8ATml0Wa8nJYPswcAP45jGjL9VDHMVngbvt7gQihV1OjrOlkttDC9HbJNoC24ALlNwSvbJUbakOwMYEbsjthmEC9YEDDRd2PM88aB)HRU)BQQyenrcsIioy3d(txvVlg9fRxG1vXJfzgW6TQzRPK9ybbG2GL5DN9u35DNoD8ObUHU57XqpFmHlw7p5XEDdNpEYNMdL)GW5ZcgoAmmbTBxIszcDMj30ZZJreFIVorC1vvX)Kav9zJddfYQyLyni9kPyLGxfRxcFHBElVexf77oRIjcQYSaq2NfYvvXx(mtVe2n0tucR8NvXw8BFZcPQyZik8SOiNrjnA04dvFoTKB1vUK(7vXotvXUp5IemSP6SgSovcW7paEmEWSPyOZu24tuiD6C4YJ3ol1VHQ)g2cNLB5cFVd1FmeVqcctxcU)HtxhQWLYd2hivcF5OZPgJa6GZ6cBt2rv3lo3HxtstcIrophD103qX)1u99s5Zr9ZKcEdzGBhYONVEbQiAtl()TiZzd6o24RrNbY(vDDaTB(XMDAdT6qOJnZLw(EHt36Ip4CYf4Ff78OowllP)cSB)I9bicSxsyNCPx0BP9woNMK5MA(EPy)pMr9d7uPrWfNN7U6Fdn05M9NjeCfC9M73peHA3O1TnUocTbuhVPT5MJO)5d
|
||||
!nBvBVjooq4)l9lxxPRiGwAxDs3jb0WwwrdOMW(Y9HKyIDs8sWoNTdTuDk)2VXVKcTCS7EF7eTHKXZKzEg)mpMOErHrbBIcW6)GBLviX6ptXQIi)bDJcwXfyIyekDnwWRIcgvsF(zKa3KeY5LkALlKqYtQAbjk4llgHedz0nxmxGy5Ka9QrbOAvbxmVsr5mjKivuqkVKlS3UBEwMKOI8HmIyPGNl4ugSWyp)qVhC54bUcPJ34wATuX3Ot7YkmsbzU299kOyZf8AgESld(90H433C9sZ1RGRDgOZDgNPMuIYLrbZxgoBQVxuanLZItpi6EMO7zIUNj6E6yHAKiyOYprestH1)63uR3ZXqjnCz4CnYOBSaq3OviHsFdUwymgR2vbUkjqUXqXyFKXzeDM2GOSFEVZOmQS4N2FLTPP3HNYMiGgs0Q9Mg)D7dUU4kK4i)MC119VPF)BE)G(xD5Gbxpik7IbxEWoGPhkv0017U1vN6exj45cIuUqqsP2(6vU2QLN8vddqwV6bsUJp5BiYwuHG3fupXW)qcGc5LvGqSe6wIDSK(mX86DpBzFg8abbSR4dOPoFs)U0QEh45wO8xvsIg9IfcohQJG)QgjinjtQllBs(Cb1WBTEWDJcxz3yki08c4Xl7cq(PdMtk5iZelLPj7vM54AyI0uQqGkujHPoYCAjskpYkMMLrtbl7oAjbkLCSrE5XgR2wDIKkRiPhzmdL2om8Vu49p(LO3QEJrLJxmccb7M1U9wqlqsgI)girqWe89ON00kjPm7Ftwz8pEohgAYO5wsGLHmrG2qcnKQaVzEJdN8WW7bLduzvbshvGCdNRkw44YAkWRlkQHRlmm4Wd5TTmH2rrismrIu6jeIogJ6KKQb7dt)WDTQ23rXyclkW37tASP9YaBZAowuVUwwTrQ2RC7YPnjJkrS1o)0b8mNVXQexR46SR4PBBf4UPRHisHZlcivf1pp(2x1smxIc(mbTEiuWYFBHyhg9mSBRxiqbyW2EE0Egt)UVAY(lMexRF9xk(6FU7U3)X1QB0KCDfqEbp3ABigdCbf4lw1Jaa6HthpCw8uF42apZEhMEWXowwN8qn4dvmnQ6uRYmp2EkJolU7cCCubnphQO9kpwdhk5cqaWsoHre00Gc(JZbtsZ3dHAyRvpISfkEqPlJ(e0sx4nBME7EvDwMLuCN3SftwoRvbRTmSFhxyybk6gc(fBwhnVxOvYC348bMell9n7r29VFr2KeqsfGQsBmJ5BwHunjZ45oBWbgJNF)OHHXZM)HyGF5hgV0FY0zWuK3T7Xrau2ACepC5ddJhUyXSPE2PX49jEKRkMID7iML51IuYsDNF0EuEXfnjFNe38rTdt4IMejFdONkiijN1KOkGhy67kRrnjo2BtcMtK6faW9ixSUj58hPQciAG(udR8hnjgCyUZuKnj6Ps4AvvjLG70PZ7A(ywnZqIoN8Rnjwtnj2pL8ueeuBdbwNiGY73bCmZB5ceqIfD(ab6uwho)1HtZCb083qimAPblS9o0(rd8kbiMDo4(7oEDy)SwCqCG8i8WRYtBncvhKRZmCVxTXD2PsEli1nik(0y0Ul)gi(FgQ)Sq(uq)eTG3agqkiNC69lqWrPzV))cmN8L(cAC7rNOKDRAza97((Ud6duD4vNONen49SQs0oI4S3zDY(I)rOZv1jkrn5hu7Mhmx0Ivu9pJWKqqKyVKWl2yqj5eDpw)YOmxZ2lf7(PnYVzMx1cUOYs7jaBjHw3m)Ob)lGdgT)AIOG(D6DDNlJc2cz5Q(6Z)J(Np
|
File diff suppressed because it is too large
Load Diff
@@ -1,16 +1,16 @@
|
||||
-- TICKER_200
|
||||
function()
|
||||
for _, unit in ipairs(Units) do
|
||||
if UnitExists(unit) and not UnitIsDeadOrGhost(unit) and HasDispellableDebuff(unit) then
|
||||
for _, unit in ipairs(aura_env.Units) do
|
||||
if UnitExists(unit) and not UnitIsDeadOrGhost(unit) and aura_env.HasDispellableDebuff(unit) then
|
||||
local unitName = UnitName(unit)
|
||||
local frame = GetFrameFromName(unitName)
|
||||
local frame = aura_env.GetFrameFromName(unitName)
|
||||
if frame == nil then
|
||||
print("Frame not found for " .. unitName)
|
||||
-- Unexpected behavior, bail!
|
||||
return
|
||||
end
|
||||
-- print("Dispel " .. unitName)
|
||||
MakeFrameGlow(frame)
|
||||
aura_env.MakeFrameGlow(frame)
|
||||
end
|
||||
end
|
||||
end
|
@@ -1,4 +1,4 @@
|
||||
-- TICKER_1000
|
||||
function()
|
||||
SetupPartyCache()
|
||||
aura_env.SetupPartyCache()
|
||||
end
|
1
FreshShit/WarlockDispelMaster/export
Normal file
1
FreshShit/WarlockDispelMaster/export
Normal file
@@ -0,0 +1 @@
|
||||
!1IrdZPTn0FlJ76DWTcdiPDD9w3TaLKMmcjd7SCB9QXcBzqPglozzAsBQ)TV3ts2agBcT72rGy)0tVV07l9C64y7yTWXYh)dEKNidzruhRRUXE45Jg4yfWJKwSptDg1PRJLK7TIkIz8iNr)C7JA32XYJhYfWEh1r9xx1VhP(9y8xjqAw8YqYd207HxE2shRhUkiiMkDgb7Ne5nNlUMZIGf7pyK9GXAU6yDQG95u3)mH4lissQRniH3VXw9sIL8fizVzPprcInDff3ijbGtKmVBz(Y5owNaVdq9KGGhJ6zSKiKWdaUSig(KLpFIMEo9YOSJ1W(NL6(Mu3HSPwYKP1Rbp0xT2zH8p1StR21AKErZMn)DjzAin19xJLcw0SNN6oLZdPKOFl9csIGmHgTQvVK4hovqwqJve9lFn9Inw9gqqmlaWD1FQHgoQO2Z3eei7p0zxqD3f0r7c64Db9ceKsyqnbarwK6MaItQRwD0liOYeruUMb6yel8XmmY1J3rIFlCGtddrtYBPttccuQvqsK6eOos6gRfIaUi1LPqPdq0UTtD95Rxo7ti3JeclPiiG3Kn(kFyjvra0iQzPIlWsSg7skwqgDGn9gLEa0yonAxuZ(KP8bKWyQw13fzAKF5mZiFaRQDjzgZR2HYoPi5W4M(Ll2R4AWzJd5a0Bm1v5uU9HCUFCPNXNrLJGTCQGVqV3ToFvuDdZoAbmC6jS2zCVg4r6wZqAwSAp1kQSMxqP2NrMfXJHiE4GLfJoEnJG8cnXSzVgDM9PbWJ(ndy0q)seTwJ(oLpZg))uinE(r5g6C((A4GaZ)vVG1o6)IY0Yq0NuPYiaYTQ9X0YszjsuS8r1220ZsbgDTgTJNv02owzekF3xJPZ6t8MtFpI6h(2KNYGfLSykvSHaoMUGVIII21eFFe)drc1KU1SyOiIXCv7rVN9PT)OoiWF60ixYZz8LKpsvMgS0Z(d4momkWJ2YR51Mi36LhEM(yMldb4UBjvUEFor)Wt6GPQlQY8zsWugcF3rffu25usOCEpIyJqK3PGvEk5nWFTwV)KYq3aTUMDpnepbMyH9qupNmWP2xWYx4324))k(ZlX3AD0lG)9k47XnQM6pPXwxnOAc0FInBbv06KajvuhLJChK9W2Quo(Y162bS9dq6lTi2gjwACiL4kgvSoIpVNQ81SGGVLfqOmtsHgqEr59F0SzQ7p5NSyj0YXzV3eqdBfA0SETbHRU50jJjm)Ze8KLDW(q6LiL8ON5RdO)qLjSl4ilaISUO63oRaf5hvmSsoysarf6yLkRQxpxuQOhknfoSGN8QxvNjTyYZk9X2jnps312Td1ncB)hsTWINRUka8gyPNndUGJ((m25aupczYwFZairU6YgwqtKS7DSM0)el7jw2Nm2o)Ai60pRX9AbvHR11dgomJutMZ8b6kHqx4wyQ(Mp3pwF3e1UIDSSpV)Fmy8KUTBVwaq3X1WtVOshBS)yDZ8mOqeBjHjIRV9ToAuUhpEeJRp4EwSm202UUYqexQx7843sj(xjoBoKdFlu27fcYWC)(mg)ve38Yy3yEP4TiQyVbID87k2Ir9m6VhQD4TWw8Zsi4fIAnr0k7wapbnqQth4MaTATwfpGmT4b)nqfYLupjfiZu6CYkghlanLWc)HNMcMMs2xU4QxezVrN0NQFl6q5nZSt)l7nUnpWrhqAI1W8aMOguoCS0xCgUxVYFZwH77gm86tVzOgP1H2yO)OUfc3ll6C7uafIo70gdp3BEHsIDXDvEWBvLXQ3ypMHdkZtjQpoJM7ucXkkotMh0Jlzf1wJ2LCFQzAoc6mqs1guPAKoGZaverc)RSrd19Low3bshlaOZWbNAJKKHtKbwDJXVymOrCCKt(G(IiyuOyQhpcsec0FbHfD4yNNr)WWhLFWyElrazm(O2L(ssSe9DsWv6n7Ux17U)zXF)lGbu5PcUjejbnhMPxP8K1weR(JhmyKAeuWcxTmBKtsCszrbSz5p7Z2yn4GASYUM9onmWmtSExzBF1LOEDp1xpqRrQkbHCIAODGe7PMJxsOKLDE6fsIJ3bAmojVcabWFIl8VvqwcMHSNqKDS62QZlBDKJ1kqzpUlE878V
|
@@ -1,8 +1,8 @@
|
||||
LCG = LibStub("LibCustomGlow-1.0")
|
||||
---@table <string, boolean>
|
||||
BusyFrames = {}
|
||||
aura_env.BusyFrames = {}
|
||||
|
||||
Units = {
|
||||
aura_env.Units = {
|
||||
"player",
|
||||
"party1",
|
||||
"party2",
|
||||
@@ -13,7 +13,7 @@ Units = {
|
||||
|
||||
---@param unit string
|
||||
---@return boolean, nil|string
|
||||
function HasDispellableDebuff(unit)
|
||||
aura_env.HasDispellableDebuff = function(unit)
|
||||
for i = 1, 20 do
|
||||
local debuff, _, _, _, type = UnitDebuff(unit, i)
|
||||
if debuff == nil then
|
||||
@@ -29,7 +29,7 @@ end
|
||||
|
||||
---@param frame Frame
|
||||
---@return string, nil|string
|
||||
function GetNameFromFrame(frame)
|
||||
aura_env.GetNameFromFrame = function(frame)
|
||||
if frame == nil then
|
||||
return "", "Frame is nil"
|
||||
end
|
||||
@@ -47,43 +47,43 @@ end
|
||||
|
||||
---@param name string
|
||||
---@return Frame|nil
|
||||
function GetFrameFromName(name)
|
||||
return PartyCache[name]
|
||||
aura_env.GetFrameFromName = function(name)
|
||||
return aura_env.PartyCache[name]
|
||||
end
|
||||
|
||||
---@param name string
|
||||
---@return string
|
||||
---@return number
|
||||
function RemoveNamePadding(name)
|
||||
aura_env.RemoveNamePadding = function(name)
|
||||
return string.gsub(name, "|c%w%w%w%w%w%w%w%w", "", 1)
|
||||
end
|
||||
|
||||
function MakeFrameGlow(frame)
|
||||
aura_env.MakeFrameGlow = function(frame)
|
||||
local frameName = frame:GetName()
|
||||
if frame ~= nil and BusyFrames[frameName] == nil then
|
||||
if frame ~= nil and aura_env.BusyFrames[frameName] == nil then
|
||||
---@type Frame
|
||||
---@diagnostic disable-next-line: undefined-field
|
||||
local healthBar = frame.Health
|
||||
if healthBar ~= nil then
|
||||
LCG.PixelGlow_Start(healthBar, {1, 1, 0, 1}, 16, 0.35, 8, 4)
|
||||
BusyFrames[frameName] = true
|
||||
LCG.PixelGlow_Start(healthBar, { 1, 1, 0, 1 }, 16, 0.35, 8, 4)
|
||||
aura_env.BusyFrames[frameName] = true
|
||||
C_Timer.After(1, function()
|
||||
LCG.PixelGlow_Stop(healthBar)
|
||||
BusyFrames[frameName] = nil
|
||||
aura_env.BusyFrames[frameName] = nil
|
||||
end)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
PartyCache = {}
|
||||
function SetupPartyCache()
|
||||
aura_env.PartyCache = {}
|
||||
aura_env.SetupPartyCache = function()
|
||||
for i = 1, 5 do
|
||||
-- /dump _G[string.format("ElvUF_RaidGroup1UnitButton%d", 1)].Name:GetText()
|
||||
local raidFrame = _G[string.format("ElvUF_RaidGroup1UnitButton%d", i + 1)]
|
||||
local name, err = GetNameFromFrame(raidFrame)
|
||||
local name, err = aura_env.GetNameFromFrame(raidFrame)
|
||||
if err == nil then
|
||||
name = RemoveNamePadding(name)
|
||||
PartyCache[name] = raidFrame
|
||||
name = aura_env.RemoveNamePadding(name)
|
||||
aura_env.PartyCache[name] = raidFrame
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@@ -1,14 +1,14 @@
|
||||
-- PLAYER_ENTERING_WORLD GUILD_ROSTER_UPDATE
|
||||
function(e)
|
||||
for interval, ticker in pairs(Tickers) do
|
||||
for interval, ticker in pairs(aura_env.Tickers) do
|
||||
if ticker == 0 then
|
||||
if Debug then print("Creating ticker") end
|
||||
if aura_env.Debug then print("Creating ticker") end
|
||||
local tickerEvent = string.format("TICKER_%d", interval)
|
||||
Tickers[interval] = C_Timer.NewTicker(interval / 1000, function()
|
||||
aura_env.Tickers[interval] = C_Timer.NewTicker(interval / 1000, function()
|
||||
WeakAuras.ScanEvents(tickerEvent)
|
||||
end)
|
||||
else
|
||||
if Debug then print("Ticker already exists") end
|
||||
if aura_env.Debug then print("Ticker already exists") end
|
||||
end
|
||||
end
|
||||
end
|
1
FreshShit/_GlobalTickers/export
Normal file
1
FreshShit/_GlobalTickers/export
Normal file
@@ -0,0 +1 @@
|
||||
!DAvBVjooq4FlBLwjQulxGYlD)W(bwAA32JnWHdh6UvNtCtCaVRXoY2Hw2tx(TFJDiah0UQ6uq5LhpEMXpZBGBHdXOvyuQ9h8QSWWzckgnEw4O7d8XOmPWGy)GIdA1gJmYK1uLMjf4G(Ex55HrKcZsPACUba1GomGQy6Cozti9z4J3NJrBgNLPPgCGvErci)ejtalo0pi0FkgLi5sfS5GwUFTD3VYDVJ9oi6ZhOdfDbyTWn5GNACwjPqBKRSwCwEkXa4fBFc(NCfXWsMZsnlXObW3aAsT)I0gIYu54zmbtVS6D4vlkkvgvPC8NQnJvPksevSU5n0hlwug)XY4mcxtlFy3kHSKVduLBT)U8HY4QRV2YZ7VCGExCaA7xeT7lIcA4a4)P8bWDbh2OylwawSIgd3b4E1rv1EVU4r6AkexlYYypJrrdhGcJqHdMgwlu0swQLCzROqUXcQGQyjOLYNglG97EoaOW1wI2suiBahSfYPym6Zuc3Y26CkNFF62eJAh4YllJNmAWF4pnYLaCFWDrZhpD0nLX3n7(r3enDmcGJMn5MbH(LpKviCXRg0Z3ZdzsvzmKfrvRj8lkJnoc3cvgNtykDJJJfNxgNk3RG6lw2(n)rlRcFUKkovWd3WXzaUDeNRahQXzdvuiJtSOwVNbwMksFDnYLjeET0(wk0fF1qiuSOjCsHm4gNfE)WFfyL3NE2f7p5N)6A94Z)xR3tv2ZWOqi8QAgqFQsGg1Rxg)lLX20mWo74(FIHQVMtjFFayuDtucr4oh6ghCO(jQaONxyvQRM6)DCiCBuLWHas6gqFpZ0g9Rgo(pGUpGBBZP1y0BpLDxzuvH32II66UjkQRUdnXF0imsqwrR7CchISSQgBF2F0KBNnYcxi2xlB22H9BU4ITaKW5vn0wtdRe7lsO4n4YwEUMAsRTVvX(rz8VvqsvedPmom02Idc3cc)3RBP3Uhg9nWXzzBWOr(3A7os5zBBw)PXHHJ)cSnGsE37UJlFKW3Mzz7GlszhmditbNkOfeymB7i0tUUV32ZZRt)p056UETHhDUgNDzNpaRkvPZveyuX8DVvyTZJZUI39pv3DD3HoBKXwuP)QXi3ATsfDHgo13paJwszlwAal1Tx)(D7376R751Ux3wBTeq800QrbbTTZV4sIB0huOPKf5UbIfCdRMQneUn4DmCcNO1NGMYGoQjaYMtwsrsONck5NcMVo)vmk0nn5eWSQzzVIJ3(uLyNMFeOJqz2XKvkQEMikfkVSGBtK1uBCwxpqriH)RaS3veM4Tl9UPSVn5RCAmQDZw9AEfgTgYN602(FcW)7d
|
@@ -1,5 +1,5 @@
|
||||
Debug = false
|
||||
Tickers = {
|
||||
aura_env.Debug = false
|
||||
aura_env.Tickers = {
|
||||
[100] = 0,
|
||||
[200] = 0,
|
||||
[500] = 0,
|
||||
|
Reference in New Issue
Block a user