Просмотр полной версии : проверка загрузки джпегов в разные кадры мувика
есть 6 кадров на одном слое в одному мувике pictt_777 (инстанс которого 'pic')
и один скрипт
gotoAndStop(_parent._parent.num);
во втором слое
в каждом из этих кардров лежит по мувику pic1-pic6(инстансы аналогичные) куда надо погрузить из хмл файла джпеги адрес которых в глобальных переменных _global.img1-img6
изза того что много раз флешка обращаеться к каждому из этих обьектов надо один раз загрузить туда картинки и все
знаю что надо либо создать мувик-контейнер в каждом из кадров
либо уже загружать в имеющеи
но незнаю как перебрать их ибо они в разных кадрах
и как проверить загружал я уже туда картинку или нет
var mc = this.createEmptyMovieClip("cont", this.getNextHighestDepth());
mc.loadMovie(_global.img[i]);
оч надеюсь на вашу помощ
"В кадры" на таймлайне ничего загружать не получится.
Сделайте в начале невидимый контейнеры, грузите все в них.
Потом по надобности делайте их видимыми и опять невидимыми.
Можно с загруженного снять битмапу и положить ее в массив, а потом также добавлять-убирать со сцены эти битмап-данные, когда нужно.
Как все это делать, обсуждалось на форуме неоднократно.
PS. loadMovie не используйте, используйте класс MovieClipLoader.
http://193.93.19.6/flash/header_v8_3.html - это то над чем я парюсь
обьект pictt_777 используеться сразу в 6 случаях только разными кадрами поетому мне надо загружать их именно в те кадры
я вот сделал такой скрипт в первом фрейме мувика pic1
if (_global.imgl[0] == 'start load')
{this.createEmptyMovieClip("mc", this.getNextHighestDepth());
if (this.mc.loadClip(_global.image[0], "mc")== true)
{trace ('load 1 loaded');
}
else {
trace ('load 1 notok')};
_global.imgl[0] = 'loaded';}
else {
trace (_global.imgl[0]);
}
но немогу понять почему негрузиться
Зачем вы все время в чсвоих скриптах постоянно используете глобальные переменные! Это же нехорошо совсем!
Добавлено через 4 минуты
if (this.mc.loadClip(_global.image[0], "mc")== true) ЧТО ЭТО????? АААААА!!!! цирк?
просто я использую эти переменные в разных мувиках
а разве можно без глобального?
Я вам с удовольствием помогу тока уберите эти ужасы с кода! Что вы хотите в if проверять ? загрузку клипа? Тjulf надо использовать onLoadInit метод
mcl.onLoadInit = function() { someVarSay = true; }
onEnterFrame = function() {if(someVarSay) { trace("Loaded")}}
Добавлено через 1 минуту
Конечно можно обойтись без глобала! Я лично *(имхо) глобал тока для подгрузки внешних классов делаю. Все остальное local
нео понял код что вы написали, точнее незнаю то ли мне надо
вот как я понимаю как должен работать моя скрип
сначала проверяеться переменная imgl[i] - тоесть первый ли раз обращаеться к этому клипу
если да то меняеться imgl[i] и создаеться мувик-контейнер (правда наверное можно и без него)
и загружаеться туда файл по ссылке image[i] мб с прелоудером
но полскольку я слаб в програмировании то у меня бывают такие ляпы :)
переделал на такой код
var container:MovieClip = createEmptyMovieClip("container", getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
function onLoadInit(mc:MovieClip) {
trace("onLoadInit: " + mc);
}
mcLoader.addListener(this);
mcLoader.loadClip(_global.image[0], container);
все работает
а вот если поставил такую проверку
if (_global.imgl[0] == 'start load'){
trace(_global.imgl[0]);
_global.imgl[0] = 'loaded';
trace(_global.imgl[0]);
mcLoader.addListener(this);
mcLoader.loadClip(_global.image[0], container);
}
else {trace('image1 loded')} то перестает загружать
вопервых.
var obj:Object = new Object();
mcLoader.addListener(obj);
это раз
Во вторых - ошибок не вижу. Не нравится тока снова вот это if (_global.imgl[0] == 'start load') что то тут не так мне кажется..... хотя без разницы если трейсы работают....
lexa2000lexa
05.04.2010, 10:58
вопервых.
var obj:Object = new Object();
mcLoader.addListener(obj);
это раз
вот это как раз и не обязательно , чем вам this не объект? не нужно плодить лишние объекты, когда можно обойтись и без них.
to prior
выкладываете ваш исходник , так быстрее помогут.
исходники с остальными файлами тут (http://193.93.19.6/flash/1.rar)
lexa2000lexa
05.04.2010, 13:49
пересохраните как минимум под CS3.
исходники в цс3 (http://193.93.19.6/flash/1_cs3.rar)
lexa2000lexa
05.04.2010, 16:21
все у вас работает, и нормально загружаеться.
какраз и нет
оно загружает картинку
только оно каждый раз ее загружает как я понимаю
ибо
функция
mclListener.onLoadInit = function(mc:MovieClip){
trace("onLoadInit: " + mc);
_global.imgl[0] = 'loaded';
trace('_global.imgl[0]'+_global.imgl[0]);
}
несрабатывает
кстати а как сделать так чтоб после загрузки картинки был такой ефект с картинками как здесь (http://193.93.19.6/flash/header_v8_3.swf)
тоесть там как я чуствую надо переделывать в битмап, неподкажите как
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.