2 mayakwd
Не совсем понятны некоторые действия:
1) останавливаемся в 1 кадре, ждем загрузки;
2) по окончании загрузки - play, то есть переходим на 2 кадр и тут же проверяем - если перешли, то stop! - вот это кажись тафтология
Добавлено через 50 минут
(при этом побочно зачем-то создается слушатель enterFrame и тут же удаляется)
Ну это, кончно мелочи, неважно. Можно писать что угодно, лишь бы работало. А можете объяснить в чем суть работы этого прелоудера? Во втором кадре из библиотеки вытаскивается нужный нам класс при помощи loaderInfo.applicationDomain.getDefinition("MainClass"). На кой ляд там 3-й кадр? Что дает метод super()?
PS тема очень больная. Я все до этого пользовался внешним прелоадером, и все было хорошо, пока не пришлось создать здоровенный флеш (2000 кадров), так вот при таком подгружаемом флеше внешний прелоадер начинает тормозить и даже падает (хотя сам флеш-файл работает безупречно)
Добавлено через 1 час 55 минут
По определению super() служит для вызова конструктора родительского класса. А в данном случае в конструкторах всех классов этот самый супер() и кто из них и зачем вызывает родительский конструктор?
Добавлено через 2 часа 2 минуты
Вот к примеру

Код AS3:
class Preloader extends MovieClip
и далее в конструкторе super();- зачем тут этот супер()? Класс Preloader вызывает конструктор надкласса MovieClip!