检测是否有时间线掩码

时间:2011-09-09 23:19:46

标签: flash actionscript-3 flash-cs5 mask haxe

我在Flash上​​遇到了一种非常奇怪的行为。 如果你在Flash IDE上创建一个带有与之关联的掩码的形状,保存它然后将其导出为swf,你不能以编程方式知道有一个掩码(displayObject.mask为null)

这是一个简单的测试脚本来证明:

//executed on enter_frame with the root object
function test(d:DisplayObject) : Void
{
    if (Std.is(d, DisplayObjectContainer))
    {
        var s:DisplayObjectContainer =  cast d;
        for (i in 0...s.numChildren)
            test(s.getChildAt(i));
    }

    if (d.mask != null)
        trace("FOUND " + d.name);
}

语法有点不同,因为它是haxe,但它会在vanilla AS3上显示相同

没有找到面具的痕迹!我只需要处理附加掩码的情况,所以有什么办法/解决这个奇怪的问题吗?

1 个答案:

答案 0 :(得分:3)

很确定这是不可能的......这是一个支持我的线索:

http://www.actionscript.org/forums/archive/index.php3/t-184762.html