PHP код:
--------------------------------------------------
-- arena count down
do
--local FlashWindow = FlashWindow or namespace.null
local SendChatMessage = SendChatMessage
local ceil = ceil
local GetGameTime = GetGameTime
local MESSAGE = GetLocale() == "ruRU" and "15 секунд до начала боя на арене!" or "Fifteen seconds until the Arena battle begins!"
local frame = CreateFrame('frame')
local function OnEvent(self,event,...)
if event == "CHAT_MSG_BG_SYSTEM_NEUTRAL" then
local message = ...
if message:find(MESSAGE) then
self.remain = 15
self:Show()
end
elseif event == "PLAYER_ENTERING_WORLD" then
self.remain = nil
self:Hide()
end
end
local function OnUpdate(self,elapsed)
self.remain = self.remain - elapsed
if self.remain <= 0 then
self:Hide()
self.remain = nil
--printf("Battle began at %d:%d",GetGameTime())
--FlashWindow()
elseif self.remain <= 3 then
self.timer:SetFormattedText("%.1f",self.remain)
self.timer:SetTextColor(1,0,0)
else
self.timer:SetText(ceil(self.remain))
self.timer:SetTextColor(1,1,1)
end
end
frame:SetPoint("CENTER",0,180)
frame:SetSize(2,2)
frame.timer = frame:CreateFontString(nil,"BORDER")
frame.timer:SetPoint("CENTER")
frame.timer:SetFont("Fonts\\FRIZQT__.TTF", 24, "OUTLINE")
frame:RegisterEvent("CHAT_MSG_BG_SYSTEM_NEUTRAL")
frame:RegisterEvent("PLAYER_ENTERING_WORLD")
frame:SetScript("OnEvent",OnEvent)
frame:SetScript("OnUpdate",OnUpdate)
frame:Hide()
end