Immemor / RaidCore

RaidCore - Wildstar Boss Mods
7 stars 13 forks source link

Non-timed raid status bars #109

Open ChimpyEvans opened 9 years ago

ChimpyEvans commented 9 years ago

Example: System Daemons When close to one another, around 40-45 meters, the bosses will pulse massive raid damage, effectively a raid-wipe scenario.

There's no easy way to track this continuously in the current version of Raidcore. Messages are used for alerts and not constant textual updates, and bars require a timer of some sort.

I've hacked at the codebase and had prototypes of solutions using both of these methods, but find support for non-time, non-health based attributes of fights to be lacking.

Instead, I'd like to generate a bar that remains until either removed by the encounter, or the encounter ends. When a bar with the same key string is added, the addon will update the message on the next reload, but will otherwise leave the bar window untouched.

This allows me to schedule a timer during the encounter using whatever interval I like, with each call to that Timer updating the message in this status window. In my example, the distance between the Null and Binary System Daemons.

The following is a modified 2.0 RaidCore with all changed files, as well as an example within the System Daemons encounter. I'm too lazy at the moment to do a proper pull request, but I hope you take some time to take a look at it. The code is by no means release quality, as I've piggy backed on the current DisplayBar class by adding a new Bar type (type 3, where type 1 is timed bars and type 2 is unit health bars).

RaidCore:AddStatus(key, message) is the top-level call to activate a status bar, and it acts like a normal bar in most other respects, such as StopBar.

https://www.dropbox.com/s/7j1chwug2dfx745/RaidCore_StatusBar.zip?dl=0

Immemor commented 9 years ago

I think I understood your idea of "status container" which can contain some permanent informations.

I have started to rework all Display*.lua files to improve the #89, I will try to add your request in my current task.

Immemor commented 9 years ago

I don't forget you, I have some detail to close on Avatus before start your request.

Immemor commented 9 years ago

I don't forget you. I'm closing the 5.x first.