First HUD doesn't go away when I call a new one

I have two HUD’s. One for picking teams and the other is the hud for the player character with a crosshair, health, etc…

The problem I have is that when I call the second HUD, the first one stays on the screen. I have tried assigning the widgets in the first hud to variables and toggling their visibility, but they remain visible even when doing that. I even tried setting one of the buttons to go invisible once you click it, just to test the visibility and even that didn’t work.

Does anyone know what might be going on here? Thanks!

Can you post a screen cap of the nodes you are doing this in? I would like to help but from your description it sounds like you are doing it right with the widgets, my understanding of entire HUD objects is limited, but I believe the HUD is saved in the GameState, so if you replace/remove the one in the GameState, then you may get some level of success.

I meant GameMode, not GameState

Sure, I will upload a screen cap when I get home tonight.

Below is the flow of blueprints. You can see that in the game_start_widget I am calling a new HUD. You can see the first hud is a red and blue button, each one picking a different team color. Once you pick your team the new hud is supposed to show up, and it does but the red and blue buttons remain.

I can’t see anything that immediately catches my eye. If you have more than one local player controller in your scene, each one will draw a HUD per begin play call and that will result in two huds perfectly overlapping and one occluded and uninteractable. I don’t use custom huds very often and am not too familiar with them, but if you just want to switch out widgets you should call remove from parent on the one you want to be rid of and add to viewport on the one you want added. Hopefully someone with more experience can help you if that did not now that there is some more info here.

Ah I figured out at least why trying to hide the widgets through visibility wasnt working! I needed to add a do once node after the event recieve hud. otherwise it kept spawning the widget over and over again infinitely. So I had many copies stacked ontop of themselves.

Still curious why changing to a new hud doesn’t just wipe the old one… considering that is how it says it should work in the documentation. And it urks me to think it could have a small performance impact knowing that first hud exists but just has its widgets hidden.