PDA

Просмотр полной версии : помогите оленю....как сделать?


GENOCID
13.10.2001, 12:02
:rolleyes: :) подскажите пожалуйста как сделать чтоб загружать в один
swf( cайт) другой swf(клип) причём нужного размера и в определённом месте :cool:

Iv
13.10.2001, 12:29
используй loadMovie[.....] :D
дальше есть два пути:
1) грузить в таргет (т.е. в другой мувик), соответственно позиционируй этот мувик.
2) грузить в левел, соответственно нужно позиционировать подгружаеый мувик..

GENOCID
13.10.2001, 15:00
спосибо! я так и думал, только сомневался!

nagash
13.10.2001, 15:55
а я вот допустим делал лоад мувие
и он мне открывался на весь мой мувик...
обьясните плз как мне сделать чтобы он был нужного мне размера...
м...!!! плз :)

Yeropfeeff
13.10.2001, 17:07
у объекта существуют свойства:

размер в процентах
_xscale
_yscale

размер в пикселях
_width
_height

nagash
13.10.2001, 17:23
хорошо... это понятно...
а где их писать надо? :)

nagash
13.10.2001, 17:30
я допустим пишу

loadMovie ("intro.swf", "0");

и где, и как мне задать размеры? :(

Yeropfeeff
13.10.2001, 17:31
дапустим у тебя есть мувик BUF
тогда
loadMovie ("URL", "BUF");
после полной загрузки
делаешь
BUF._xscale=90;
и т.д.

nagash
13.10.2001, 17:40
а если такая ситуация... -
у меня есть мувик... тобишь только фаил intro.swf
я его лоад мувие загружаю... но я незнаю его названия... этот файлик вообще запоролен... просто человек который делал этот сайт до меня всё запоролил и изчез не оставив исходников...
итак я пишу
loadMovie ("intro.swf", "0");
потом же неполучится написать
0._xscale=90;
так? :)
и я так и непонял куда писать 0._xscale=90; в следующий фрейм или в тот же :)
ну только не ругайтесь что я ужасно глупый! :)

asd
13.10.2001, 17:47
а ты грузи его в контейнер ....... то бишь в Target....
loadMovie ("zx.swf", "conteiner");
а с контейнером делай че хошь
_root.conteiner._height = 80

Yeropfeeff
13.10.2001, 17:47
создаёшь пустой мувик
или
дублируешь
даёшь ему имя
а
потом
грузишь в НЕГО
и работаешь с ним

nagash
13.10.2001, 18:06
опять двадцать пять :(
ничего неполучилось... простите меня я просто только с экшн скриптом начинаю общаться... у меня без него всегда получалось :)
итак как я только что сделал и как у меня не получилось :)
я создал обьект ну мувик пустой - в нём в первом фрейме написал - loadMovie ("intro.swf", "intro"); - так обьект я тоже назвал "intro" далее вставляю этот обьект в основную сцену на нужную мне позицию и на этот обьект вешаю скрипт - onClipEvent (load) {
_root.intro._height = 100;
_root.intro._width = 100;
}
ну естественно ничего неработает :)
подскажите плз где я сделал неправильно... :) ведь неправильно же... :)

asd
13.10.2001, 18:27
делай по следующему сценарию::::::::
На главной линейке создаешь пустой мувик, называешь его "conteiner". Не надо без особой надобности делать onClipEvent. Сделай 5 пустых кадров. Мувик по имени контейнер должен быть на протяжении всех 5 кадров. В последнем напиши Stop(). Во втором допустим
loadMovie ("zx.swf", "conteiner"); т.е грузишь свой файл в этот контейнер.
При проигрывании с первого кадра он и начнет грузить твой мувик в данный контейнер то бишь пустой мувик. Но..... чтобы динамично менять параметры этого мувика, нужно быть уверенным в полной его загрузке. Потому, как пока он не загрузился полностью - все изменения не имеют ни какого смысла. Поэтому надо сделать загрузчик и проверять, загрузился ли этот мувик..... но это отдельная песня. Сценарий можно придумать любой...... постарался изложить как можно доходчивее. Надеюсь понятно? И только попотом начинаешь менять щирину, высоту, цвет ....ит.д....т т.п

Yeropfeeff
13.10.2001, 18:28
все скрипты надо писать не В и не НА созданном мувике, а
например в какомто кадре на какомто уровне основного мувика, в нём же (в основном мувике) на какомто уровне лежит твой пустой мувикю.

