Add support for multiple progress bars
rdw-software opened this issue · 3 comments
The Isle of Time is the one place where 4 things can be farmed at once, currently. Rarity only supports 2 bars. Let's see if we can make it 5 for good measure.
If anything, there shouldn't be a hard limit so Rarity can track as many items as required.
Realistically, this probably won't happen (anytime soon, if ever), but I'm adding it here to consolidate all issues.
Allara:
(The hack, if you’re wondering, is detecting 2 attempts inside a delay of N seconds. When that happens, Rarity puts up 2 bars instead of 1. You need 2 to be larger than 2. There’s certainly a better approach to storing the bars and rendering them, but you’re always going to pick a delay and detect N attempts inside that delay and put up that many bars. Rarity isn’t supposed to show a bar for just random stuff you aren’t actively farming, and I didn’t want that design to change. So I didn't want users just putting up whatever bars they want.)
Implemented via AceBucket? (Not sure)
Seems like this system could use an overhaul.
Also possibly related (AceBucket sequencing):
- I mean LibSink [actually AceBucket], it creates sinks where when an event fires, it waits a configured amount of time to catch any other firings of the same event before it calls out to the handler for that event (once). Same thing as what you did, but you don’t have to write that logic manually (and LibSink is probably better-tested). There should have already been a Sink on LOOT_READY, but I may misremember. It might have been whichever event fires when your bags update. The correct approach when you get dupe events is to put a Sink on them and don’t touch the handler at all.