AS3在单击时恢复多个对象的Alpha

时间:2015-02-19 17:48:43

标签: actionscript-3 flash-cs6

我正在使用AS3创建一个简单的交互式Mr. Potato Head游戏,并使用以下代码使对象在点击时消失。这是处理Nose的代码示例。点击鼻子后,它会消失。一切都按预期工作;但是,我想要包含一个按钮,点击它会导致所有碎片(手臂,眼睛,嘴巴等)重新出现。

Nose.addEventListener(MouseEvent.CLICK, mouseHandler4);

function mouseHandler4(event:MouseEvent):void
{
    Nose.removeEventListener(MouseEvent.CLICK, mouseHandler4);
    addEventListener(Event.ENTER_FRAME, fadeOut4);
}

function fadeOut4(event:Event):void
{
    var a:Number = Nose.alpha-0.05;
    if (a<=0)
    {
        a = 0;
        removeEventListener(Event.ENTER_FRAME, fadeOut4);
    }
    Nose.alpha = a;
}

1 个答案:

答案 0 :(得分:0)

我会制作一个你想要淡入的所有片段的数组;

var pieces:Array = [arms, eyes, mouth];

然后单击,假设您创建类似于fadeOut4的fadeIn函数

for (var i:int = 0; i<pieces.length; i++){
  fadeIn(pieces[i]);
}