nagash
13.10.2001, 22:39
блин вот теперь я обсалютно всё понял :)
супер... а теперь несколько вопросов... я просто незнаю как правильно написать код...
1 - вод создал я мувик начал загружать туда внешний мувик а как мне проверить полностью он загружен или нет? я же даже незнаю сколько в том мувике кадров...
2 - а как правильно писать ширину и высоту... просто напишите мне пример... я незнаю как ведь если просто написать строчку
_root.conteiner._height = 80
что то опять будет неправильно :)
вот как мне правильно написать чтобы всё работало? :)

asd
14.10.2001, 02:55
....для проверки загружен ли подгружаемый мувик лучше всего в самом конце тайм лайн(подгружаемого мувика) создать какую-нить переменную ..... например load = 1. Соответственно при загрузке нужно сделать проверку на этот ключ. Не буду заботиться о компактности ...... ибо важно сначала понять механизм работы. Тобишь, как мы догрились, во 2 фрэйме(кадре) у нас начало загрузки ....
a = 1
conteiner.load = 0 // если мы подгружаем в этот контейнер(пустой мувик) - то и переменная должна находиться именно там.
loadMovie ("zx.swf", "conteiner");
.... далее, в 4 кадре
a++ ....просто счетчик на случай обрыва связи
....потом проверка на ключ load (4 кадр)
if (conteiner.load != 1){
(здесь еще можно сделать ограничение на счетчик, чтобы при обрыве связи всю эту хрень не зациклило)
gotoAndPlay (3);
}else{ // соответственно когда у нас сработал ключ, мы можем менять любые параметры подгруженного мувика.
conteiner._y = 150
conteiner._x= 250
......etc
gotoAndStop (5);
}
Надеюсь понятно написал....

asd
14.10.2001, 03:00
...... да..есть одно но..... все это имеет смысл если есть возможность радактить подгружаемый мувик.... если нет - можно сделать проверку на колличество подгружаемых байт данного мувика.

Yeropfeeff
14.10.2001, 15:19
в 5 флэше при загрузки мувика есть два параметра
мувик.getBytesLoaded(); // количество загруженых байт
и
мувик.getBytesTotal(); //объём мувика в вайтах

когда эти два значения равны и не равны 0, то мувик загружен.

nagash
14.10.2001, 21:22
м... всё понял всё очень просто... только последний вопросик и всё...
вобщем создал я пустой мувик - контейнер - на втором фрейме начал загружать в него свою заставку... и тут вот какой вопрос... - я написал такой скрипт -

loaded = conteiner.getBytesLoaded();
total = conteiner.getBytesTotal();
if (loaded != total) {
gotoAndPlay (3);
} else {
conteiner._y = 200;
conteiner._x = 200;
conteiner._width = 200;
conteiner._height = 200;
gotoAndStop (5);
}

вот... естественно неработает :) у меня вызывают семнения вот эти две строки

loaded = conteiner.getBytesLoaded();
total = conteiner.getBytesTotal();

файл с заставкой называется intro.swf может просто я неправильно эти две строчки написал? или что ещё... всё вроде правильно уже!
блин :(

Bitmuncher
15.10.2001, 12:59
у тебя 3 кадра.
во 2 кадре делаешь проверку, если не загрузился, то гото 1.
в 3 кадре меняеш размер.

nagash
15.10.2001, 15:01
грррррррррр неработает :(
всё... я ничего не понимаю :(
первый кадр

loadMovie ("intro.swf", "conteiner");

второй кадр

loaded = conteiner.getBytesLoaded();
total = conteiner.getBytesTotal();
if (loaded != total) {
gotoAndPlay (1);
}

третий кадр

conteiner._y = 200;
conteiner._x = 200;
conteiner._width = 200;
conteiner._height = 200;

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

asd
15.10.2001, 16:43
zzz

Bitmuncher
15.10.2001, 16:48
проблема в том, что ты проверяешь
равны ли загр.б. и всего.б.
а надо <
Вот тебе пример...

nagash
15.10.2001, 17:33
хехехе :)
спасибо вам огромное за помошь
вся моя проблема была в том что я неправильно вас понял :)
а сейчас всё работает... просто супер...
просто вы сказали сделать мувик контейнер... ну я и сделал мувик контейнер... :) а надо было ему в instance имя написать :)
еххх
спасибо

Alen
04.11.2001, 21:04
... если при загрузке в мувика№3 в мувик№2 и отображении мувика№2 в мувике№1... у себя на компе все получается, а при выкладке его на сервак - ни"$@а не получается