I’m working on an Ouya title, building on a keyboard for now. What I’m trying to do is a directional attack; holding a ‘wasd’ key to store a direction momentarily. Pressing ‘f’ while one of these keys is held will actually fire the attack.
To clear a stored direction, I need to catch key-up events, which it doesn’t look like the CIMEDispatcher sends to anything but an accelerometer abstraction. I hadn’t considered, until just now, looking into the accelerometer abstraction to see if I could somehow build around it to get what I need. Would there be a way to do that?
The alternative I’d been considering was to just extend CIMEDispatcher to dispatch keyUps to my delegate just as it dispatched keyDowns. I’ve done my best not to actually touch any parts of the engine, mostly because contributing to open-source projects still terrifies me. Unfortunately, it looks like I might have to, unless I want to do something really hacky.
Is there something else I’m not considering? Would that be a decent contribution to make to the project?