2 [+]
оки, попробую.
1. методы вписанные в тип.prototype наследуютя всеми объектами этого типа.
2. getTop - метод который определяет первую свободную глубину в клипе для которого вызывается. у IV'а на
http://www.layer51.com/proto/d.aspx?f=834 выложен несколько другой метод, вроде пооптимальнеее, но из-за проверки typeof он не учитывал textfield'ы... хотя может уже и пофиксено.
в общем мой метод не фонтан, но вроде работает. просто перелопачивает кишки клипа(себя) и найдя первый объект с глубиной >0 и возвращает его_глубину+1 (так как for..in перебирает сверху-вниз).
если ничего не находит то просто 1. т.е. следующую глубину, которая свободна....
this[i]._parent === this нужна для того чтобы проверить точно ли найденный клип лежит внутри клипа, а не является ссылкой на какой-то внешний клип.
3. _newMovie - по сути ремикс createEmptyMovieClip, просто писать удобнее, не нужно высчитывать свободную глубину+ в отличие от стандартного возвращает ссылку на созданный мувик.
hint: для полной ясности, в них this это собственно сам объект,для которого был вызван метод .
теперь как работает загрузчик (конкретно в данном случае).
//loader = _root._newMovie('ldr');
создаю в _root'е клип ldr и ссылку на него loader. ИМХО удобнее чем писать _root.ldr или _root['ldr'].
//loader.tmc = _root._newMovie('myMC');
в лоадере создаю ссылку tmc на созданный пустой клип myMC (в принципе на любой клип в который будем грузить мувик, просто мне куда-то грузить надо, вот и пришлось для примера контейнер создать).
//loader.tmc.loadMovie('dsfsdfsdf')
начинаю грузить. почему через ссылки? ну мне так писать короче было
//loader.onEnterFrame = ...
прикручиваем прелоадеру обработчик котороый следит за соотношением уже / всего у this.tmc, который по совместительству == _root.myMC.
если уже == всего удалаяем собственный onEntrFrame, т.к. следить то больше не за чем...
собсно все...