I am recreating all the basic UE4 input actions/axes using the new enhanced input plugin. Something I noticed while doing MoveForward and MoveRight was that, unlike default inputs, if you have 2 keys (D for right, A for left) and one negated, the input will always return the value that is second in line of your mapping if both are held. So if A is below D, holding both keys returns -1. If D is below A, holding both keys returns 1.
I would prefer holding both to cancel each other out, and return 0, like what happens in the default inputs. There doesn’t seem to be any way to tell which key is being pressed, so I can’t branch out of the input to handle it that way. Another way I thought to get around it was by setting a flag on start trigger, then if start gets triggered again while the flag is on, stop everything. But start only triggers the first time any key assigned to the input is pressed!
Any help would be appreciated.