То, что я хотел бы сделать, кажется достаточно простым, но меня смущает тот факт, что я хочу работать с временными рамками Flash, а не с пользовательскими классами, файлами .as, flex и т. Д. Я художник,и код можно использовать только так же, как и мои активы (созданные / анимированные во Flash), поэтому я стараюсь работать на временной шкале.
Я хочу, чтобы сценарий в конце временной шкалы ребенка выполнялсяграфик его родителя.Нечто подобное было бы в конце кадра дочернего элемента, если бы это был настоящий скрипт AS3: this.parent.gotoAndPlay (2);
Я сделал «исправления» этой работы, но медленномоя программа с неприемлемой скоростью.Например: я сохраню общедоступную статическую логическую переменную в импортированном пользовательском классе и получу «слушатель» в родительском фрейме 1:
import customClass;if (Boolean = true) {gotoAndPlay (3);} // Ожидание дочернего элемента
в родительском кадре 2:
gotoAndPlay (1);// Это создает дешевый цикл
и на последнем дочернем кадре:
import customClass;Boolean = true // Сообщает родителю, когда выходить из цикла
Это работает, но, очевидно, не лучшим образом ... Мне нужна рекурсия в том же временном интервале, но без стекапереполнение или нумерованные приращения.
Я подозреваю, что ответ лежит на EventListeners, но я не хочу, чтобы вызвать его с помощью MouseClick или Timer, я хочу, чтобы вызвать его так: new EventListener: EventListener (ThatGlobalVarAtTheEndOfYourChildTimelineHasBeenChanged);Затем он будет прогрессировать, когда логическое значение будет изменено на true.
Я уверен, что это легко, и я чувствую себя как идиот, спрашивающий что-то настолько простое, но вся документация заставляет меня работать на сценеили с объектом внутри объекта, который я создаю в коде, но это не так просто с тем, что я хочу сделать, потому что я делаю сложные анимации, которые используют несколько временных шкал.Флэш знает, какой объект находится внутри, а не я или мои классы.
Спасибо всем за вашу помощь.