Resetting Input State between Swapping Mapping Contexts, possible?

Is there a way to reset enhanced input, ie. I have my player press E to open a terminal UI which disables player world mapping context and enables the player UI mapping context, but the terminal also has E bound to a function within it, so what ends up happening is that the terminal opens then the E bound action happens at nearly the same time.

What I’m doing is delaying the enabling of the UI mapping context so that the input goes stale before it can register as an actual input, I don’t like this.

What I would like is to reset the input state before enabling the UI mapping context. Is this possible in blueprint (preferably) or C++ (can make it work)?


I ran into a similar problem, same key mapping different actions in different contexts. I don’t like using a delay node either because it feels unreliable; the delay needed may vary across machines.

(I thought the entire idea of the Enhanced Input was to handle such situations.)

A bit of a shot in the dark but looking through the source I found some exposed functions that might work. Haven’t delved too deep into Enhanced Input besides adding contexts. Will experiment later on.

Perhaps the E key could just be in Injected input to override later on?

1 Like