Я пытаюсь создать массив SKActions в Spritekit с использованием объектива-c, чтобы два массива выполнялись параллельно. «ротация» - это не массив, который подходит мне, если только он не вызывает проблему, в которой я сомневаюсь, проблема здесь. То, что я ожидаю от этого кода, состоит в том, что actionMove и rotation будут работать параллельно, а затем он переходит к actionMove1 и actionMove2 и заканчивает runAction. Я получаю следующую ошибку в последней строке кода, показанной ниже (добавлена только часть необходимого кода).Как создать массив SKActions в Spritekit
Коллекция элементов типа 'SKAction * __ сильный [3] не является объектом Objective-C
SKAction * actionMove = [SKAction moveTo:CGPointMake(actualX2, actualY2) duration:actualDuration];
SKAction * actionMove1 = [SKAction moveTo:CGPointMake(actualX3, actualY3) duration:actualDuration];
SKAction * actionMove2 = [SKAction moveTo:CGPointMake(actualX4, actualY4) duration:actualDuration];
int rotate = arc4random() % 5;
SKAction * rotation = [SKAction rotateByAngle:M_PI/rotate duration:0.5];
SKAction * moveArray[] = {actionMove, actionMove1, actionMove2};
[game_piece1 runAction:[SKAction group:@[moveArray, rotation]]];
@SkylarLauren Извиняюсь за недоразумение. Мой план состоит в том, чтобы фактически иметь массив из трех поворотов. Таким образом, будут два массива, три actionMoves и три вращения, идущие параллельно. Вот почему я использую группу: @, а не последовательность: @ – Ino
@ Ino Я обновил ответ. Вы были очень близки с вашим исходным кодом. Единственная проблема заключается в том, что вы не передаете фактический массив движений, а вместо этого создаете действие последовательности, которое необходимо передать в группу. –