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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.02.2008, 20:09
Haiat вне форума Посмотреть профиль Отправить личное сообщение для Haiat Найти все сообщения от Haiat
  № 1  
Ответить с цитированием
Haiat
[+6 09.06.11]
 
Аватар для Haiat

Регистрация: May 2007
Сообщений: 721
По умолчанию tween,изменение цвета

Добрый день.Хотел спросить как с помощью твина сделать такое:
например нужно чтобы мувик менял свой цвет плавно к чёрному, но неизвестно насколько % он сейчас черный.
То есть ситуация такая:при наведении он плавно меняется к белому например,при отведении к белому.
Мне нужна лишь строчка с твином.спасибо
__________________
www.haiatov.ru

Старый 12.02.2008, 20:13
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
За вас я писать не буду, но подсказать могу.
Вам надо завести переменную, которую твин будет менять от 0 до 100, и на событие onMotionChanged менять через Color.setTransform составляющие исходя из значений вашей перменной.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 12.02.2008, 21:01
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 3  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Пример из Хелпа по изменению яркости:
Код:
import flash.filters.ColorMatrixFilter;
import mx.transitions.Tween;
import mx.transitions.easing.*;
System.security.allowDomain("http://www.helpexamples.com");
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip):Void {
    // center movie clip instance on Stage
    target_mc._x = (Stage.width - target_mc._width) / 2;
    target_mc._y = (Stage.height - target_mc._height) / 2;
    target_mc.watch("brightness", brightnessWatcher, target_mc);
    // animate the target_mc movie clip between -100 and +100 brightness
    var myTween:Tween = new Tween(target_mc, "brightness", Elastic.easeOut, 100, -100, 3, true);
    myTween.onMotionFinished = function() {
        this.yoyo();
    };
};
this.createEmptyMovieClip("img_mc", 10);
var img_mcl:MovieClipLoader = new MovieClipLoader();
img_mcl.addListener(mclListener);
img_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", img_mc);

function brightnessWatcher(prop:String, oldVal:Number, newVal:Number, target_mc:MovieClip):Number {
    var brightness_array:Array = [1, 0, 0, 0, newVal,
            0, 1, 0, 0, newVal,
            0, 0, 1, 0, newVal,
            0, 0, 0, 1, 0];
    target_mc.filters = [new ColorMatrixFilter(brightness_array)];
    return newVal;
};
Вам остается лишь вместо яркости вставить свои функции и параметры.
__________________
john

Старый 13.02.2008, 01:20
Haiat вне форума Посмотреть профиль Отправить личное сообщение для Haiat Найти все сообщения от Haiat
  № 4  
Ответить с цитированием
Haiat
[+6 09.06.11]
 
Аватар для Haiat

Регистрация: May 2007
Сообщений: 721
Спасибо.Я не просил писать Вас мне код.просто я ни разу не работал с tween и поэтому не знаю её методов всяких и переменных которые надо внутри писать.И поэтому поппросил Вас написать мне сам tween.Спасибо. Разберусь самно пока ждал ответат от одного человека сдела всё проще под чёрным разместил белый.И просто менял прозрачность
__________________
www.haiatov.ru

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

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
Может кому надо будет, на основе найденных тут материалов скрестил, ежа и ужа в результате получил довольно неплохой скриптик:
Код AS1/AS2:
import flash.filters.ColorMatrixFilter;
import mx.transitions.Tween;
import mx.transitions.easing.*;
 
var r:Number = 77/255;  // собсна цвета
var g:Number = 150/255; // собсна цвета
var b:Number = 25/255;  // собсна цвета
 
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip):Void 
{
    // center movie clip instance on Stage
    target_mc._x = (Stage.width - target_mc._width) / 2;
    target_mc._y = (Stage.height - target_mc._height) / 2;
    target_mc.watch("grayscale", grayscaleWatcher, target_mc);
    // animate the target_mc movie clip between 0 and 1 grayscale
    // 1 - серый спектр, 0 цветной.
    var myTween:Tween = new Tween(target_mc, "grayscale", None.easeOut, 0, 1, 1, true);
		target_mc.onRollOver = function()
		{
			var myTween:Tween = new Tween(this, "grayscale", None.easeOut, this.grayscale, 0, 1, true);
		}
		target_mc.onRollOut = function()
		{
			var myTween:Tween = new Tween(this, "grayscale", None.easeOut, this.grayscale, 1, 1, true);
		}
};
 
this.createEmptyMovieClip("img_mc", 10);
var img_mcl:MovieClipLoader = new MovieClipLoader();
	img_mcl.addListener(mclListener);
	img_mcl.loadClip("inno_error.jpg", img_mc);   // указываем картинку..
 
function grayscaleWatcher(prop:String, oldVal:Number, newVal:Number, target_mc:MovieClip):Number 
{
    target_mc.filters = [new ColorMatrixFilter([r * newVal + 1 - newVal, g * newVal, b * newVal, 0, 0, 
								  r * newVal, g * newVal + 1 - newVal, b * newVal, 0, 0,
								  r * newVal, g * newVal, b * newVal + 1 - newVal, 0, 0, 
								  0, 0, 0, 1, 0])];
    return newVal;
};

Старый 26.03.2009, 19:43
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 6  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
а какой аналог свойства watch в AS3?

Старый 26.03.2009, 20:03
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Пользуйтесь геттерами и сеттерами.

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

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

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


 


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


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