/
self:Paintshop() |
self:RegisterEvent("UNIT_POWER") |
self:RegisterEvent("GLYPH_ADDED") |
self.UNIT_POWER = self.RefreshPowers |
self.GLYPH_ADDED = self.HowManyShards |
-- update powers at login/zoning in case we have some already |
-- if a power disappears during loading screen, it wont update |
self:RegisterEvent("PLAYER_ENTERING_WORLD") |
end |
-- Refresh the number of shards if playes adds/removes glyph |
function PowerUp:HowManyShards() |
for i=1, NUM_GLYPH_SLOTS do |
local glyph = select(4, GetGlyphSocketInfo(i)) |
if glyph == 45779 then |
db.max = 4 |
self:Workshop() |
self:Paintshop() |
end |
end |
end |
function PowerUp:PLAYER_ENTERING_WORLD() |
self:RefreshPowers("player", powerType) |
end |
-- Setup frames |
function PowerUp:Init() |
db = PowerUpDB |
db.max = 3 |
powerType = "HOLY_POWER" |
powerName = SPELL_POWER_HOLY_POWER |
self:ToggleOverlay() |
self:RegisterEvent("UNIT_POWER") |
self:RegisterEvent("SPELLS_CHANGED") |
self.UNIT_POWER = self.RefreshPowers |
self.SPELLS_CHANGED = self.HowManyHP |
self.prior = 0 |
self:RegisterEvent("PLAYER_ENTERING_WORLD") |
end |
-- Refresh number of Powers if player has passive or not |
function PowerUp:HowManyHP() |
if IsSpellKnown(115675) then |
db.max = 5 |
self:Workshop() |
self:Paintshop() |
else |
db.max = 3 |
end |
end |
local function onUpdate(self, elapsed) |
local p = self:GetProgress() |
self:GetParent().color:SetVertexColor(p, 1-p, 0, db.overlayAlpha) |
-- Create frames |
function PowerUp:Workshop() |
self.bars = {} |
for i=1, db.max do |
local t = self.frame:CreateTexture(nil, "OVERLAY") |
if i == 1 then |