Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function btn:configure(id,posex,posey,sizex,sizey,zzid,message)
- self[id] = CreateFrame("Button", nil, UIParent, "UIPanelButtonTemplate");
- self[id]:SetPoint("CENTER",posex, posey)
- self[id]:SetSize(sizex, sizey)
- self[id]:SetText(message)
- self[id]:Hide();
- self[id]:SetScript("OnClick",function(self, button)
- SendChatMessage(zzzid, "GUILD", nil, 1) end)
- end
- local btn = {};
- -- вместо цикла явная индексация, так как у тебя один фиг ifы
- -- видимо я так понял имеет значение порядок создания кнопок
- btn:configure(1,0,400,300,30,"#zzs","Взять квест");
- btn:configure(2,0,370,300,30,"#zzr","Сдать квест");
- btn:configure(3,0,340,300,30,"#zzz","Взять бонусный квест вне лимита");
- btn:configure(4,0,310,300,30,"#zzy","Сдать бонусный квест вне лимита");
- btn:configure(5,0,280,300,30,"#zzt","Узнать свой гилдлвл");
- local minibtn = CreateFrame("Button", nil, Minimap)
- minibtn:SetFrameLevel(8)
- minibtn:SetSize(32,32)
- minibtn:SetMovable(true)
- --minibtn:SetNormalTexture("Interface/AddOns/NSQuestClient/icon.tga")
- --minibtn:SetPushedTexture("Interface/AddOns/NSQuestClient/icon.tga")
- --minibtn:SetHighlightTexture("Interface/AddOns/NSQuestClient/icon.tga")
- minibtn:SetNormalTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetPushedTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetHighlightTexture("Interface/COMMON/Indicator-Red.png")
- local myIconPos = 0
- -- Control movement
- local function UpdateMapBtn()
- local Xpoa, Ypoa = GetCursorPosition()
- local Xmin, Ymin = Minimap:GetLeft(), Minimap:GetBottom()
- Xpoa = Xmin - Xpoa / Minimap:GetEffectiveScale() + 70
- Ypoa = Ypoa / Minimap:GetEffectiveScale() - Ymin - 70
- myIconPos = math.deg(math.atan2(Ypoa, Xpoa))
- minibtn:ClearAllPoints()
- minibtn:SetPoint("TOPLEFT", Minimap, "TOPLEFT", 52 - (80 * cos(myIconPos)), (80 * sin(myIconPos)) - 52)
- end
- minibtn:RegisterForDrag("LeftButton")
- minibtn:SetScript("OnDragStart", function()
- minibtn:StartMoving()
- minibtn:SetScript("OnUpdate", UpdateMapBtn)
- end)
- minibtn:SetScript("OnDragStop", function()
- minibtn:StopMovingOrSizing();
- minibtn:SetScript("OnUpdate", nil)
- UpdateMapBtn();
- end)
- -- Set position
- minibtn:ClearAllPoints();
- minibtn:SetPoint("TOPLEFT", Minimap, "TOPLEFT", 52 - (80 * cos(myIconPos)),(80 * sin(myIconPos)) - 52)
- pokazat=0
- minibtn:SetScript("OnClick", function()
- if pokazat~=1 then
- ii=6
- btn[ii] = CreateFrame("Button", nil, UIParent, "UIPanelButtonTemplate")
- btn[ii]:SetPoint("CENTER",0,250)
- btn[ii]:SetSize(300, 30)
- btn[ii]:SetText("Закрыть")
- btn[ii]:Hide();
- btn[ii]:SetScript("OnClick", function(self, button)
- for ii=1,6 do
- btn[ii]:Hide();
- end
- pokazat=0
- minibtn:SetNormalTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetPushedTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetHighlightTexture("Interface/COMMON/Indicator-Red.png")
- end)
- for ii=1,6 do
- btn[ii]:Show();
- end
- pokazat=1
- minibtn:SetNormalTexture("Interface/COMMON/Indicator-Green.png")
- minibtn:SetPushedTexture("Interface/COMMON/Indicator-Green.png")
- minibtn:SetHighlightTexture("Interface/COMMON/Indicator-Green.png")
- else
- for ii=1,6 do
- btn[ii]:Hide();
- end
- minibtn:SetNormalTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetPushedTexture("Interface/COMMON/Indicator-Red.png")
- minibtn:SetHighlightTexture("Interface/COMMON/Indicator-Red.png")
- pokazat=0
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement