Description
EventHorizon_Lines is a very short and simple module for EventHorizon that overlays as many vertical lines on the frame as you like at points of your choosing.
Why?
I've been wanting to make this for a long time. On my Rogue and Druid, I've always wanted to have something showing where everything would be at in 30 energy or so. On my Warrior, I always wanted an easy way to plan out my next couple GCDs. This handles both nicely.
Configuration
This module uses EventHorizon's config table. In your myconfig.lua, add the following two entries:
Code:
local config = EventHorizon.config
config.lines = {3,6,9,12} -- Seconds at which to place the lines. This can be in any order.
config.linesColor = {1,1,1,0.5} -- Color of the lines (r,g,b,alpha). Optional, defaults to this.
If you would like to have a different configuration for different characters or classes:
Code:
if UnitClass("player") == "ROGUE" then
config.lines = {3,6}
elseif UnitClass("player") == "WARRIOR" then
config.lines = {1.5, 3, 4.5, 6, 7.5, 9, 10.5}
config.linesColor = {1,1,1,0.2}
else --Any other class
config.lines = {3,6,9}
end
Quirks, known issues, planned changes
There should be no bugs, but there is no default line setup. You will need to add config.lines, and at the moment it must be a table (as above) even if you just want one line.
Lines are displayed after the "now" line. A line at 1.5 seconds will display 1.5 seconds in the future. No need to compensate for that.
Only up to 20 lines will display at once. The number could very easily go higher if requested.
Lines aren't always exactly one pixel. I've done what I can, but WoW's UI rendering will sometimes make them appear a little thicker. Not something I can control, sadly. You can try tweaking the time of a line by something like 0.01 seconds to adjust its placement.
I have not tried placing lines that exceed the timeframe of EventHorizon. That won't break it, but you've been warned.
Planned: Coming soon will be the ability to individually color lines. Also, I'd like to add a way to just tell the module to add a line every X seconds.
Questions, comments, feedback?
Post a comment here for best results.