From f5e037316a43598d46847eccb39e9745da0174a4 Mon Sep 17 00:00:00 2001 From: Kelly Crabbe Date: Mon, 24 May 2010 22:35:10 +0200 Subject: [PATCH] apparently not all files are present --- LookInTehCorner.toc | 18 ++++++ clock.lua | 50 ++++++++++++++++ compass.lua | 13 ++++ coordinates.lua | 35 +++++++++++ core.lua | 148 ++++++++++++++++++++++++++++++++++++++++++++++ instancing.lua | 44 ++++++++++++++ license | 31 ++++++++++ media/Border4.tga | Bin 0 -> 262188 bytes media/SQUARE.tga | Bin 0 -> 108 bytes media/blank.tga | Bin 0 -> 4140 bytes media/border.tga | Bin 0 -> 16428 bytes media/border2.tga | Bin 0 -> 16428 bytes media/mail.tga | Bin 0 -> 584 bytes media/rounded_square.tga | Bin 0 -> 262188 bytes rightclick.lua | 41 +++++++++++++ todo | 9 +++ tooltip.lua | 76 ++++++++++++++++++++++++ 17 files changed, 465 insertions(+) create mode 100644 LookInTehCorner.toc create mode 100644 clock.lua create mode 100644 compass.lua create mode 100644 coordinates.lua create mode 100644 core.lua create mode 100644 instancing.lua create mode 100644 license create mode 100644 media/Border4.tga create mode 100644 media/SQUARE.tga create mode 100644 media/blank.tga create mode 100644 media/border.tga create mode 100644 media/border2.tga create mode 100644 media/mail.tga create mode 100644 media/rounded_square.tga create mode 100644 rightclick.lua create mode 100644 todo create mode 100644 tooltip.lua diff --git a/LookInTehCorner.toc b/LookInTehCorner.toc new file mode 100644 index 0000000..925291b --- /dev/null +++ b/LookInTehCorner.toc @@ -0,0 +1,18 @@ +## Interface: 30100 +## Title: Look In Teh Corner +## Author: MoonWitch +## Version: 1.2 +## X-eMail: kelly.crabbe@gmail.com +## X-Website: http://other-net.com +## X-Credits: Haste for his oMinimap which acted as the base. Lyn for the name! +## Notes: Square minimap, with coords and the likes :P +## X-Category: Map +## OptionalDeps: Blizzard_TimeManager + +core.lua +clock.lua +compass.lua +coordinates.lua +#tooltip.lua +rightclick.lua +#instancing.lua \ No newline at end of file diff --git a/clock.lua b/clock.lua new file mode 100644 index 0000000..d6e772a --- /dev/null +++ b/clock.lua @@ -0,0 +1,50 @@ +if(not IsAddOnLoaded("Blizzard_TimeManager")) then + LoadAddOn("Blizzard_TimeManager") +end + +local function OnClick(self, button) + if(self.alarmFiring) then + PlaySound("igMainMenuQuit") + TimeManager_TurnOffAlarm() + else + if(button == "RightButton") then + ToggleCalendar() + else + if(not IsAddOnLoaded("Blizzard_Calendar")) then + LoadAddOn("Blizzard_Calendar") + end + ToggleTimeManager() + end + end +end + +LookInTehCorner.CALENDAR_UPDATE_PENDING_INVITES = function() + if(CalendarGetNumPendingInvites() ~= 0) then + TimeManagerClockTicker:SetTextColor(0, 1, 0) + else + TimeManagerClockTicker:SetTextColor(1, .8, 0) + end +end + +TimeManagerClockButton:ClearAllPoints() +TimeManagerClockButton:SetPoint("BOTTOMRIGHT", Minimap, "BOTTOMRIGHT") +TimeManagerClockButton:SetWidth(40) +TimeManagerClockButton:SetHeight(14) +TimeManagerClockButton:GetRegions():Hide() +TimeManagerClockButton:Show() + +select(1, TimeManagerClockButton:GetRegions()):Hide() + +TimeManagerClockTicker:SetPoint("CENTER", TimeManagerClockButton) +TimeManagerClockTicker:SetFont(STANDARD_TEXT_FONT, 12, "THINOUTLINE") +TimeManagerClockTicker:SetTextColor(1, .8, 0) + +TimeManagerAlarmFiredTexture.Show = function() TimeManagerClockTicker:SetTextColor(1, 0, 0) end +TimeManagerAlarmFiredTexture.Hide = function() TimeManagerClockTicker:SetTextColor(1, 1, 1) end + +local clockFlash = select(3, TimeManagerClockButton:GetRegions()) +clockFlash.Show = function() TimeManagerClockTicker:SetTextColor(1, 0, 0) end +clockFlash.Hide = function() TimeManagerClockTicker:SetTextColor(1, .8, 0) end + +-- Event Handlers +TimeManagerClockButton:SetScript("OnClick", OnClick) \ No newline at end of file diff --git a/compass.lua b/compass.lua new file mode 100644 index 0000000..79f3796 --- /dev/null +++ b/compass.lua @@ -0,0 +1,13 @@ +MinimapNorthTag:SetAlpha(0) + +local Compass = CreateFrame("Frame", "Compass", Minimap) +Compass:SetAllPoints() +for dir,anchor in pairs{W = "LEFT", S = "BOTTOM", E = "RIGHT", N = "TOP"} do + local key = Compass:CreateFontString() + key:SetFontObject(GameFontWhite) + key:SetPoint("CENTER", Compass, anchor) + key:SetText(dir) +end + +--Compass:Show() +Compass:Hide() \ No newline at end of file diff --git a/coordinates.lua b/coordinates.lua new file mode 100644 index 0000000..af15477 --- /dev/null +++ b/coordinates.lua @@ -0,0 +1,35 @@ +-- Coordinates for LookInTehCorner + +local Coords = CreateFrame('Button', nil, Minimap) +local coordsf = Coords:CreateFontString(nil, 'OVERLAY') +coordsf:SetPoint('BOTTOMLEFT', Minimap, 'BOTTOMLEFT', 1, 1) +coordsf:SetJustifyH('LEFT') +coordsf:SetWidth(75) +coordsf:SetHeight(12) +coordsf:SetTextColor(1, .8, 0) +coordsf:SetShadowColor(0, 0, 0, .7) +coordsf:SetShadowOffset(1, -1) +coordsf:SetFont(STANDARD_TEXT_FONT, 12, "THINOUTLINE") + +-- Coordinate functions DO NOT TOUCH +local coords = function(self, elapsed) + local x, y = GetPlayerMapPosition('player') + coordsf:SetFormattedText('%.0f,%.0f', x * 100, y * 100) +end + +-- doesn't work +function onClickCoord(self, button) + if(button == 'RightButton') then + ToggleBattlefieldMinimap() + else + ToggleFrame(WorldMapFrame) + end +end + +if (event == 'ZONE_CHANGED_NEW_AREA') then + SetMapToCurrentZone() +end + +Coords:SetScript('OnUpdate', coords) +Coords:SetScript('OnClick', onClickCoord) +Coords:RegisterEvent'ZONE_CHANGED_NEW_AREA' \ No newline at end of file diff --git a/core.lua b/core.lua new file mode 100644 index 0000000..c19501a --- /dev/null +++ b/core.lua @@ -0,0 +1,148 @@ +---------------------------------------------------------------------------------------------------- +-- Look In Teh Corner! -- +-- Big thanks to haste"s oMinimap on which this is based. +-- I mainly added coordinates, changed some positions, +-- but as per his copyright thingie, the addon has changed name. +-- I would like to thank Lyn for the awesome name. +---------------------------------------------------------------------------------------------------- + +-- Configuration and lessening the typing strains of the world. +--local color = RAID_CLASS_COLORS[select(2, UnitClass("Player"))] -- if you don"t want classcolored borders, then you can comment this out (add -- in front) +local color = {.6, .6, .6, 1} -- uncomment and alter values for a set color ( {r, g, b, a} ) +local font = "Fonts\\ARIALN.ttf" +local scale = 1.1 + +-- Global fluff +function GetMinimapShape() return "SQUARE" end + +-- Frame creation +local LookInTehCorner = CreateFrame("Frame", "LookInTehCorner", Minimap) + +local frames = { + MinimapBorder, + MinimapBorderTop, + MinimapToggleButton, + MinimapZoomIn, + MinimapZoomOut, + MiniMapTrackingBackground, + MiniMapBattlefieldBorder, + MiniMapMeetingStoneFrame, + MiniMapVoiceChatFrame, + MiniMapWorldMapButton, + MiniMapMailBorder, + BattlegroundShine, + MiniMapZoneTextButton, + MiniMapLFGFrameBorder, + GameTimeFrame +} + +-- Frame fluff +LookInTehCorner.PLAYER_LOGIN = function(self) + Minimap:ClearAllPoints() + Minimap:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -15, -15) + Minimap:SetMovable(true) + Minimap:SetUserPlaced(true) + Minimap:EnableMouse(true) + Minimap:RegisterForDrag("LeftButton") + Minimap:SetScript("OnDragStart", function(self) self:StartMoving() end) + Minimap:SetScript("OnDragStop", function(self) self:StopMovingOrSizing() end) + Minimap:SetFrameLevel(2) + + --self:SetParent(Minimap) + self:SetAllPoints(Minimap) + self:SetWidth(Minimap:GetWidth()*scale) + self:SetHeight(Minimap:GetHeight()*scale) + self:SetFrameLevel(1) + self:SetFrameStrata("BACKGROUND") + + Minimap:SetScale(scale) + Minimap:SetMaskTexture("Interface\\ChatFrame\\ChatFrameBackground") + Minimap:SetBackdrop({bgFile = "Interface\\ChatFrame\\ChatFrameBackground", insets = { + top = -2 / scale, + left = -3 / scale, + bottom = -2 / scale, + right = -2 / scale + }}) + Minimap:SetBackdropColor(r, g, b, a) + +-- mousewheel scrolling + Minimap:EnableMouseWheel() + Minimap:SetScript("OnMouseWheel", function(self, dir) + if(dir > 0) then + Minimap_ZoomIn() + else + Minimap_ZoomOut() + end + end) + +-- Tracking menu changes + MiniMapTrackingIconOverlay:SetAlpha(0) + MiniMapTrackingButtonBorder:Hide() + MiniMapTrackingIcon:SetTexCoord(0.065, 0.935, 0.065, 0.935) + MiniMapTracking:SetParent(Minimap) + MiniMapTracking:ClearAllPoints() + MiniMapTracking:SetScale(.8) + MiniMapTracking:SetPoint("TOPLEFT", -2, 2) + +-- PvP Icon + MiniMapBattlefieldFrame:SetParent(Minimap) + MiniMapBattlefieldFrame:ClearAllPoints() + MiniMapBattlefieldFrame:SetPoint("TOPRIGHT", -2, -2) + +-- Mail icon changes + MiniMapMailIcon:SetTexture("Interface\\AddOns\\LookInTehCorner\\media\\mail") -- remove this line if you want the default mail icon to show + MiniMapMailFrame:ClearAllPoints() + MiniMapMailFrame:SetPoint("BOTTOM", Minimap,"BOTTOM") + +-- Minimap zone text stuff. + --MinimapZoneText:Hide() -- remove -- if you want to hide the ZoneText and add -- in front of the following lines. + MinimapZoneText:SetDrawLayer"OVERLAY" + MinimapZoneText:ClearAllPoints() + MinimapZoneText:SetPoint("LEFT", Minimap, 5, 0) + MinimapZoneText:SetPoint("RIGHT", Minimap, -5, 0) + MinimapZoneText:SetPoint("BOTTOM", Minimap, "TOP", 0, 5) + MinimapZoneText:SetFont(font, 11) + MinimapZoneText:SetJustifyH("CENTER") + +-- World PvP Frame + if (WorldStateCaptureBar) then + WorldStateCaptureBar:ClearAllPoints() + WorldStateCaptureBar:SetPoint("TOP", UIParent, "TOP", -75, -50) + WorldStateCaptureBar.SetPoint = function() end + WorldStateCaptureBar.ClearAllPoints = function() end + end + + -- shitty 3.3 flag to move + MiniMapInstanceDifficulty:ClearAllPoints() + MiniMapInstanceDifficulty:SetParent(Minimap) + MiniMapInstanceDifficulty:SetPoint("TOPRIGHT", Minimap, "TOPRIGHT", 0, 0) + MiniMapInstanceDifficulty:SetScale(.7) + + -- LFG Eye + MiniMapLFGFrame:ClearAllPoints() + MiniMapLFGFrame:SetParent(Minimap) + MiniMapLFGFrame:SetPoint("TOP", Minimap, 0, 0) + MiniMapLFGFrame:SetScale(1) + MiniMapLFGFrameBorder:Hide() + + --[[ Quest Watcher Frame + WatchFrame:ClearAllPoints() + WatchFrame.ClearAllPoints = function() end + WatchFrame:SetPoint("TOPLEFT", UIParent, "TOPLEFT", 20, -15) + WatchFrame.SetPoint = function() end + WatchFrame:SetClampedToScreen(true) +--]] +-- Frame hiding + for _, frame in pairs(frames) do + frame:Hide() + end + frames = nil + + self:UnregisterEvent"ADDON_LOADED" +end + + +-- Event handling +LookInTehCorner:SetScript("OnEvent", function(self, event, ...) self[event](self) end) +LookInTehCorner:RegisterEvent"PLAYER_LOGIN" +LookInTehCorner:RegisterEvent"CALENDAR_UPDATE_PENDING_INVITES" \ No newline at end of file diff --git a/instancing.lua b/instancing.lua new file mode 100644 index 0000000..9ff4196 --- /dev/null +++ b/instancing.lua @@ -0,0 +1,44 @@ +--[[ Instance Difficulty - should work now finally taken from Wanderlust by Ichik]] + +local _, class = UnitClass("player") +local color = RAID_CLASS_COLORS[class] +local id = CreateFrame("Frame", nil, UIParent) +LookInTehCorner:RegisterEvent("PLAYER_ENTERING_WORLD") +LookInTehCorner:RegisterEvent("PLAYER_DIFFICULTY_CHANGED") + +local idtext = id:CreateFontString(nil, "OVERLAY") +idtext:SetPoint("TOPRIGHT", Minimap, "TOPRIGHT", 0, -4) +idtext:SetFont("Fonts\\FRIZQT__.ttf", 14, "THINOUTLINE") +idtext:SetTextColor(color.r, color.g, color.b) + +function indiff() + local instance, instancetype = IsInInstance() + local _, _, difficultyIndex, _, _, playerDifficulty, isDynamic = GetInstanceInfo() + if instance and instancetype == "raid" then + if isDynamic and difficultyIndex == 1 then + if playerDifficulty == 0 then + idtext:SetText("10") end + if playerDifficulty == 1 then + idtext:SetText("10H") end + end + if isDynamic and difficultyIndex == 2 then + if playerDifficulty == 0 then + idtext:SetText("25") end + if playerDifficulty == 1 then + idtext:SetText("25H") end + end + if not isDynamic then + if difficultyIndex == 1 then + idtext:SetText("10") end + if difficultyIndex == 2 then + idtext:SetText("25") end + if difficultyIndex == 3 then + idtext:SetText("10H") end + if difficultyIndex == 4 then + idtext:SetText("25H") end + end + end + if not instance then + idtext:SetText("") end +end +id:SetScript("OnEvent", function() indiff() end) \ No newline at end of file diff --git a/license b/license new file mode 100644 index 0000000..3295bc0 --- /dev/null +++ b/license @@ -0,0 +1,31 @@ +--[[------------------------------------------------------------------------- + Copyright (c) 2006, Trond A Ekseth + Copyright (c) 2008, Kelly Crabbé + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of pMinimap nor the names of its contributors + may be used to endorse or promote products derived from this + software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +---------------------------------------------------------------------------]] \ No newline at end of file diff --git a/media/Border4.tga b/media/Border4.tga new file mode 100644 index 0000000000000000000000000000000000000000..5205da5dfea05b6527318e559328b02005ede28e GIT binary patch literal 262188 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 kIsd=rx!?Z((d$2cOV literal 0 HcmV?d00001 diff --git a/media/SQUARE.tga b/media/SQUARE.tga new file mode 100644 index 0000000000000000000000000000000000000000..38f05c3e9eca29bd6eef93ae2ce10b5b7f8138e4 GIT binary patch literal 108 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 eRmWNT5A4Lr% literal 0 HcmV?d00001 diff --git a/media/rounded_square.tga b/media/rounded_square.tga new file mode 100644 index 0000000000000000000000000000000000000000..833101d9dba16bacf2b981a7cd9d3a84013d6b8d GIT binary patch literal 262188 zcmeI&ORC&P6adh61}0;#AYMSS3kM7#hWyAf3?6t3UaO~`$59b(d?{3|f2$>(22rK@ z+^Ra#eSZD$?e^X6|IdrtiyyxK`t|Frx?XnopS#P40Da=zq$ z`A$%NFYqBi;5q^&=i_gE<-36o0Rq<%C^_%%{MUKjPD+3P0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ zzV9oFCYsPvo zgXIViSRl}s`+aQ-mN1n7fgJ>%EsvjVKRY}UOA5^Ap%oV2!++6JyStEgi%ra72N~qbQf0p~Ps#$?Z{(a><(Y+%00(Yq%$H zWr3j_EB*Jz)cyCy&T(El-kd#{LtsyVHF97{jG?(p`-^Rkk?VW9TbsZm1-5+e=f)m8 zFOSRhIeumS(in5rHHW}i1g7TC)bZgI^P-IQIc1KK>vLk6L*NJkTfFBvX0ET{(HF0@ z<*T($-`v*NXrD7D<|?l%aOU^s-q~7xt@ge*d%Z?p ze~tKJ5V$8$zkm0}9GEbjaIqb3U7f%jfu%XQbpD(@Pn|Pn zk7LG6U3X}FSu?Mj>v`_f_B>aez*+*W_i(NFInE>3%ImICkG)4(V&;0iM)XCQ$LF@z zyt;kpzQl~Uxjr;c|FHz(86RuccAEuqe%8;kzR&ae>V4z;+WO{dBXD(rF}X5kOgPqK z>-!kjDu>1o^|#_`CqUrw0y$r!9%bH5Ut8`UQ(q&-n01VKZh^7y!Ps%necJoG8+*pF z*TTA(lY``WhNhxh~tJWgP2j+b#`$3AZNRw6)P3jw*lg{qhYo=ZTUKiBh^ zvYWM^-P-Y{oaGtEUcuuEXMDzYYmYs7)_bV$zozHD|1+=y0t5&UAh3sk-vRbew2YK;Rex zCFe`--@5DLF}7@%1PH7oP;$QHez{(E*Qf6CAwb~#0wvc=&PV>2@>O@e@2>KDLHTar zLx8|}1WHbq+%7p@ay{pMu9xowdKYsi3&0lYSfBWv&AOHUO K?JsYBy8R1E3= 1 then return r3, g3, b3 elseif perc <= 0 then return r1, g1, b1 end + + local segment, relperc = math_modf(perc*2) + if segment == 1 then r1, g1, b1, r2, g2, b2 = r2, g2, b2, r3, g3, b3 end + return r1 + (r2-r1)*relperc, g1 + (g2-g1)*relperc, b1 + (b2-b1)*relperc +end + +local function formats(value) + if(value > 999) then + return format('%.1f MiB', value / 1024) + else + return format('%.1f KiB', value) + end +end + +------------------------ +-- Tooltip! -- +------------------------ + +local onEnter = function(self) + GameTooltip:SetOwner(TimeManagerClockButton, "ANCHOR_BOTTOMRIGHT") + + local fps = GetFramerate() + local r, g, b = ColorGradient(fps/75, 1,0,0, 1,1,0, 0,1,0) + GameTooltip:AddDoubleLine("FPS:", string_format("%.1f", fps), nil,nil,nil, r,g,b) + + local _, _, lag = GetNetStats() + local r, g, b = ColorGradient(lag/1000, 0,1,0, 1,1,0, 1,0,0) + GameTooltip:AddDoubleLine("Lag:", lag.. " ms", nil,nil,nil, r,g,b) + + GameTooltip:AddLine(" ") + + local addons, addon, total = {}, {}, 0 + + for i=1, GetNumAddOns() do + addon = {GetAddOnInfo(i), GetAddOnMemoryUsage(i)} + table.insert(addons, addon) + total = total + GetAddOnMemoryUsage(i) + end + + table.sort(addons, (function(a, b) return a[2] > b[2] end)) + + UpdateAddOnMemoryUsage() + + for i,addons in pairs(addons) do + if addons[2] > MEMTHRESH then + local r, g, b = ColorGradient((addons[2] - MEMTHRESH)/768, 0,1,0, 1,1,0, 1,0,0) + local memstr = addons[2] > 1024 and string_format("%.1f MiB", addons[2]/1024) or string_format("%.1f KiB", addons[2]) + GameTooltip:AddDoubleLine(addons[1], memstr, 1,1,1, r,g,b) + end + end + + GameTooltip:AddLine(" ") + + local r, g, b = ColorGradient(total/(40*1024), 0,1,0, 1,1,0, 1,0,0) + GameTooltip:AddDoubleLine("Addon memory:", string_format("%.2f MiB", total/1024), nil,nil,nil, r,g,b) + + local mem = collectgarbage("count") + local r, g, b = ColorGradient(mem/(20*1024), 0,1,0, 1,1,0, 1,0,0) + GameTooltip:AddDoubleLine("Default UI memory:", string_format("%.2f MiB", (gcinfo()-total)/1024), nil,nil,nil, r,g,b) + + GameTooltip:AddLine(" ") + + GameTooltip:Show() +end + +TimeManagerClockButton:SetScript("OnEnter", onEnter) +TimeManagerClockButton:SetScript("OnLeave", function() GameTooltip:Hide() end) \ No newline at end of file -- 1.7.9.5