Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.06.2006, 21:01
aaum вне форума Посмотреть профиль Отправить личное сообщение для aaum Найти все сообщения от aaum
  № 1  
Ответить с цитированием
aaum
 
Аватар для aaum

Регистрация: Apr 2006
Сообщений: 107
По умолчанию верификация дочерней флешки

Добрый день. Поиск еще больше запутал меня, неопытного Понимаю, и проблема то смешная, однако заняла у меня приличное время... итак, в "голову", где установлен общий прелоадер, подружаются дочерние swf в контейнер plassen :
Код:
stop();
this.onEnterFrame = function() {
	if (vara != naa) {
		plassen.unloadMovie;
		plassen.loadMovie((("SA"+vara)+".swf"));
		naa = vara;
	} else {
		j = plassen.getBytesLoaded();
		e = plassen.getBytesTotal();
		if (j == e) {
		ja = true;
		} else {
		_root.ladder.gotoAndStop(Math.round(j/e*100));
		ja = false;
		}
	}
};
а в руте подгружаемой:
Код:
if (ja = true) {
	gotoAndPlay(2)};
stop();
то есть смысл в том, чтобы начать показ ролика лишь в случае полной его загрузки. Здесь я нарочно потер идентификаторы уровней и оставил одну суть... и еще, по "критериям изящного" - что можно было бы придумать вместо приведенного выше способа?

Спасибо, дорогие!


Последний раз редактировалось aaum; 22.06.2006 в 21:27.
Старый 22.06.2006, 21:48
RandomUser вне форума Посмотреть профиль Отправить личное сообщение для RandomUser Найти все сообщения от RandomUser
  № 2  
Ответить с цитированием
RandomUser

Регистрация: Mar 2006
Адрес: Odessa
Сообщений: 157
Код:
if (ja == true) {
	gotoAndPlay(2)};
stop();
P.S.Читай в хелпе про MovieClipLoader
__________________
Не всех война убила - многих покалечила

Старый 22.06.2006, 23:12
aaum вне форума Посмотреть профиль Отправить личное сообщение для aaum Найти все сообщения от aaum
  № 3  
Ответить с цитированием
aaum
 
Аватар для aaum

Регистрация: Apr 2006
Сообщений: 107
касательно первого варианта: воспользоваться _global является выходом? Если да, то каким образом это можно осущесвить?

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

Старый 23.06.2006, 01:10
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 4  
Ответить с цитированием
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
во первых: в твоём коде нашёл ещё одну ошибку синтаксического плана =)
Цитата:
Сообщение от aaum
plassen.unloadMovie;
функции(методы) запускаются при помощи ()
т.е. надо писать так
Код:
plassen.unloadMovie();
Цитата:
Сообщение от aaum
касательно первого варианта
мы грузим swf внутрь мувиклипа plassen, по этому plassen - будет рутом swf
т.е. ja надо записывать внутри plassen
Код:
plassen.ja = true;
вот я переделал твой код прелоадера(сделал более правильным по логике), изучи:
Код:
this.onEnterFrame = function() {
	if (naa != vara) {
        naa = vara;
		plassen.loadMovie(("SA"+vara)+".swf");
        loadedflag=false;
	}
    if(!loadedflag && naa!=undefined){ // если не загружено и есть что грузить
		lod = plassen.getBytesLoaded();
		tot = plassen.getBytesTotal();
       	if(tot>4 && lod*tot>0){ // старт загрузки
       	 	_root.ladder.gotoAndStop(Math.round(lod/tot*100));
			if (lod == tot) { // конец загрузки
                loadedflag=true;
				plassen.gotoAndPlay(2);
			}
        }
	}
};
а в руте подгружаемой:
Код:
stop();
__________________
flash it


Последний раз редактировалось Techmaker; 23.06.2006 в 01:13.
Старый 23.06.2006, 01:43
aaum вне форума Посмотреть профиль Отправить личное сообщение для aaum Найти все сообщения от aaum
  № 5  
Ответить с цитированием
aaum
 
Аватар для aaum

Регистрация: Apr 2006
Сообщений: 107
ура!!! выход найден!! кому интересно:
Код:
else {
		j = plassen.getBytesLoaded();
		e = plassen.getBytesTotal();
		if (j == e) {
			plassen.gotoAndPlay(2);
		} else {
			_root.ladder.gotoAndStop(Math.round(j/e*100));
		}
	}
};
и все!! а в подружаемом ролике в первый кадр пишем stop (); а со второго начинается ролик.

ЗЫ: - это я, когда я чем то доволен! и отдельное спасибо techmaker, сообщение которого я не заметил вовремя


Последний раз редактировалось aaum; 23.06.2006 в 01:47.
Создать новую тему Ответ Часовой пояс GMT +4, время: 02:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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