Refactor keyPress->direction conversion to a reusable utility function. Support diagonal moves on numpad without numlock.