Gadgets on a Stick
Granted, this won't affect your riding speed, like carrot on a stick. But It'll make your characters life easier! Gadgets on a Stick is a very lightweight, highly modular, yet pretty customizable collection of small things anyone needs, combined in one addon.
Features
* config via config.lua
* auto repair and selling of grey crap
* buy a full stack of some vendor crap with ALT + click (to fill up reagents, fast ...)
* sets camera distance to max (if you zoom out...)
* allows you to change your screenshots quality (via config)
* filter error messages you can add exceptions via /error
* adds the following slash commands
- reload ui = /rl
- ready check = /rc
- Need to speak with a GM? = /ticket or /gm
- calendar = /cl or /calendar
* several Gadgets (think of modules...)
Gadgets
* minimap (middle mouse click on the map allows you to choose your tracking type, right click will open your calendar)
* zone text
* bags
* money
* fps
* latency and memory
* clock (including wintergrasp timer and calendar on click)
* durability
* compass
* gold
* tooltip
* viewport (including customizable texture overlay, colors, etc.)
General Gadget Notes
* gadgets (including minimap) are moveable, by holding down ALT
* gadgets can be enabled/disabled separately
* gadgets can either have a custom set border color or a class colored border
- it only loads what you choose to load, saves memory and displays only what you want to see
* you can choose to show/hide the border and backgrounds of gadgets
* gadgets can be set to show/hide on mouseover separately, except minimap (always visible)
* gadget positions are saved in your characters layout-local.txt
- you can either edit this file or delete it, to change/reset positions you don't want or messed up (you have to log out if you want to edit/delete the file)
note: Gadgets will not trigger mouseover fading, you have to mouseover the top edge of your screen.
FAQ
1. Where'z teh options?
Take a look into your World of Warcraft folder: Interface\Addons\dSidebar\config.lua. You can open this file with Wordpad, Notepad or any other text editor. I recommend Notepad++ - it's free, google it. The config is fairly well commented, just take your time to read through it.
note: If you change anything in config.lua, you have to reload your interface, either via /rl or a relog.
ToDo
* fix minimap sticking to the mouse while moving - for now, place the map, stop moving and type /rl
* fix tooltip error when you mouse over a player in a vehicle unit...
Credits
Alleykat - wintergrasp timer implementation idea
Vrul - parts of compass code
Config
The layout's setup code below can be found in "AddOns\GadgetsOnAStick\config.lua". You can edit and save your changes via Wordpad, Notepad or something similar. I recommend getting Notepad++ (it's a free editor, google it).
Code:
------------
-- colors --
------------
cfg.maincolor = {44/255, 40/255, 67/255} -- bar and panel color
cfg.sndcolor = {208/255, 172/255, 146/255} -- font color
cfg.trdcolor = {90/255, 110/255, 120/255} -- wintergrasp timer bar color
cfg.brdcolor = {80/255, 80/255, 80/255} -- border color
cfg.CreateGadgetBGandBorder = true -- show/hide gadget border and background
cfg.GadgetsClassColorBorder = false -- enable class coloured gadget border (instead of "brdcolor")
-----------
-- media --
-----------
cfg.BarTex = mediaFolder.."dM3" -- bar texture
cfg.PanelTex = mediaFolder.."dM3" -- texture
cfg.ViewportTex = mediaFolder.."dM3" -- texture
-- border texture, can be - dEBorderD = round edges, dEBorderE = solid 2px border + 1px inline and 1px outline (default), dEBorderF = solid 2px border
cfg.BorderTex = mediaFolder.."dEBorderE"
cfg.MaskTex = mediaFolder.."mask" -- don't touch this ...
cfg.Font = mediaFolder.."Prototype.ttf" -- font
cfg.FS = 10 -- font size
cfg.FontF = "THINOUTLINE" -- fontF = nil -- use "OUTLINE MONOCHROME" for pixel fonts
--------------
-- settings --
--------------
cfg.ScreenshotQuality = 10 -- quality of screenshots, can be 1-10, format will be jpg
-- enable/disable gadgets - true/false (on/off)
cfg.showBags = true
cfg.showClock = true
cfg.showCompass = false
cfg.showDurability = true
cfg.showFPS = true
cfg.showGold = true
cfg.showLatencyMemory = true -- latency and memory gadget, memory shows on mouseover, it can be cleaned (garbage collected) via mouseclick
cfg.showViewport = true
cfg.showZone = true
cfg.useMinimap = true
cfg.useTooltip = true
cfg.FilterErrors = true -- filter error messages (like "spell is not ready", etc.)
------------------------------------------------------------------------------------------------------------------------------
-- Mouseover - if enabled, gadgets will be shown on mouseover, only - they will fade in fast and fade out slowly by default --
------------------------------------------------------------------------------------------------------------------------------
cfg.FadeGadgets = true -- fade gadgets in/out (required, as long as you choose not to mouseover all, but at least one gadget)
cfg.timeToFadeIN = 0.8 -- time in seconds to fade IN the gadgets
cfg.timeToFadeOUT = 10 -- time in seconds to fade OUT the gadgets
cfg.startAlpha = 0.0 -- think of "minimum alpha" - that's where the FadeIN starts at, and the FadeOUT ends at
cfg.endAlpha = 1.0 -- think of "maximum alpha" - that's where the FadeOUT starts at, and the FadeIN ends at
cfg.MouseOverBags = true
cfg.MouseOverClock = false
cfg.MouseOverCompass = true
cfg.MouseOverDurability = true
cfg.MouseOverGold = true
cfg.MouseOverFPS = false
cfg.MouseOverLatencyMemory = false
cfg.MouseOverZone = false
-------------
-- Tooltip --
-------------
cfg.TooltipScale = 0.84 -- scale ...
cfg.HPonTOP = false -- show healthbar on top of the tooltip, bottom otherwise
cfg.HPheight = 14 -- healthbar height
-- sticky position
cfg.TooltipAnchor1 = "TOPRIGHT"
cfg.TooltipAnchor2 = "BOTTOMRIGHT"
cfg.TooltipParent = "Minimap"
cfg.TooltipOffset_X = 2
cfg.TooltipOffset_Y = -30
cfg.AnchorToCursor = false -- anchor tooltip to cursor, replaces default anchor above
-- cursor anchors and positions only apply if - cfg.AnchorToCursor = true
cfg.CursorAnchor1 = "TOPLEFT"
cfg.CursorAnchor2 = "BOTTOMLEFT"
cfg.CursorOffset_X = 30
cfg.CursorOffset_Y = -24
---------------------------------------------------
-- Minimap - you can move it by holding down ALT --
---------------------------------------------------
cfg.MiniMapScale = 0.78 -- minimap scale
cfg.mailIconScale = 1.2 -- mail icon scale
cfg.MiniClassColorBorder = false -- enable class coloured minimap border
-- PvP tracker position ("watchframe", whatever it's called...)
cfg.PvPStateAnchor = "TOP"
cfg.PvPStateX = 0
cfg.PvPStateY = -30
--------------
-- Viewport --
--------------
cfg.ViewportClassColorBorder = false -- enable class coloured viewport border
-- viewport size (0 = hidden)
cfg.ViewTop = 20
cfg.ViewBottom = 0
cfg.ViewLeft = 0
cfg.ViewRight = 0
-- viewport texture size (normally slightly larger value than viewport size, required - depends on UIScale and which viewport size you choose)
cfg.ViewTopTexH = 26
cfg.ViewBottomTexH = 26