Toggle visibility only if component is visible

I have a character that is holding weapons (Two guns). I want two ways in which the weapon can be equipped ( Made Visible)
1st way: If the equip button is pressed
2nd Way: if the Aiming Button is Pressed.

However, once the weapon is visible I don’t the aim button (2nd Way) to effect the weapons visibility.
Aim button should only effect the visibility( Make visible) if the weapons aren’t already visible.
If the weapons are visible then Aim button shouldn’t effect their visibility
I can only seem to get it to partially work, and its very buggy.
I attached a screen shot of my current script

Any help would be greatly appreciated.

Hey,

not a big fan of blueprints, but I’d suggest using a boolean flag. When you make weapon visible either one of ways, just have a boolean that says, yeah weapons are visible. If that boolean is true then stop executing. If you make weapons invisible then set flag to false.

Hope it makes some sense.

I agree. For this sort of thing, gates and doOnce might just make a confusing mess. Boolean and branch instead.

Use the IsVisible node, then branch from that and only execute if false

Reference img below