Просмотр полной версии : Переменная в loadmovie!!!!!!!!
billioner
12.04.2004, 14:33
Необходимо чтобы загружался мувик имя которого указывается ранее в переменной!
Пример:
i="fkgjfkjvg.swf";
loadmovie (i, 2);
ОТВЕТЬТЕ СКОРЕЕ КАК ЭТОГО ДОБИТЬСЯ!!!! PLZ!!!!!!!
sssleeper
12.04.2004, 15:48
у меня похожий вопрос:
как записать в имя файла переменную? Например:
ourMovieClip.loadMovie("picX.jpg");
где X-должен быть переменной. т.е. я хочу чтоб у меня при нажатии на кнопку грузилась pic1.jpg, pic2.jpg и т.д.
ПЛЗ, знатоки ответьте на оба вопроса
Да вы сами и ответили - нужно присвоить переменной строку, содержащую урл мувика.
т.е.
movName = 'movie.swf';
_root.loadMovie (movName);
:^)
для второго случая:
movName = 'pic'+num+'.jpg';
где num - число
sssleeper
12.04.2004, 17:28
Гранд пасиба!
billioner
12.04.2004, 18:36
:( Моя вина - подробнее не объяснил!
Дело в том, что мувик подгружается по команде другого загруженного клипа, т.е. имеется последовательность из несколиких загружаемых клипов в которых переменная с именем мувика указывается в самом начале, а подгружается он по этой переменной в самом конце. Полный бред, если так читать, но это необходимость!!!
1) i=jdfgdk.swf
.
.
.
10) loadmovie (i, 5);
дело в том что последний мувик не изменяем, а первый - разный!
ОТВЕТЬТЕ ПОЖАЛУЙСТА СКОРЕЕ!!! :(
Совет: крузить мувики не один из другого, а из общей флэшки, в которой будет реализованна логика. Имхо это проще и ближе к стандартам ООП.
billioner
12.04.2004, 18:53
:rolleyes:Спасибо! Но я в принципе так и делаю:
1) первый подгружает кнопку по действию которой подгружаются други простые мувики
2)среди подгружаемых есть кнопка которая изначально указывает на повтор ролика с самого начала - она открывается и отображает надпись "Сначала?". Её действие подгружает ролик с закрытием кнопки, последний кадр которого опять открывает самый первый ролик... Бред, но заставить подругому сцену полностью обнулиться и играть сначала у меня просто не выходит... Подгружаемые мувики и кнопоки всегда разного дизайна и соответственно с разными именами. Т.е. каждый раз пишется пустой мувик с одной единственной кнопкой, который каждый раз подгружает различного дизайна кнопки, фоны и текст. И в моей дурной схеме имя этого мувика должно быть передано НЕ ИЗМЕНЯЕМОМУ последнему...
ЖДУ ПОМОЩИ!!!
Хы. Я что-то не совсем понимаю - это обусловленная необходимость грузить файлы ИЗВНЕ или все-таки можно грузить их из библиотеки (извини, я конечно могу расписать на каждый из этих случаев, но времени маловато :))
billioner
12.04.2004, 20:32
суть вот в чём - извечная проблема размера файлов! Хотя это делается не для нета, нужно как можно меньше делать каждый файл вставку. Все кнопки и элементы дизайна рисовались в 3d max и представляют собой серию импортированых последовательно отрендренных картинок - отсюда размер! Если делать конечный файл содержащий все необходимые элементы, то совокупный объём всех файлов будет очень большим. Поэтому повторяющиеся элементы просто подгружаются!
Жду!!! :)
Хм, вопрос очень интересный. Помниться мне, года два назад пришлось делать одну обучалку для солидной фирмы, и там я делал примерно то же самое.
И все-равно я не понял проблемы - если это делается не для WEB'a, то важна только скорость обработки команд, а не размер файла, а при грамотном распределении динамической загрузки ресурсов из библиотеки производительность почти не зависит от размера конечного файла.
Но все же попробую ответить.
Насколько я понял, вы, Billioner, немного неправильно акцентируете задачу. Попробуйте воспринимать ваши подгружаемые элементы не как Объекты, а как Ресурсы. То есть приблизительно так:
1. Динамически создается пустой мувиклип (attachMovie)
2. грузиться в него ресурс - внешний swf-файл. (loadMovie)
3. Определяются действия для объекта.
(obj.onPress (), к примеру)
Извините еще раз, что не могу точно ответить на Ваш вопрос, но я его не понял. Наверное я тупой :(
billioner
12.04.2004, 21:05
Спасибо! Я попробую Ваш вариант - надеюсь получиться...
Но, изначальный вопрос: как использовать переменную с командой loadmovie???
Пример:
i="kdjfd.swf"
.
.
.
loadmovie (i, 3);
У меня выполняется вся цепочка, всё работает! Загвоздка лишь в этом... Я не знаю как дословно оформить эту процедуру: запоминание и использование переменной с командой loadmovie!
А работа делается для диска - это ряд динамических таблиц и т.п. А место на диске ограниченно...
Dimonius
12.04.2004, 21:18
Если они все грузятся в основную, кстати в контейнер или на уровень?
соответственно переменную нужно присваивать в _root основного яруса. Тогда она будет читаться в дальнейшем.
billioner
12.04.2004, 21:21
Грузятся на уровни.
А как присваивать? Может это самый тупой вопрос, но у меня ни ... не получается...
Dimonius
12.04.2004, 21:24
_level0.i = "blablabla";
читать соответственно по тому же адресу.
billioner
12.04.2004, 21:26
Может быть...
Всё равно спасибо!!!
Если интересно - завтра сообщу resalt!!!
Dimonius
12.04.2004, 21:37
ок
billioner
13.04.2004, 10:44
К сожалению, всё равно не работает...
Если возможно опишите принцип назначения и использования любой собственной переменной с командой loadmovie!
billioner
13.04.2004, 11:31
Или что прописать в конечном мувике, чтобы он ссылался на первый материнский!!!
HELP!!!!!
billioner
13.04.2004, 12:11
:mad: Во дурак! Сам не правильно делал! Но всё равно не идёт:
в начальном ролике я задаю переменной имя с именем этого самого начального ролика:
_level0.i = "TESTBGold2.swf"
далее подгружаются другие клипы в уровни по возрастающей начиная с 1;
При нажатии на подгруженную кнопку грузится ролик с анимацией этой кнопки, в последнем кадре которой ставлю:
_level0.loadMovie(i, 0);
И у меня остаётся абсолютно белый фон...
В чём ошибка? Я не догоняю - уж слишком долго пытаюсь всё это сделать...
Причём этот метод сам по себе действует, а в этом слдучае -нет! :(
Если ты выложишь исходник (а лучше выдранный из исходника конкретный пример с траблой) mt,t помогут гораздо быстрее.
billioner
13.04.2004, 16:43
Первый клип (называется Pic(1.6).swf):
_level0.i = "Pic(1.6).swf"
loadMovie("FGoldL.swf", 1);
loadMovie("LongRedL.swf", 2);
loadMovie("WhiteR(1.1).swf", 4);
loadMovie("WhiteR(1.3).swf", 7);
loadMovie("WhiteR(3.1).swf", 12);
loadMovie("WhiteR(3.2).swf", 13);
loadMovie("WhiteR(3.3).swf", 14);
loadMovie("Text2.swf", 20);
Последний (из которого нужна ссылка) - мувик, в последнем кадре которого:
_level0.loadMovie(i, 0);
Срочно!!! Горит как никогда!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Что неправильно???? После проигрыша последнего мувик полностью обнуляется..........
Очень нужно!!!
используй волшебное слово _global
_global.i = ........
billioner
15.04.2004, 13:06
А в конечном мувике как писать???
billioner
15.04.2004, 16:14
_global.i="FGoldL.swf"
_global.loadMovie(_global.i, 1);
Так?
нет конечно
когда ты
_glibal.i = "any.swf"
ты к этой i можешь обратиться из любого ролика.
но я бы не рекомендовал использовать именно это имя переменной, потому, что i используется в качестве итератора.
назови как нибудь так, чтобы было понятно:
_global.end_swf_url = "any.swf"
после этого, где бы ты ни находился, ты можешь получить значение этой переменной:
_global.end_swf_url = "Pic(1.6).swf"
....................
_level0.loadMovie(end_swf_url, 0);
все-таки непонятно ты описываешь задачу.
расскажи что хочешь сделать словами, без кода.
billioner
15.04.2004, 20:11
Зайди на первую страницу!!! ;) Там уже несколько раз объяснялось... Просто раньше я так тесно со скриптом не работал, но всё равно сейчас себя полным новичком чувствую...
Если не сказать хуже... :(
За совет спасибо попробую! :)
во- первых все сообщения у меня в одном окне, это легко настроить %)
и прежде чем спросить я внимательнейшим образом изучил все ранее написанное.
поэтому, попробуй сформулировать задачу как для особо тупых, тогда мож и ответ родится.
billioner
15.04.2004, 20:40
!!!!!!!!!!!!!ВСЁ РАБОТАЕТ!!!!!!!!!!!!!
Вот, спасибо, так, СПАСИБО!!!
Всё вопрос закрыт!
BitSky и Dindin
ОГРОМЕННОЕ трёхкратное
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!....!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!....!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!С! !П! !А! !С! !И! !Б! !О!....!С! !П! !А! !С! !И! !Б! !О!....!С! !П! !А! !С! !И! !Б! !О!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!....!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!....!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Заходите на:
Форум на Flasher.ru > Flash > ActionScript > E-MAIL me! :?)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.