var frameListeners:Array = []; function addFrameListener(func:Function):Void { removeFrameListener(func); frameListeners.push(func); if (!this.onEnterFrame) { this.onEnterFrame = fireFrameListeners; }} function removeFrameListener(func:Function):Void { var i:Number = frameListeners.length; while (i--) { if (frameListeners[i] == func) { delete frameListeners.splice(i, 1); break; } } if (!frameListeners.length) { this.onEnterFrame = null; }} function fireFrameListeners():Void { var i:Number = 0; var n:Number = frameListeners.length; while (i < n) { frameListeners[i++](); }}
addFrameListener(functionOne);addFrameListener(functionTwo); // function functionOne():Void { trace("function one");} function functionTwo():Void { trace("function two");}
removeFrameListener(functionTwo);
addFrameListener(someFunction); this.onEnterFrame = function():Void { //}