AS3 Tweening изменение оттенка - PullRequest
0 голосов
/ 30 марта 2011

У меня загружен этот мувиклип, который называется cHolder.Сначала я накладываю оттенок, а когда это мышка, то оттенка не будет.Как применить анимацию, чтобы изменения оттенка появлялись более постепенно?Спасибо!

        var imageLoader = new Loader();
        imageLoader.load(new URLRequest(projectDP));        
        var origColor: Color = new Color();
        origColor.setTint( 0x000000, 0.8 );
        cv.cHolder.transform.colorTransform = origColor;
        cv.cHolder.addChild(imageLoader);
        this.addChild(cv);


        cv.cHolder.addEventListener(MouseEvent.MOUSE_OVER, onRoll);
        cv.cHolder.addEventListener(MouseEvent.MOUSE_OUT, onOut);
            function onRoll(e:Event):void
        {
            origColor.setTint( 0, 0 );
            e.currentTarget.transform.colorTransform = origColor;
        }           

            function onOut(e:Event):void
        {

            origColor.setTint( 0x000000, 0.8 );
            e.currentTarget.transform.colorTransform = origColor;
        }

1 Ответ

3 голосов
/ 30 марта 2011

Я рекомендую использовать анимацию двигателя. Вы можете использовать Flash Tween, но я предпочитаю работать с любым из множества доступных движков, таких как TweenMax .

Чтобы подкрасить оттенок, вы должны сделать что-то вроде этого:

import com.greensock.*;
import com.greensock.plugins.*;
TweenPlugin.activate([TintPlugin]);

var color:uint = 0x0;
var imageLoader = new Loader();
    imageLoader.load(new URLRequest(projectDP));        
    var origColor: Color = new Color();
    origColor.setTint( 0x000000, 0.8 );
    cv.cHolder.transform.colorTransform = origColor;
    cv.cHolder.addChild(imageLoader);
    this.addChild(cv);


    cv.cHolder.addEventListener(MouseEvent.MOUSE_OVER, onRoll);
    cv.cHolder.addEventListener(MouseEvent.MOUSE_OUT, onOut);
        function onRoll(e:Event):void
    {
        //origColor.setTint( 0, 0 );
        //e.currentTarget.transform.colorTransform = origColor;
        TweenLite.to(e.currentTarget, 1, {tint:null});
    }           

        function onOut(e:Event):void
    {

        //origColor.setTint( 0x000000, 0.8 );
        //e.currentTarget.transform.colorTransform = origColor;
        TweenLite.to(e.currentTarget, 1, {tint:0x000000});          
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...