You always need to have disambiguation on your input bindings. Which means you only should have one action for one binding key or whatever. In your case the most common used technique is simply enable/disable the bindings which shouldn’t fire in the situation:
- in gameplay: move bindings enabled, UI bindings disabled
- when the UI is shown, you should have the move bindings disabled and the UI bindings enabled
Enabling and disabling bindings is most simplest through their ActionMaps. So basically when you show the UI you disable the Player movement (or entire Player) action map (you supped to pause during UI tweaks I guess) and enable the UI action map, when you return to the gameplay, do the opposite and enable the player and disable the UI action map.
This solves 99% of real game problems. In the unlikely scenario if you legitimately want to fire more than one action with the same bindings (avoid as much as possible), then you probably met with the change for supporting separate “B” and “SHIFT+B” binding. Hitting “SHIFT+B” won’t fire action with binding “B”, which means they do the disambiguation. And they decided for some reason to stop at first matching binding. If you really need multiple actions firing on the same binding at the same situation, then you can find a solution here: