я делаю игру с комплектом Sprite, в основном, когда "герой" умирает, затем запускает анимацию (в коде называется "AnimBack") и после этого переходит к игре поверх сцены, но теперь, когда "герой" умирает, он сразу же переходит в игру над сценой. Вот что у меня есть на данный момент:
-(void)AnimBack{
Animation =[SKSpriteNode spriteNodeWithImageNamed:@"die0"];
Animation.position = CGPointMake(self.frame.size.width/2, self.frame.size.height/2);
SKTextureAtlas *atlas =[SKTextureAtlas atlasNamed:@"die"];
SKTexture *die0 = [atlas textureNamed:@"die0"];
SKTexture *die1 = [atlas textureNamed:@"die1"];
SKTexture *die2 = [atlas textureNamed:@"die2"];
SKTexture *die3 = [atlas textureNamed:@"die3"];
NSArray *backatlas = @[die0, die1, die2, die3];
SKAction *backatlasanimation = [SKAction animateWithTextures:backatlas timePerFrame:0.1];
SKAction *wait = [SKAction waitForDuration:0.1];
SKAction *backaction = [SKAction sequence:@[wait, backatlasanimation]];
[Animation runAction:backaction];
[self addChild:Animation];
}
- (void)didBeginContact:(SKPhysicsContact*)contact {
//-----------------------------------//
if ((firstBody.categoryBitMask == ballCategory && secondBody.categoryBitMask == bottomCategory) || (firstBody.categoryBitMask == secballCategory && secondBody.categoryBitMask == bottomCategory)) {
[self AnimBack];
GameOver* gameOver = [[GameOver alloc] initWithSize:self.frame.size playerLose:YES];
SKTransition *transition = [SKTransition pushWithDirection:SKTransitionDirectionUp duration:1.0f];
[self.view presentScene:gameOver transition:transition];
}
Что я делаю не так и что мне нужно изменить, чтобы все работало так, как я объяснил в начале