package Engine { import flash.geom.Point; import flash.display.*; import flash.net.URLRequest; import flash.geom.Rectangle; import flash.geom.Point; import flash.events.Event; public class GraphicsManager { private static var m_images:Array = new Array(); private static var m_graphicsobjects:Array = new Array(); private static var m_loader:Loader; private static var m_imageToSplit:Image; private static var m_tileSize:Point; private static var m_loadedImage:Image; public static function GetImage(i_filename:String):Image { for each (var cur:Image in m_images) { if (cur.ImageName() == i_filename) { trace("curImagename is" + i_filename); return cur; } } LoadImage(i_filename,false); return GetImage(i_filename); } // returns false if file can't be found public static function LoadImage(i_filename:String, i_bool:Boolean):void { // create new loader for each image m_loader = new Loader(); m_loadedImage = new Image(); m_loader.load(new URLRequest( i_filename )); m_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, ImageLoadedComplete); m_loadedImage.SetImageName(i_filename); } public static function ImageLoadedComplete(event:Event):void { trace("Image Load Complete"); m_loadedImage.SetImageData(m_loader.content); m_images.push(m_loadedImage); } public static function StartSplitImage(event:Event):void { trace("ImageComplete"); var y:int; var x:int; var splitImage:Image; var b:DisplayObject = m_imageToSplit.ImageData(); trace(m_imageToSplit.ImageData().height); trace("split x [" + b.height + m_tileSize.x + "] width [" + m_imageToSplit.ImageData().width); for (var imgY:int=0; imgY