Вход

Просмотр полной версии : Как отобразить клип находящийся в библиотеке другого файла?


SaFeR
12.01.2006, 20:17
Здравствуйте, есть swf-файл, который содержит клипы в библиотеке, доступные для ActionScript.
Как я понимаю, для работы с такимы клипами необходимо использовать attachMovie, но мне нужно, чтобы эти клипы можно было посмативать из другого файла. Т.е я создаю файл просмотрщик и в зависимости от нужного раздела подружаю клипы из разных файлов.
Собственно вопрос в том, каким способом загружать swf, чтобы можно было работать с его библиотекой, и каким образом обращаться к библиотеке загруженного клипа?

KPaul
12.01.2006, 20:40
Читай про shared library. (по поиску в хелпе - F1).
Довольно просто, но не так уж удобно как хотелось бы...

SaFeR
12.01.2006, 21:02
Спасиба, пошёл читать :)

Antares
12.01.2006, 21:12
Есть еще способ. Но я даже не знаю, надо ли начинать объяснять... Я не лектор.

KPaul
12.01.2006, 21:20
2Antares
Я очень интересуюсь альтернативами в этом направлении. Если можно пару слов, возможно пару ссылок. Флешеру этого поста тоже будет интересно, я думаю...

SaFeR
12.01.2006, 22:24
Я так понял, для работы с Shared Library необходимо создавать клипы с соответствующими идентификаторами, и указывать путь к файлу из которого берётся символ.

2KPaul
Да уж не очень то удобно, дело в том что таки общих библиотек несколько, и их колличество может изменятся. Имя необходимой библиотеки и ID клипа ролик берёт йз скрипта, поэтому интересует, каким образом это можно реализовать толька средствами AS.

2Antares
Интересно узнать альтернативный вариант, хотя бы в общих чертах.

KUZEN
13.01.2006, 00:11
Мувики из библиотеки подгружаемого swf можно вытаскивать только в пределахЮ клипа в который он подгружен, т.е. есть swf1 в нём мувик (mc) в него подгружаем, swf2 у которого в библиотеке лежит мувик (mc2) с Linkage (mc2) , теперь чтобы вытащить этот мувик на сцену нужно написать в swf1 >> mc.attachMovie("mc2","mc2",1); и все дела, хотя если попытаться вытащить его в _root то ничего не получится ... _root.attachMovie("mc2","mc2",1); вот так не работает ... во блин загнул, надеюсь хоть что то понятно )))

SaFeR
13.01.2006, 10:23
2KUZEN
Спасибо за ответ, действительно при загрузке в _root - не работает, а при загрузке в клип всё ОК!

KUZEN
13.01.2006, 16:27
В 9-ке эта проблема будет решена ...

SaFeR
17.01.2006, 22:38
Мувики из библиотеки подгружаемого swf можно вытаскивать только в пределахЮ клипа в который он подгружен, т.е. есть swf1 в нём мувик (mc) в него подгружаем, swf2 у которого в библиотеке лежит мувик (mc2) с Linkage (mc2) , теперь чтобы вытащить этот мувик на сцену нужно написать в swf1 >> mc.attachMovie("mc2","mc2",1); и все дела, хотя если попытаться вытащить его в _root то ничего не получится ... _root.attachMovie("mc2","mc2",1); вот так не работает ... во блин загнул, надеюсь хоть что то понятно )))
Я делал все так и всё работало.... но теперь патаюсь повторить ничего не работает :( что за чорт? Может ещё какие-то особенности есть?

SaFeR
22.01.2006, 15:08
:(
Помогите пожалуйста исправить код в swf2 чтобы он всё таки отображал клипы из swf1 :( Я не знаю что уж мне делать.
в аттаче исходники swf1.fla и swf2.fla

Madasan
23.01.2006, 10:48
Дружище, у тебя в одном файле в линке "с2" с- русский символ, а в другом латинский! С виду одинаково, а код у этих символов разный!
И еще поправь код, вот так получше будет:
this.createEmptyMovieClip("clip", 0);
this.clip.loadMovie("swf1.swf");
this.onEnterFrame = function() {
var ldt = (this.clip.getBytesLoaded()/this.clip.getBytesTotal())*100;
if (ldt>=100 && this.clip.getBytesTotal() !== 0) {
_level0.clip.attachMovie("с2", "c2", 1);
this.onEnterFrame = null;

}
};
stop();
поставь это в первый кадр swf2? а остальное убери. :)

SaFeR
23.01.2006, 15:49
2Madasan
Спасибо тебе огромное сам наверное так и недопёр бы почему не работаёт, всё перепроверял код по 5 раз переписывал но линки не смотрел.