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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Jun 2003
Сообщений: 28
Отправить сообщение для GreeNoise с помощью ICQ
По умолчанию вставить картику как переменную

ЕСТЬ ФИЛЬМ , состоящий из нескольких сцен, все сцены построены по одному принципу, отличаются только используемыми картинками. Картинки на этих сценах одинакового размера и расположены на всех сценах в одном и том же месте.

Я ХОЧУ : весь фильм сократить до одной сцены, а символы вставлять скриптом как переменные.

НАПРИМЕР ТАК : все картинки у меня лежат в библиотеке как эталоны (symbol) и в нужный момент времени доставать их скрипитом, обращаясь по имени, и вставлять в нужное место.

ВОПРОС : Как мне указать куда именно надо вставлять картинку? И, если фильм у нас будет из одной сцены, как сделать, чтобы при следующем проходе (loop) вставлялась другая картинка?

Не слишком ли я намудрил?

Старый 30.06.2003, 14:15
Iv вне форума Посмотреть профиль Отправить личное сообщение для Iv Посетить домашнюю страницу Iv Найти все сообщения от Iv
  № 2  
Iv
 
Аватар для Iv

Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
не слишком намудрил.
- нужно аттачить картинку из библиотеки.
сделай пустой клип на сцене, в него аттачь на нулевую глубину.

или еще проще:
все картинки сделай мувиками положи в одно место на сцене, и просто делай всем визибл 0
а после этого нужной - визибл 1
и все

Старый 30.06.2003, 14:26
GreeNoise вне форума Посмотреть профиль Отправить личное сообщение для GreeNoise Найти все сообщения от GreeNoise
  № 3  
GreeNoise

Регистрация: Jun 2003
Сообщений: 28
Отправить сообщение для GreeNoise с помощью ICQ
Сэнкс!
Ok! Только я не совсем представляю как сделать, чтобы при следующем проходе (loop) вставлялась другая картинка?

Старый 30.06.2003, 14:30
Dimonius вне форума Посмотреть профиль Отправить личное сообщение для Dimonius Посетить домашнюю страницу Dimonius Найти все сообщения от Dimonius
  № 4  
Dimonius
 
Аватар для Dimonius

Регистрация: Nov 2002
Адрес: Moskow Stone Jungles Статус: Бывший беспредельщик Любит: Гонять нубов в поиск Пользователь: № 0.5
Сообщений: 4,999
Отправить сообщение для Dimonius с помощью ICQ Отправить сообщение для Dimonius с помощью AIM Отправить сообщение для Dimonius с помощью MSN Отправить сообщение для Dimonius с помощью Yahoo
Создай переменную в первом кадре, с инкриментом во втором Все картинки пронумеруй, лупись со второго кадра.
__________________
Учиться и, когда придет время, прикладывать усвоенное к делу - разве это не прекрасно! Беседовать с другом, приехавшим издалека, - разве это не радостно! Не быть по достоинству оцененным светом и не таить обиду - разве это не возвышенно!

Старый 30.06.2003, 15:10
GreeNoise вне форума Посмотреть профиль Отправить личное сообщение для GreeNoise Найти все сообщения от GreeNoise
  № 5  
GreeNoise

Регистрация: Jun 2003
Сообщений: 28
Отправить сообщение для GreeNoise с помощью ICQ
Так. Хорошо, а если у меня должно быть несколько таких динамически-изменяемых объектов?

Например: imgLeft, imgCenter и imgRight

В библиотеке сложить их в разные папки и нумеровать их отдельно?

Старый 30.06.2003, 17:00
Dimonius вне форума Посмотреть профиль Отправить личное сообщение для Dimonius Посетить домашнюю страницу Dimonius Найти все сообщения от Dimonius
  № 6  
Dimonius
 
Аватар для Dimonius

Регистрация: Nov 2002
Адрес: Moskow Stone Jungles Статус: Бывший беспредельщик Любит: Гонять нубов в поиск Пользователь: № 0.5
Сообщений: 4,999
Отправить сообщение для Dimonius с помощью ICQ Отправить сообщение для Dimonius с помощью AIM Отправить сообщение для Dimonius с помощью MSN Отправить сообщение для Dimonius с помощью Yahoo
Как ты их уложишь в библиотеке - это твое дело, главное, что бы они заканчивались нужным номером, тогда ты сможешь обращаться к ним как
"imgLeft"+var
"imgCenter"+var
"imgRight" +var
где var та переменная, задающая номер итерации.
__________________
Учиться и, когда придет время, прикладывать усвоенное к делу - разве это не прекрасно! Беседовать с другом, приехавшим издалека, - разве это не радостно! Не быть по достоинству оцененным светом и не таить обиду - разве это не возвышенно!

