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

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

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

Регистрация: Jan 2009
Сообщений: 13
По умолчанию эффект смены для картинки

нужно сделать эффект смены одной картинки на другую, слева на право
с изменением xscale.
подскажите пожалуйста как это сделать программно с помощью AS.
пример без AS во вложении.
спасибо
Вложения
Тип файла: zip primer.zip (285.7 Кб, 67 просмотров)

Старый 29.01.2009, 13:04
Chel1 вне форума Посмотреть профиль Отправить личное сообщение для Chel1 Найти все сообщения от Chel1
  № 2  
Ответить с цитированием
Chel1

Регистрация: May 2008
Сообщений: 25
Цитата:
Сообщение от roo2jae Посмотреть сообщение
нужно сделать эффект смены одной картинки на другую, слева на право
с изменением xscale.
подскажите пожалуйста как это сделать программно с помощью AS.
пример без AS во вложении.
спасибо
думаю проще всего сделать это с помощью двух масок. одна из них скрывает постепенно один файл, вторая маска постепенно показывает другой

Старый 29.01.2009, 13:16
roo2jae вне форума Посмотреть профиль Отправить личное сообщение для roo2jae Найти все сообщения от roo2jae
  № 3  
Ответить с цитированием
roo2jae

Регистрация: Jan 2009
Сообщений: 13
нужно не совсем скрывать/показывать картинки.
скорее расширять/сужать
притом это надо делать программно, не могли бы вы привести пример кода этого действа :-)

Старый 29.01.2009, 15:43
Chel1 вне форума Посмотреть профиль Отправить личное сообщение для Chel1 Найти все сообщения от Chel1
  № 4  
Ответить с цитированием
Chel1

Регистрация: May 2008
Сообщений: 25
щас сделаю... wait a moment

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

Добавлено через 1 час 16 минут
у меня получилось так

Код AS1/AS2:
var picArr:Array = new Array();// для удобства работы картинки запихнем в массив
var curPic:Number = 0;// ссылка на текущую отображаемую картинку - индекс массива picArr
var flag:Boolean = false;// флаг для имитации задержки картинки на экране
var delay:Number = 50;// кол-во кадров, которые картинка будет оставаться на месте
var count:Number = 0;// приращение кадров, отсчитывается до значения переменной delay
var imgW:Number;// оригинальное значение ширины картинки
var speed:Number = 3;// скорость смены картинок
// заменяемая и заменяющая картинка
var ground:MovieClip;
var shift:MovieClip;
// если картинок много, запихивание лучше сделать программно
picArr[0] = pic1;
picArr[1] = pic2;
 
// начальное присваивание
ground = picArr[0];
shift = picArr[1];
ground._x = 0;
ground._y = 0;
shift._x = -shift._width;
shift._y = 0;
 
// срабатывает с частотой кадров в мувике
onEnterFrame = function ():Void {
	// проверяем надо ли анимировать картинку
	if (flag) {
		// проверяем, надо ли продолжать анимацию
		if (ground._width>speed) {
			shift._x += speed;
			ground._width -= speed;
			ground._x += speed;
		} else {
			flag = false;
			ground._x = 10000;
			ground._y = 10000;
			ground._width = imgW;
			ground = picArr[curPic];
			ground._x = 0;
			ground._y = 0;
			// Последний элемент массива?
			if ((picArr.length-1) == curPic) {
				shift = picArr[0];
				curPic = 0;
			} else {
				shift = picArr[curPic+1];
				curPic++;
			}
			shift._x = -shift._width;
			shift._y = 0;
		}
	} else {
		if (count == delay) {
			flag = true;
			imgW = picArr[curPic]._width;
			count = 0;
		} else {
			count++;
		}
	}
};
Добавлено через 3 минуты
почему у меня отображается с бб-кодами? что я делаю не так?

Старый 29.01.2009, 16:08
roo2jae вне форума Посмотреть профиль Отправить личное сообщение для roo2jae Найти все сообщения от roo2jae
  № 5  
Ответить с цитированием
roo2jae

Регистрация: Jan 2009
Сообщений: 13
спасибо, swf и fla с примером было бы замечательно,
так как я флеш изучаю недавно и понятного пока очень мало.

Старый 29.01.2009, 16:30
Chel1 вне форума Посмотреть профиль Отправить личное сообщение для Chel1 Найти все сообщения от Chel1
  № 6  
Ответить с цитированием
Chel1

Регистрация: May 2008
Сообщений: 25
Цитата:
Сообщение от roo2jae Посмотреть сообщение
спасибо, swf и fla с примером было бы замечательно,
так как я флеш изучаю недавно и понятного пока очень мало.
напиши в личку мыло, я тебе вышлю

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

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

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


 


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


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