Форум 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=45585)

RadonDmitro 04.06.2003 21:06

Как это сделать?..
 
Есть пять флэшей. Они несколько раз продублированы на странице с айдишниками типа - "papa1", "papa2", "papa3"; "mama1", "mama2", "mama3";

Есть также на странице клип control. Каждый клип papa или mama должен передать в control "я загружен". Причем желательно бесшумно - через fscommand. Control делает проверку - кол-во типов флэшей умножает на кол-во дублирований. И если результат умножения равен количеству загруженных флэшей папа-мама, то делается какое=то действие..... Типа КОНЕЦ - УРЯЯЯ! Вот такая вот бредятинка. Ничего умного в голову не лезет, вот и прошу хелпа :) Только не надо меня посылать на Астру :)

Dimonius 04.06.2003 21:21

Если я правильно понял, все это происходит на html странице


В первом кадре каждого ролика:

loadedBytes = _root.getBytesLoaded();
totalBytes = _root.getBytesTotal();
load=loadedBytes/totalBytes;
if (load==1){
fscommand("clip1","loaded");
gotoAndPlay(3);
}
Во втором кадре

gotoAndPlay(1);

Ну и разумеется в HTML описываешь функцию

А сонтрол твой будет получать переменную от браузера, и чего-то там делать, как ты сам сказал.

А если имелась ввиду сцена, то причем здесь fscommand(); тогда все здесь просто.
онКлипЭвент итд

RadonDmitro 04.06.2003 22:55

Вложений: 1
На таком примерчике простом можно все продробнее показать? Нужно чтобы если все четыре клипа загрузились, то контрол перешел на третий фрейм.

Dimonius 05.06.2003 14:26

Уточни пожалуйста
 
Сколько типов флешей будет, и сколько дубликатов, а то я чего-то в примере не совсем догоняю. Да, немного придется повозится со скрипингом на странице.

SPV 05.06.2003 15:11

А ещё есть замечательная штука - ЛокалКоннекшн называется...

http://www.macromedia.com/support/fl...connection.htm

RadonDmitro 05.06.2003 15:13

Вложений: 1
Привет:) Вот такой набор флэшей на странице (в архиве). Задача в том, чтобы каждый отдельный флэш (images1...5 , address1...5 , details1...5 , CTF1...5 , BZP1...5 , prop_name1...5), когда загрузился до конца - передал в контрол "я загружен". Желательно не просто абстрактно, типа flash_loaded_summary = flash_loaded_summary + 1
а чтобы в контроле был в конце такой набор переменных -

images1 = "loaded".
prop_name1 = "loaded".
address1 = "loaded".
details1 = "loaded".
CTF1 = "loaded".
BZP1 = "loaded".

images2 = "loaded".
prop_name2 = "loaded".
address2 = "loaded".
details2 = "loaded".
CTF2 = "loaded".
BZP2 = "loaded". и так еще три раза.

Это нужно для того, чтобы когда пять флэшей с порядковым номером 1 загрузились, контрол сказал флэшу images1 play.
тот в свою очередь, когда проиграет до конца сказал флэшу address1 play. И так до BZP1. Когда BZP1 доиграл до конца - он говорит контролу, что он закончил. Контрол проверяет, если все пять флэшей с порядковым номером 2 загружены, значит images2 play и все заново.

Это был бы идеальный вариант.

Есть в принципе промежуточный вариант - полегче - это каждый флэш когда он загружен добавляет к переменной в контроле flash_loaded_summary единицу. Контрол постоянно делает проверку - если кол-во наборов флэшей (в данном случае 5)*кол-во флэшей в наборе (в данном случае 6) == flash_loaded_summary , то одномоментно говорим всем флэшам play.

RadonDmitro 05.06.2003 15:17

2SPV: использование МХ пока исключено... а жаль...

Dimonius 05.06.2003 15:24

2 SPV
Точно, а я и забыл, что такая штукенция в шестерке появилась, спасибо.

2 RadonDmitro
Звини, меня ща работой срочной обложили, но к концу дня постораюсь, чем-нить тебе помочь, да ты и сам не плошай.

RadonDmitro 05.06.2003 15:29

Если получится буду Очень признателен :) В любом случае спасибо :)

SPV 05.06.2003 15:55

Через ЯвуСкрипт полезут подводные камни и самое главное - ФСКоманд не во всех браузерах работает.
Так-же придется заводить явовский буфер, потому что возможна такая ситуация: какой-либо флэш загрузился и просит яву отрапортовать этот факт контролу... но к этому времени сам контрол ещё не загружен. Тогда придется запоминать рапорт в буфере, а по загрузке контрола он должен спрашивать ЯвуСкрипт, что там в буфере накопилось.

Есть более универсальный способ без недостатков и без ЯваСкрипта - серверный скрипт. Каждый флэш по заргузке оповещает об этом сервер (скрипт), а контрол с некоторым интервалом запрашивает у сервера (скрипта) состояние всех флэшей. Чтобы не мучаться с файлами и сессиями, скрипту можно хранить текущее состояние в куках.


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

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