package { import flash.display.MovieClip; import flash.events.Event; import flash.geom.ColorTransform; import fl.motion.Color; public class ColourMix extends MovieClip { var selected:int = 0; public function ColourMix():void { for(var idx:int = 0; idx != numChildren; idx++) { var obj:Object = getChildAt(idx); if (obj is Oval) { var oval:Oval = obj as Oval; oval.addEventListener("selected", Selected); } } // var fcNum = document.getDocumentDOM().getTimeline().layers[0].frameCount; } public function Selected(event:Event):void { if (selected == 2) { for(var idx:int = 0; idx != numChildren; idx++) { var obj:Object = getChildAt(idx); if (obj is Oval && obj != event.target) { var oval:Oval = obj as Oval; oval.selected = false; } } selected = 0; } selected++; if (selected == 1) { var colorInfo:ColorTransform = new ColorTransform(); colorInfo.color = event.target.colour; bigColour.transform.colorTransform = colorInfo; } else { var colorInfo:ColorTransform = new ColorTransform(); colorInfo.color = Color.interpolateColor(bigColour.transform.colorTransform.color, event.target.colour, 0.5); bigColour.transform.colorTransform = colorInfo; } } } }