次の方法でフレームスクリプトを追加しようとしています。
private function addFrameScript(mc:MovieClip, label:String, func:Function, arg:*):void {
var labels:Array = mc.currentLabels;
var i:int = labels.length;
while (--i > -1) {
if (FrameLabel(labels[i]).name == label) {
mc.addFrameScript(FrameLabel(labels[i]).frame-1, func(arg));
return;
}
}
trace("WARNING: The label '" + label + "' does not exist in the MovieClip '" + mc.name + "'");
}
private function dispatchFrameEvent(labelName:String):void {
dispatchEvent(new Event(labelName, true));
}
addFrameScript(instanceName, "end", dispatchFrameEvent, "end");
しかし、それは追加されていないようで、理由がわかりません。通常、フレームスクリプトをメインタイムラインに追加しますが、タイムライン上のインスタンスには追加しません(上記の例のように)。
明らかに私が見逃しているものがあります...フレームスクリプトをトレースして、追加されているかどうかを確認する方法はありますか?