PHP код:
CTT=CreateFrame("Frame")CTT:SetParent(TargetFrame)CTT:SetPoint("Left",TargetFrame,170,-16)CTT:SetSize(20,20)CTT.t=CTT:CreateTexture(nil,BORDER)CTT.t:SetAllPoints()CTT.t:SetTexture("Interface\\Icons\\ABILITY_DUALWIELD")CTT:Hide()
local function FrameOnUpdate(self) if UnitAffectingCombat("target") then self:Show() else self:Hide() end end local g = CreateFrame("Frame") g:SetScript("OnUpdate", function(self) FrameOnUpdate(CTT) end)
CFT=CreateFrame("Frame")CFT:SetParent(FocusFrame)CFT:SetPoint("Left",FocusFrame,170,-15)CFT:SetSize(20,20)CFT.t=CFT:CreateTexture(nil,BORDER)CFT.t:SetAllPoints()CFT.t:SetTexture("Interface\\Icons\\ABILITY_DUALWIELD")CFT:Hide()
local function FrameOnUpdate(self) if UnitAffectingCombat("focus") then self:Show() else self:Hide() end end local g = CreateFrame("Frame") g:SetScript("OnUpdate", function(self) FrameOnUpdate(CFT) end)
local trinkets = {}
local events = CreateFrame("Frame")
function events:ADDON_LOADED(addonName)
if addonName ~= "Blizzard_ArenaUI" then
return
end
ArenaEnemyFrame1:ClearAllPoints()
ArenaEnemyFrame1:SetPoint("CENTER", nil, "CENTER", 295.0, 40.0)
ArenaEnemyFrames:SetScale(1.2)
local arenaFrame, trinket
for i = 1, MAX_ARENA_ENEMIES do
arenaFrame = "ArenaEnemyFrame"..i
trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
trinket:SetPoint("TOPRIGHT", arenaFrame, 30, -6)
trinket:SetSize(30, 30)
trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
trinket.icon:SetAllPoints()
trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
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 spell == GetSpellInfo(59752) or spell == GetSpellInfo(42292) then
CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 120, 1)
SendChatMessage("Trinket used by: "..GetUnitName(unitID, true), "PARTY")
elseif spell == GetSpellInfo(7744) then
CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 45, 1)
SendChatMessage("WotF used by: "..GetUnitName(unitID, true), "PARTY")
end
end
function events:PLAYER_ENTERING_WORLD()
local _, instanceType = IsInInstance()
if instanceType == "arena" then
self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
elseif self:IsEventRegistered("UNIT_SPELLCAST_SUCCEEDED") then
self:UnregisterEvent("UNIT_SPELLCAST_SUCCEEDED")
for _, trinket in pairs(trinkets) do
trinket:SetCooldown(0, 0)
trinket:Hide()
end
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, 3 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()
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")
hooksecurefunc("PlayerFrame_UpdateStatus", function()
if IsResting("player") then
PlayerStatusTexture:Hide()
PlayerRestIcon:Hide()
PlayerRestGlow:Hide()
PlayerStatusGlow:Hide()
elseif PlayerFrame.inCombat then
PlayerStatusTexture:Hide()
PlayerAttackIcon:Hide()
PlayerRestIcon:Hide()
PlayerAttackGlow:Hide()
PlayerRestGlow:Hide()
PlayerStatusGlow:Hide()
PlayerAttackBackground:Hide() end end)
MainMenuBarLeftEndCap:Hide();MainMenuBarRightEndCap:Hide()
PlayerFrame:SetScale(1.0)
PartyMemberFrame1:SetScale(1.3)
PartyMemberFrame2:SetScale(1.3)
PartyMemberFrame3:SetScale(1.3)
PartyMemberFrame4:SetScale(1.3)
TargetFrame:SetScale(1.0)
FocusFrame:SetScale(1.0)
ArenaEnemyFrame1:SetScale(1.6)
ArenaEnemyFrame2:SetScale(1.6)
ArenaEnemyFrame3:SetScale(1.6)
ArenaEnemyFrame1PetFrame:SetScale(1.6)
ArenaEnemyFrame3PetFrame:SetScale(1.6)
ArenaEnemyFrame2PetFrame:SetScale(1.6)
выглядят новые фреймы арены так