It's because the way the code works is to apply the brakes when the state is STAGING. Once the state isn't STAGING, no value is asserted, and whatever normal controls are assigned are allowed to get through. When using a joystick, the axis set to brake will, at this point, be setting brake values of zero, and the brake is released. When using keyboard controls, zero values are only set once (to allow you to assign keyboard controls to things but then also override them with the joystick), and then the last value is held. At least, that's how it used to work, I'm not sure if the button ramping changed things. In this case, the last value was the STAGING brake setting, so that stays there until you press and release a key. To try to fix this, I've set up a default, zero brake value that always gets set unless anything else sets a value. Check it out, rev 1403, and let me know if it fixes the problem for you.
|