Объявление
public AnimationState PlayQueued(string animation, QueueMode queue = QueueMode.CompleteOthers, PlayMode mode = PlayMode.StopSameLayer);Описание
Воспроизводит анимацию после завершения воспроизведения предыдущей анимации.
Например, вы можете воспроизвести определенную последовательность анимаций друг за другом.
Состояние анимации дублируется перед воспроизведением, поэтому вы можете переходить между одной и той же анимацией. Это можно использовать для наложения двух одинаковых анимаций. Например, у вас может быть анимация взмаха мечом. Игрок делает два быстрых удара друг за другом. Вы можете перемотать анимацию и начать воспроизведение с самого начала, но тогда анимация будет скачком.
Доступны следующие режимы очереди:
Если queue
имеет значение QueueMode.CompleteOthers, эта анимация запустится только после того, как все остальные анимации перестанут воспроизводиться.
Если queue
имеет значение QueueMode.PlayNow, эта анимация начнет воспроизводиться немедленно в дублированном состоянии анимации.
После того, как анимация закончится, она автоматически очистится. Использование дублированного состояния анимации после его завершения приведет к исключению.
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
Animation anim = GetComponent<Animation>();
// Ставит в очередь каждую из этих анимаций для воспроизведения одну за другой
anim.PlayQueued("CubeBob", QueueMode.CompleteOthers);
anim.PlayQueued("CubeFlip", QueueMode.CompleteOthers);
anim.PlayQueued("CubeShuffle", QueueMode.CompleteOthers);
}
}