0
Wie ich es jetzt eingerichtet habe, funktioniert es mit einem Swipe, aber wenn ich mehr hinzufüge, tut es nichts. Ich möchte, dass der Benutzer nach links, rechts und oben wischen muss, um diesen Szenenübergang auszulösen, wenn möglich.Mehrere Swipes zum Auslösen eines Szenenübergangs in Sprite
GameStart.H
@property (nonatomic, strong) UISwipeGestureRecognizer *leftSwipeGesture;
@property (nonatomic, strong) UISwipeGestureRecognizer *rightSwipeGesture;
@property (nonatomic, strong) UISwipeGestureRecognizer *upSwipeGesture;
@property (nonatomic, strong) UISwipeGestureRecognizer *downSwipeGesture;
@property(nonatomic) BOOL cancelsTouchesInView;
GameStart.m
- (void)didMoveToView:(SKView *)view{
_cancelsTouchesInView = NO;
self.leftSwipeGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handlesSwipes:)];
self.rightSwipeGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handlesSwipes:)];
self.upSwipeGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handlesSwipes:)];
self.downSwipeGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handlesSwipes:)];
self.leftSwipeGesture.direction = UISwipeGestureRecognizerDirectionLeft;
self.rightSwipeGesture.direction = UISwipeGestureRecognizerDirectionRight;
self.upSwipeGesture.direction = UISwipeGestureRecognizerDirectionUp;
self.downSwipeGesture.direction = UISwipeGestureRecognizerDirectionDown;
[self.view addGestureRecognizer:self.leftSwipeGesture];
[self.view addGestureRecognizer:self.rightSwipeGesture];
[self.view addGestureRecognizer:self.upSwipeGesture];
[self.view addGestureRecognizer:self.downSwipeGesture];
}
-(void)handlesSwipes:(UISwipeGestureRecognizer *) sender{
if (sender.direction == UISwipeGestureRecognizerDirectionLeft && sender.direction == UISwipeGestureRecognizerDirectionRight && sender.direction == UISwipeGestureRecognizerDirectionUp){
SKTransition *fade = [SKTransition crossFadeWithDuration:.5];
MyScene * scene = [MyScene sceneWithSize:self.view.bounds.size];
[self.view presentScene:scene transition:fade];
}