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

AS3 Restore Alpha of Multiple Objects on Click

我正在使用 AS3 创建一个简单的交互式土豆头先生游戏,并使用以下代码使对象在单击时消失。这是处理鼻子的代码示例。单击鼻子时,它会消失。一切都按预期工作;但是,我想包含一个按钮,单击该按钮会导致所有部分(手臂、眼睛、嘴巴等)重新出现。

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;
}

我会制作一个包含所有你想要淡入的剪辑的数组;

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

然后单击,假设您创建了一个类似于 fadeOut 4 的 fadeIn 函数

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