Я пытаюсь изменить положение своих спрайтов после завершения действия SKAction moveTo. Я запрограммировал врагов так, чтобы они появлялись на экране из (self.frame.size.width/2, 0). Они движутся только по оси Y. Я хочу переместить их в исходное положение, когда их y-позиция больше, чем (self.frame.size.height), и перемещать их снова и снова таким же образом, пока игрок не убьет всех врагов. Я борюсь с этим. Какую часть кода я должен добавить? Есть идеи? Этот код может помочь вам понять мою реализацию:
-(void) addEnemies {
for (int j = 0; j < 6; j++) {
SKSpriteNode* enemy = [SKSpriteNode spriteNodeWithImageNamed:@"player"];
enemy.position = CGPointMake(((self.frame.size.width) -20) - j * (enemy.frame.size.width) , 0);
CGPoint realDest = CGPointMake((enemy.position.x), (self.frame.size.height));
float velocity = 50/1.0;
float realMoveDuration = self.size.height / velocity;
SKAction * actionMove = [SKAction moveTo:realDest duration:realMoveDuration];
[enemy runAction:actionMove];
[self addChild:enemy];
}
}