Я создал различные спрайты из SpriteSheet для представления различных анимаций состояния, таких как вступление, сброс и т. д., без проблем.
// other code...
"animations": {"intro": [0, 19, "false"], "reset": [19, 25, "false"]}
// other code...
var intro = new createjs.Sprite(spriteSheet, "intro");
// add to stage, etc...
Основываясь на этой конфигурации, если я добавлю анимацию вступления на сцену, она запускается и останавливается, как и ожидалось, на кадре с индексом 19. Однако я хотел вызвать:
intro.gotoAndStop(0);
... поэтому приложение запускается, а вступительная анимация находится в первом кадре, пока событие не вызовет начало анимации, и это работает, но как только я вызываю:
intro.play();
... вступительная анимация воспроизводится, но теперь повторяется снова и снова, хотя она была определена с флагом «false» для остановки на последнем кадре (см. Объект анимации выше). Что за?
Здесь есть идеи? Я бы хотел, чтобы вступительная анимация действительно остановилась там, где я ее попросил. Должен ли я вручную управлять этим с помощью прослушивателей событий? Что мне не хватает?
Было бы здорово, если бы API Sprite имел playUntil(9);
или playFromTo(0, 4);
, чтобы сократить все стандартные шаблоны.