--[[ |
##AddOn : impMotD |
##Subfile : CooldownIconsR_Range.lua |
##Author : Hati-EK |
--]] |
|
--Carryframe |
local imotd = CreateFrame('Frame','Improved_MotD_Frame',UIParent) |
imotd:SetWidth(300) |
imotd:SetHeight(100) |
imotd:SetPoint("CENTER",UIParent,"CENTER",0,0) |
imotd:SetFrameStrata("TOOLTIP") |
--Background Texture (Pure Black) |
imotd.bg = imotd:CreateTexture(imotd:GetName().."_Texture") |
imotd.bg:SetTexture(0,0,0,1) |
imotd.bg:SetAllPoints(imotd) |
--Guildname |
imotd.gname = imotd:CreateFontString(imotd:GetName().."_GuildName", "ARTWORK") |
imotd.gname:SetPoint("TOP", imotd, "TOP", 0, 0) |
imotd.gname:SetFont("Fonts\\FRIZQT__.TTF",16,"OUTLINE") |
imotd.gname:SetTextColor(0, 1, 0) |
imotd.gname:SetText(imotd.g) |
imotd.gname:SetWidth(300) |
imotd.gname:Show() |
--MotD |
imotd.text = imotd:CreateFontString(imotd:GetName().."_Text", "ARTWORK") |
imotd.text:SetPoint("TOPLEFT", imotd, "TOPLEFT", 0, -18) |
imotd.text:SetFont("Fonts\\FRIZQT__.TTF",12,"OUTLINE") |
imotd.text:SetTextColor(0, 1, 0) |
imotd.text:SetText() |
imotd.text:SetWidth(300) |
imotd.text:Show() |
--Ok/Cancel Button |
imotd.okBtn = CreateFrame("Button",imotd:GetName().."_OkBtn",imotd) |
imotd.okBtn:SetWidth(50) |
imotd.okBtn:SetHeight(10) |
imotd.okBtn:SetPoint("BOTTOM", imotd ,"BOTTOM", 0, 0) |
--[[ unnecessary |
imotd.okBtn.t = imotd.okBtn:CreateTexture(imotd.okBtn:GetName().."_Texture") |
imotd.okBtn.t:SetAllPoints(imotd.okBtn) |
imotd.okBtn.t:SetTexture(0,0,0,1)]] |
imotd.okBtn.txt = imotd.okBtn:CreateFontString(imotd.okBtn:GetName().."_Text","ARTWORK") |
imotd.okBtn.txt:SetPoint("Center", imotd.okBtn, "Center",0,0) |
imotd.okBtn.txt:SetFont("Fonts\\FRIZQT__.TTF",12,"OUTLINE") |
imotd.okBtn.txt:SetTextColor(1,1,1) |
imotd.okBtn.txt:SetText("Ok") |
imotd.okBtn:RegisterForClicks("AnyUp") |
imotd.okBtn:SetScript("OnClick", |
function(self, button, down) |
imotd:Hide() |
end) |
|
|
--#Script |
--GetGuildName After Init - as this is delayed |
local counter = 0 |
imotd:SetScript('OnUpdate',function(self,elapsed) |
if not self.lastUpdate then |
self.lastUpdate=0 |
end |
self.lastUpdate = self.lastUpdate+elapsed |
while (self.lastUpdate > 1) do |
counter=counter+1 |
local guild = GetGuildInfo('player') |
if guild then |
self.gname:SetText(guild.."-MotD") |
self.text:SetText(GetGuildRosterMOTD()) |
self:SetScript('OnUpdate',nil) |
return |
--player has no Guild |
elseif counter>100 then |
self:SetScript('OnUpdate',nil) |
return |
end |
self.lastUpdate = self.lastUpdate - 1 |
end |
end) |
--Show if MotD changes |
function imotd:GUILD_MOTD(motd) |
local guild = GetGuildInfo('player') |
if guild then |
self.gname:SetText(guild) |
end |
self.text:SetText(motd) |
self:Show() |
end |
|
imotd:RegisterEvent('GUILD_MOTD') |
imotd:SetScript('OnEvent',function(self,event,...) |
self[event](self,...) |
end) |
|
|
|