Прелоадер (предзагрузчик) - индикатор загрузки флеш-ролика.
Далее приводится прокомментированный листинг для простого прелоадера на ActionScript 2.0.
/*
Устанавливаем значения необходимых переменных...
*/
WP = 200;
// ширина прелоадера
HP = 20;
// высота прелоадера
WM = 5;
// отступ маски
/*
Создаём мувик-контейнер для будущего прелоадера...
*/
_root.createEmptyMovieClip("preloader", 0);
preloader.lineStyle(3, 0x000000);
preloader.beginFill(0xCCCCCC, 100);
preloader.moveTo(0, 0);
preloader.lineTo(WP, 0);
preloader.lineTo(WP, HP);
preloader.lineTo(0, HP);
preloader.endFill();
/*
Создаём полосу-индикатор для будущего прелоадера...
*/
_root.preloader.createEmptyMovieClip("poloska", 1);
preloader.poloska.lineStyle(1, 0x000000);
preloader.poloska.beginFill(0x000000, 100);
preloader.poloska.moveTo(0, 0);
preloader.poloska.lineTo(WP, 0);
preloader.poloska.lineTo(WP, HP);
preloader.poloska.lineTo(0, HP);
preloader.poloska.endFill();
/*
Создаём маску, которую положим на полосу-индикатор прелоадера...
*/
_root.preloader.createEmptyMovieClip("preloadermask", 2);
preloader.preloadermask.lineStyle(3, 0x000000);
preloader.preloadermask.beginFill(0xCCCCCC, 50);
preloader.preloadermask.moveTo(WM, WM);
preloader.preloadermask.lineTo(WP-WM, WM);
preloader.preloadermask.lineTo(WP-WM, HP-WM);
preloader.preloadermask.lineTo(WM, HP-WM);
preloader.preloadermask.endFill();
preloader.poloska.setMask(preloader.preloadermask);
/*
Позиционируем прелоадер по центру экрана...
*/
preloader._x = (Stage.width-WP)/2;
preloader._y = (Stage.height-HP)/2;
/*
Следим за процессом загрузки и изменяем полосу-индикатор...
*/
onEnterFrame = function () {
_root.preloader.poloska._xscale = Math.round(this.getBytesLoaded()/this.getBytesTotal()*100);
// если загрузка завершена...
if (this.getBytesLoaded()>=this.getBytesTotal()) {
// удаляем прелоадер...
preloader.removeMovieClip();
// удаляем обработчик события...
delete this.onEnterFrame;
// начинаем проигрывание флеш-ролика
play();
}
};
/*
Останавливаем воспроизводящую головку флеш-ролика до полной загрузки ролика...
*/
stop();
Данный прелоадер прост в использовании - надо просто вставить код в первый кадр ролика, а свой контент размещать в последующих кадрах. Прелоадер не требует графического оформления, так как вся графика генерируется программно. Сам код занимает мало места и может быть легко модифицирован.