67 lines
1.3 KiB
Lua
67 lines
1.3 KiB
Lua
--DISPLAY
|
|
function()
|
|
local mana = UnitPower("player")
|
|
local maxmana = UnitPowerMax("player")
|
|
return string.format("%.f%%", (mana / maxmana) * 100)
|
|
end
|
|
|
|
--NAME
|
|
function()
|
|
local mana = UnitPower("player")
|
|
local maxmana = UnitPowerMax("player")
|
|
return aura_env.shorten(mana)
|
|
end
|
|
|
|
--UNIT_POWER
|
|
function()
|
|
return true
|
|
end
|
|
|
|
--DURATION
|
|
function()
|
|
local mana = UnitPower("player")
|
|
local maxmana = UnitPowerMax("player")
|
|
return maxmana - mana, maxmana, 1
|
|
end
|
|
|
|
--SPELL_UPDATE_COOLDOWN
|
|
function()
|
|
return true
|
|
end
|
|
|
|
--DURATION
|
|
function()
|
|
local id = 109132
|
|
if IsPlayerSpell(115008) then id = 115008 end
|
|
local charges, maxCharges, start, duration = GetSpellCharges(id)
|
|
if charges >= 2 then
|
|
return 0, 1, 1, 1
|
|
elseif charges == 1 then
|
|
expirationTime = start + duration
|
|
return duration, expirationTime
|
|
elseif charges < 1 then
|
|
return 1, 1, 1, 1
|
|
end
|
|
end
|
|
|
|
--INIT
|
|
aura_env.shorten = function(val)
|
|
local function round(var, n)
|
|
if (n) then
|
|
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
|
else
|
|
var = math.floor(var+0.5)
|
|
end
|
|
return var
|
|
end
|
|
local n = 2
|
|
if val < 1e3 then
|
|
return round(val, n)
|
|
elseif val > 1e3 and val < 1e6 then
|
|
return round(val / 1e3, n) .. "k"
|
|
elseif val > 1e6 and val < 1e9 then
|
|
return round(val / 1e6, n) .. "M"
|
|
elseif val > 1e9 then
|
|
return round(val / 1e9, n) .. "G"
|
|
end
|
|
end |