-- Updated for WoD local trinkets = {} local events = CreateFrame("Frame") function events:ADDON_LOADED(addonName) if addonName ~= "Blizzard_ArenaUI" then return end -- ArenaEnemyFrames:SetScale(1.3) -- ArenaPrepFrames:SetScale(1.3) ArenaEnemyFrame1:ClearAllPoints() ArenaPrepFrame1:ClearAllPoints() local arenaFrame, trinket for i = 1, MAX_ARENA_ENEMIES do arenaFrame = "ArenaEnemyFrame"..i -- _G[arenaFrame]:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -187, -200) -- _G["ArenaPrepFrame"..i]:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -187, -200) trinket = CreateFrame("Frame", arenaFrame.."Trinket", ArenaEnemyFrames) trinket:SetSize(24, 24) trinket:SetPoint("TOPRIGHT", arenaFrame, 32, -6) trinket.icon = trinket:CreateTexture(nil, "BORDER") trinket.icon:SetAllPoints() trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01") trinket.cooldown = CreateFrame("Cooldown", nil, trinket, "CooldownFrameTemplate") trinket.cooldown:SetAllPoints(trinket.icon) trinket.cooldown:SetScript("OnHide", hideTrinket) trinket.lastUsed = nil trinket:Hide() trinkets["arena"..i] = trinket end self:UnregisterEvent("ADDON_LOADED") end function events:UNIT_SPELLCAST_SUCCEEDED(unitID, spell, rank, lineID, spellID) if not trinkets[unitID] then return end if spellID == 59752 or spellID == 42292 then trinkets[unitID]:Show() CooldownFrame_SetTimer(trinkets[unitID].cooldown, GetTime(), 120, 1) trinkets[unitID].lastUsed = GetTime() SendChatMessage("Trinket used by: "..GetUnitName(unitID, true), "PARTY") elseif spellID == 7744 then if not trinkets[unitID]:IsShown() or (GetTime() - trinkets[unitID].lastUsed) > 90 then trinkets[unitID]:Show() CooldownFrame_SetTimer(trinkets[unitID].cooldown, GetTime(), 30, 1) end SendChatMessage("WotF used by: "..GetUnitName(unitID, true), "PARTY") end end function events:PLAYER_ENTERING_WORLD() local _, instanceType = IsInInstance() if instanceType == "arena" then for _, trinket in pairs(trinkets) do trinket:Hide() end self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED") elseif self:IsEventRegistered("UNIT_SPELLCAST_SUCCEEDED") then for _, trinket in pairs(trinkets) do trinket:Hide() end self:UnregisterEvent("UNIT_SPELLCAST_SUCCEEDED") end end SLASH_TESTAEF1 = "/testaef" SlashCmdList["TESTAEF"] = function(msg, editBox) if not IsAddOnLoaded("Blizzard_ArenaUI") then LoadAddOn("Blizzard_ArenaUI") end ArenaEnemyFrames:Show() local arenaFrame for i = 1, MAX_ARENA_ENEMIES do arenaFrame = _G["ArenaEnemyFrame"..i] arenaFrame.classPortrait:SetTexture("Interface\\TargetingFrame\\UI-Classes-Circles") arenaFrame.classPortrait:SetTexCoord(unpack(CLASS_ICON_TCOORDS["WARRIOR"])) arenaFrame.name:SetText("Dispelme") arenaFrame:Show() trinkets["arena"..i]:Show() CooldownFrame_SetTimer(trinkets["arena"..i], GetTime(), 120, 1) end end events:SetScript("OnEvent", function(self, event, ...) return self[event](self, ...) end) events:RegisterEvent("ADDON_LOADED") events:RegisterEvent("PLAYER_ENTERING_WORLD")