Just a quick guess: does using PLAYER_LOGIN instead of PLAYER_ENTERING_WORLD fix your problem?
Don't ask me on details (can't remember exactly
), but the events on reloading the UI are not 100% the same as on login.
[e]
Doh. Nevermind. I'm just realizing that you're registering PLAYER_ENTERING_WORLD but don't actually use it.