Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   вечная тема - "внешний прелоадер" (http://www.flasher.ru/forum/showthread.php?t=78083)

firsoff 08.04.2006 19:35

вечная тема - "внешний прелоадер"
 
надо сделать внешний прелоадер (использовать внутренний не получается потому как 80% ресурсов грузится в 1 кадр), делаю как в учебниках написано:
Код:

this.preloader._visible=false;
clip.stop();
var loader:MovieClipLoader=new MovieClipLoader();
var listener:Object={};
loader.addListener(listener);
var timer:Number=null;
loader.loadClip("test.swf",clip);
listener.onLoadStart=function():Void
{
preloader._visible=true;
preloader.proc.text="0%",preloader.time.text="?";
timer=getTimer();
}
listener.onLoadError=function():Void
{
trace("ошибка");
}
listener.onLoadInit=function():Void
{
clip._visible=false;
clip.stop();
}
listener.onLoadProgress=function(clip:MovieClip,l_ b:Number,t_b:Number):Void
{
var percent:Number=l_b/t_b;
preloader.proc.text=Math.floor(percent*1000)/10;
preloader.polosa._xscale=percent*100;
preloader.time.text=Math.round((1-percent)*(getTimer()-timer)/percent/6000)/10;
}
listener.onLoadComplete=function():Void
{

preloader.swapDepths(1000);
preloader.removeMovieClip();
delete loader;delete listener;delete timer;
clip._visible=true;
clip.play();
}

но подгружаемая swf не работает (это игрушка) совершенно, что нужно сделать чтобы заработало?! Пробовал в качестве теста другие флешки подсовывать - результат точно такой же.

firsoff 08.04.2006 19:37

В первый раз вставил нормально и дальше так делай !!!

_kos 19.04.2006 11:20

http://www.flasher.ru/forum/showthread.php?t=72460

Посмотри что касается MovieClipLoader(); При определении функций обработчиков событий должен стоять аргумент target_mc. Он у тебя не стоит в onLoadinit() onLoadStart() onLoadError().

loader.addListener(listener);
loader.loadClip("test.swf",clip);

эти сточки нужно перенести в самый низ, после определения функций обработчиков.

Короче смотри ссылку, русский help там всё написано.

Rustem-inside 19.04.2006 13:08

Я пользуюсь вот таким кодом:
Код:

this.onEnterFrame = function() {
 var flod = _parent._framesloaded;
 if (flod>0 && flod == _parent._totalframes && loading != "done") {
  _parent.gotoAndPlay(2);
  loading = "done";
 }
 var percentDone = Math.floor((_parent.getBytesLoaded()/_parent.getBytesTotal())*100);
 _root.output = percentDone+"%";
 _parent.loadBar._xscale = percentDone;
};

Вставляешь его в пустой мувмклип.
loadBar - полоска индикатор загрузки
output- переменная текстовог поля


Часовой пояс GMT +4, время: 14:27.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.