Доступ к родительским свойствам / методам в Actionscript 3.0
Я пытаюсь контролировать основную временную шкалу моего flash-приложения с помощью MovieClip, который является дочерним элементом основной сцены. По-видимому, в ActionScript 2 вы могли бы сделать это с помощью _root, но использование root (поскольку _root больше не существует) теперь выдает ошибку:
root.play();
"1061: вызов возможно неопределенного метода воспроизведения через ссылку со статическим типом flash.display:DisplayObjectContainer."
Использование класса Stage также не работает:
stage.play();
"1061: вызов возможно неопределенного метода воспроизведения по ссылке со статическим типом flash.display:Stage."
Есть какой-либо способ сделать это?
3 ответа
попробуй что-то вроде
MovieClip(корень).gotoAndPlay("меню");
Удачи,
Рэнди Стегбауэр
Другим способом является разделение кода вашего мувиклипа на отдельный класс при настройке класса документа для вашего основного флага.
Предположим, что класс документа вашего основного флага - Main.as, а файл класса вашего мувиклипа - Movie.as. Вы можете добавить указатель основного класса в качестве параметра в конструкторе класса Movie.
В Main.as
public class Main() {
var m = new Movie(this);
}
В Movie.as
public class Movie(m:Main) { m.gotoAndPlay("somewhere"); }