Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Подскажите как сделать правильный прелоадер (http://www.flasher.ru/forum/showthread.php?t=38140)

Easter 07.10.2002 18:05

Подскажите как сделать правильный прелоадер
 
Я задумал сделать сайт на флэше на основе разделяемых библиотек. Вроде все сделал и в локале все работало. Когда перенес на сайт, то все это дело загружается не синхронно с наступлением кадров для кажого разделяемого мувика. Вопрос как сделать грамотный прелоадер, чтобы он не пускал каждый мувик раньше, чем он загружится?

beshan 07.10.2002 19:14

а что значит "на основе разделяемых библиотек" - честно говоря первый раз такое слышу, просвяти меня плиз

Easter 07.10.2002 20:29

Ну это совсем не сложно. Создаешь новый мувик и делаешь в нем все, что хочешь клипы, звуки, шрифты. Потом вызываешь браузер библитеки и там правой кнопочкой Linkage. Ставишь Export this symbol. Или, что-то вроде. Там задаешь имя под которым он будет, когда будет использоваться как разделяемый. А, потом открываешь свой основной мувик и там уже выбираешь из меню File - Open As Shared Library. Он тебе открывает только окошко с браузером библиотеки мувика. Перетаскиваешь к себе все, что тебе нужно. Да, и та библиотека, что будет разделямой должна быть уже опубликована, чтобы все это работало. Ну и все. Теперь когда ты будешь обращаться к этим ресурсам они должны грузиться из отдельной библиотеки.

beshan 08.10.2002 13:01

насколько я понял ты говориш про пятую версию флэша и подключаемые библиотеки - это аналог мх-совских компонент. чесно говоря с таким не работал....сразу подсел на компоненты в мх.

в плане прелода попробуй сделать первой сценой общий прелоад клипа и поставить проверку на загрузку всех библиотек, если загрузились - переход на вторую сцену для проигрывания ролика

удачи

Easter 08.10.2002 17:16

Так я о том и спрашиваю, как его сделать. Птому, что
If Frame Is Loaded (Scene 1, "end")
Go to and Play (Scene 1, 1)
End Frame Loaded
Мне особо не помогает. И при проверке глючит, то бишь Bandwidth profiler показывает, что данные прелоадера загружены, а он сразу к следующему мувику летит. Вот я и спрашиваю, как код правильного прелоадера может выглядеть? :(

Darina 08.10.2002 17:51

кажется, знаю, в чём твоя беда :)
Напиши текст своего прелоадера, тогда можно будет точно сказать. Уверена, что ты не проверяешь total на ноль, а надо!

Easter 08.10.2002 20:12

Мой текст таков :)
ifFrameLoaded ("Scene 1", "loader_end") {
gotoAndPlay (1);
}

Darina 09.10.2002 00:05

Ой, не, сори, я не так поняла. :rolleyes: Т.е. никаких мувиков ты не подгружаешь, понятно... Может, кто более шарящий подскажет, я не знаю :(

Easter 09.10.2002 00:25

Не-е-е, ты погоди, не убегай. :) Ты расскажи, тодь как их подгружать, что loadMovie я вроде понял. А как например проверить, что он весь загрузился?

Darina 09.10.2002 01:44

LoadMovie ты можешь делать в отдельный уровень или в какой-то клип:
LoadMovie('lya-lya-topolya.swf', 1);
LoadMovie('lya-lya-topolya.swf', '_root.kontainer');
соответственно (это например)

для первого случая прелоадер надо делать так:
1-й кадр: LoadMovie('lya-lya-topolya.swf', 1);
2-й кадр: пусто
3-й кадр:
if ((_level1:_framesloaded<_level1:_totalframes) or
(_level1:_totalframes<1)) prevFrame();
4-й кадр: собственно начало твоего мувика

Дело в том, что многие не проверяют totalframes<1, а из-за этого оно не будет работать через интернет.
Лучше кстати, использовать не framesloaded, а bytesloaded, это я что первое в голову пришло написала, хотя и так будет работать. :rolleyes:

beshan 09.10.2002 12:36

если ты подгружаеш библиотеки отдельными мувами, то могу помочь, смотри как проверка делается:

1. ставишь на сцену отдельно мув для каждого файла и даеш им имена containerXX
2. загружаеш в эти контейнеры свои файлы
containerХХ.loadMovie("FileName.swf");
3. потом просто делаеш проверку на загрузку каждого контейнера

container1.getBytesLoaded() == container1.getBytesTotal()
container1.getBytesTotal() != 0



попробуй может так получиться: на сцене прелоада делаеш запрос библиотек, тоесть, пока не сможет заюзать все библиотеки висиш на сцене прелоада

RDA 09.10.2002 12:46

2 beshan shared library и MX components - разные вещи....

2 Easter
В самом начале загрузи в невидимый мувик свою библиотеку,
для того, чтобы этот файл закешировался у пользователя.
Потом можешь его удалять....

Easter 09.10.2002 17:05

А как, просто сделать обращение к нему?


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

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