2013-05-19 2 views
0

Мне трудно узнать из документации о том, как я могу использовать жест KKInput Kobold2D KSWipe, чтобы обнаруживать удары влево/вправо/вверх/вниз и выполнять их, если есть другие утверждения. Может ли кто-нибудь помочь, предоставив мне пример кода. БлагодаряКак реализовать Kobold2D KKInput gestureSwipeDirection для операторов if else?

KKInput* input = [KKInput sharedInput]; 
KKSwipeGestureDirection dir = input.gestureSwipeDirection; 
switch (dir) 
{ 
    case KKSwipeGestureDirectionRight: 
     // direction-specific code here 
     break; 
    case KKSwipeGestureDirectionLeft: 
     // direction-specific code here 
     break; 
    case KKSwipeGestureDirectionUp: 
     // direction-specific code here 
     break; 
    case KKSwipeGestureDirectionDown: 
     // direction-specific code here 
     break; 
} 

ответ

0

Я думаю, что вы ошибаетесь, вы размещая код в один метод, но вы должны использовать две руки, один для определения KKInput, и один, чтобы проверить состояние, плюс забыл gestureSwipeEnabled

попробовать сделать это:

-(id) init { 

    if ((self=[super init])) { 

     input = [KKInput sharedInput]; 
     input.gestureSwipeEnabled = YES; 

     [self schedule:@selector(theTime:)]; 

    } 
    return self; 
} 

-(void) theTime:(ccTime)time { 

    if (input.gestureSwipeRecognizedThisFrame) { 

     KKSwipeGestureDirection dir = input.gestureSwipeDirection; 
     switch (dir) 
     { 
      case KKSwipeGestureDirectionRight: 
       // direction-specific code here 
       break; 
      case KKSwipeGestureDirectionLeft: 
       // direction-specific code here 
       break; 
      case KKSwipeGestureDirectionUp: 
       break; 
      case KKSwipeGestureDirectionDown: 
       // direction-specific code here 
       break; 
      default: 
       break; 
     } 
    } 
}