Я пытался реализовать анимированную кнопку запуска в своем главном меню. Поскольку моя сцена занимает некоторое время, чтобы загрузить, я хочу, чтобы время ожидания с этой анимацией кнопки. К сожалению, анимация не начинается. В чем проблема с моим кодом?Проблемы загрузки асинхронной сцены с анимацией кнопок
-(void)buttonAnimation{
SKAction *HUDzoom = [SKAction scaleTo:3 duration:1];
SKAction *HUDzoomOut = [SKAction scaleTo:1.0 duration:1];
SKAction *HUDAnimation = [SKAction sequence:@[HUDzoom, HUDzoomOut]];
[self.startButton runAction:[SKAction repeatActionForever:HUDAnimation]];
}
-(void)loadScene{
SKScene *restart = [[Level_1 alloc] initWithSize:self.size];
[self.view presentScene:restart];
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInNode:self];
SKNode *node = [self nodeAtPoint:location];
if ([node.name isEqualToString:@"startLevel1"]){
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
[self loadScene];
dispatch_async(dispatch_get_main_queue(), ^{
[self buttonAnimation];
});
});
}
}
Работает отлично. Большое спасибо! –