I wrote an
experience bar add-on that always displays the player progress bar (a.k.a. experience bar). I make use of scene manager to take care of hiding and showing the add-on.
Lua Code:
SCENE_MANAGER:GetScene("hud"):AddFragment(ZO_PlayerProgressBarCurrentFragment)
SCENE_MANAGER:GetScene("hudui"):AddFragment(ZO_PlayerProgressBarCurrentFragment)
SCENE_MANAGER:GetScene("interact"):AddFragment(ZO_PlayerProgressBarCurrentFragment)
This works really well and takes care of most of the heavy lifting. The only other event I need to track is when experience is gained. In that event I update my text label and flash the amount gained.
My problem is when the player is a veteran. For some reason, when a veteran player kills a mob the progress bar is hidden. I see an extra "OnHide" event called after the experience gain events. This does not happen prior to veteran status. I can redisplay the bar by shifting in and out of a scene (like opening and closing my inventory view).
I need some help debugging and troubleshooting this. If anyone has any ideas please share them. I'm not sure how to find out what is causing the progress bar to be hidden.
I have a temporary fix in the latest version of my add-on that calls ZO_PlayerProgressBarCurrentFragment:RefreshBaseType() to redisplay the progress bar, but this ends up causing a "flash" of the bar that I would like to avoid.