2014-11-06 90 views
0

嘿所有我有,我想,当用户赢得水平,触发Spritekit动画。这就是我所拥有的触发spritekit动画

if([[other name] isEqualToString:@"win"]) 
{ 
    NSLog(@"WE HAVE WON THE LEVEL"); 

    [bomb removeFromParent]; 

    [self saveUserInfo]; 

    [[self view] performSelector:@selector(presentScene:) withObject:[LevelSelectScene scene] afterDelay:2]; 
} 

我应该如何在从父母移除炸弹后立即触发动画?

+0

不要在Sprite Kit中使用performSelector:afterDelay:。阅读:http://stackoverflow.com/a/23978854/201863然后使用Actions,然后可以使用runAction的completionBlock或runBlock操作。 – LearnCocos2D 2014-11-06 18:15:26

+0

对不起,我很新,仍然在学习这个,我的代码如何通过在你给出的例子中切换代码来查看? – user3411711 2014-11-06 18:22:14

回答

0
- (void)gameOver 
{ 
    [self runAction:[SKAction sequence:@[[SKAction runBlock:^{ 
     [bomb removeFromParent]; 
     [self yourAnimation]; 
     [self saveUserInfo]; 
    }] ,[SKAction waitForDuration:yourDelay], [SKAction runBlock:^{ 
     GameOverScene *gameOverScene = [GameOverScene sceneWithSize:self.size]; 
     [self.view presentScene:gameOverScene transition:[SKTransition pushWithDirection:SKTransitionDirectionLeft duration:0.5]]; 
    }]]]]; 
}