2014-11-06 5 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

스프라이트 키트에서 performSelector : afterDelay :를 사용하지 마십시오. 읽기 : http://stackoverflow.com/a/23978854/201863 그런 다음 액션을 사용하면 runAction의 completionBlock 또는 runBlock 액션을 사용할 수 있습니다. – LearnCocos2D

+0

죄송합니다. 저는 새롭고 여전히 이것에 대해 배우고 있습니다. 예제 코드를 사용하여 코드를 전환하면 어떻게됩니까? – user3411711

답변

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]]; 
    }]]]]; 
} 
관련 문제