Cocos2D не предлагает способ просто проверить состояния клавиш клавиатуры.
Kobold2D делает .С Kobold2D вы можете сделать что-то вроде этого:
KKInput* input = [KKInput sharedInput];
if ([input isKeyDown:KKKeyCode_LeftArrow] == NO &&
[input isKeyDown:KKKeyCode_RightArrow] == NO)
{
something = 0.0f;
}
Кроме того, просто как примечание, это плохая практика использовать символы для событий клавиатуры:
unichar key = [[event characters] characterAtIndex:0];
Проблема сэто означает, что языковой стандарт пользователя (язык ввода с клавиатуры) изменяет, какую клавишу или комбинацию клавиш нужно нажимать, чтобы сгенерировать этот символ.Например, в то время как клавиша / (косая черта) удобно расположена на клавиатурах США слева от клавиши вправо Shift, на немецких клавиатурах пользователям придется нажимать Shift + 7, чтобы выполнить действие, которое вы сопоставили символу /.Вы можете узнать больше об этом в моей статье о Правильная обработка событий клавиатуры Mac .