Старый 01.07.2003, 18:16
GreeNoise вне форума Посмотреть профиль Отправить личное сообщение для GreeNoise Найти все сообщения от GreeNoise
  № 7  
GreeNoise

Регистрация: Jun 2003
Сообщений: 28
Отправить сообщение для GreeNoise с помощью ICQ
чего-то нифига у меня не получается =(

мне надо :
у меня есть три набора мувиклипов, по четыре клипа в каждом наборе, все они названы imgLeft1, imgLeft2... imgRight1, imgRight2... imgCenter1, imgCenter2 ... и т.д.

все они расположены на одной сцене и я хочу, чтобы при каждом проходе (loop) отображался следующий по порядку мувиклип, а после того как отобразится последний набор, фильм должен останавливаться.

могу я сделать так? :
в первый кадр самого верхнего слоя я пишу:

for (i=0; i<5; i++) {
"imgLeft"+i
"imgCenter"+i
"imgRight" +i
}

как я понимаю, после каждого прохода заначение i увеличивается на единицу, но как это сказать флешу, что он правильно меня понял?

Старый 01.07.2003, 21:13
Iv вне форума Посмотреть профиль Отправить личное сообщение для Iv Посетить домашнюю страницу Iv Найти все сообщения от Iv
  № 8  
Iv
 
Аватар для Iv

Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
я бы рекомендовал поступить иначе:
сделай три массива, а еще лучше xml-описание сцены и перезоди по xml, считывая их него данные о требуемых мувиках и их настройках.
ща пример сделаю и пришлю.

Старый 01.07.2003, 21:26
Sanik вне форума Посмотреть профиль Отправить личное сообщение для Sanik Посетить домашнюю страницу Sanik Найти все сообщения от Sanik
  № 9  
Sanik
 
Аватар для Sanik

Регистрация: Apr 2003
Адрес: in the moon...
Сообщений: 1,263
Отправить сообщение для Sanik с помощью ICQ
Исходник лучше выложи...

Старый 01.07.2003, 21:37
Iv вне форума Посмотреть профиль Отправить личное сообщение для Iv Посетить домашнюю страницу Iv Найти все сообщения от Iv
  № 10  
Iv
 
Аватар для Iv

Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
зачем исходник?
посмотреть что у меня весь скрипт в руте в первом кадре?
и в библиотеке лежат два залинкованных мувика ball_mc и triangle_mc
Код:
// создаем XML описание (а можно и загрузить извне)
// по принципу: номер сцены указывается в ID узла сцены
// имя узла соответствует linkage имени мувика в библиотеке
str = "<scenes>";
str += "<scene id='1'>";
str += "<ball_mc _name='ball_mc' _x='20' _y='50' _alpha='50'/>";
str += "<triangle_mc _name='triangle_mc' _x='200' _y='100' _alpha='90'/>";
str += "<ball_mc _name='oval_mc' _x='20' _y='50' _xscale='50'/>";
str += "</scene>";
str += "<scene id='2'>";
str += "<ball_mc _name='ball_mc' _x='200' _y='150' _alpha='50'/>";
str += "<triangle_mc _name='triangle_mc' _x='20' _y='100' _alpha='90'/>";
str += "<ball_mc _name='oval_mc' _x='20' _y='50' _xscale='150'/>";
str += "</scene>";
str += "<scene id='3'>";
str += "<ball_mc _name='ball_mc' _x='20' _y='50' _alpha='50'/>";
str += "<triangle_mc _name='triangle_mc' _x='20' _y='100' _alpha='10'/>";
str += "<ball_mc _name='oval_mc' _x='20' _y='50' _xscale='30'/>";
str += "</scene>";
str += "</scenes>";
_root.scenes_xml = new XML(str);
// удаляем строку, она нам больше не нужна
delete str;
// создаем свойство scene в руте
_root.getScene = function() {
	return _root.scene;
};
_root.setScene = function(num) {
	var mc = _root.createEmptyMovieClip("holder_mc", 0);
	var nod_array = _root.scenes_xml[num].childNodes, i = 0;
	for (i; i<nod_array.length; i++) {
		mc.attachMovie(nod_array[i].nodeName, "", i, nod_array[i].attributes);
	}
};
_root.addProperty("scene", _root.getScene, _root.setScene);
// делаем тестовые аттачи 
_root.onMouseUp = function() {
	_root.scene++;
};
и все. все очень просто.

Создать новую тему   Часовой пояс GMT +4, время: 04:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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