package src.game { import flash.display.MovieClip; import flash.geom.Point; import flash.display.Stage; import flash.events.Event; import flash.events.MouseEvent; import flash.display.Shape; import flash.ui.Mouse; import src.editor.Anchor; import src.editor.TileSheetAttributes; import src.utils.Image; import src.game.References; import src.game.TileMap; import src.game.Group; import src.utils.TileAttributes; import flash.display.BitmapData; public class MapPreloader { private var ref:References=null; private var map:Map=null; private var tileProp:String=new String(); private var loading:Array=new Array(); public var amountToPreload:int=0; private var count:int=0; public function MapPreloader(ref,map,ssData:Array,tileProp,tilesheetList,bgImage) { this.ref=ref; this.map=map; this.tileProp=tileProp; // THINGS TO DO: // LOAD IN THE BACKGROUND IMAGE // LOAD IN OBJECTS ("GROUPS") // LOAD IN SPRITESHEETS // THEN // LOAD IN TILE PROPERTIES (N,E,W,S) // LOAD IN THE TILE IMAGES (bdata) // preload background if(bgImage) new Image(map,bgImage,"backgrounds/",null,null,1,this); // preload objects ('groups') for(var d:String in ssData) { if(d=="") continue; if(!ssData[d]) continue; trace("ssData["+d+"]: "+ssData[d]); var split1:Array=ssData[d].split("[1]"); var split2:Array=split1[2].split("[2]"); for(i=0;i=amountToPreload) done(); // everythings done preloading } public function done() { // all the iamges have been loaded from online. analyze the sheets then tell the main map class we are done // this means analyzing tileProp Dn|N|E|W|S|Special|Sheet|X|Y[n]etc var ts:Array=tileProp.split("[n]"); //trace("[MapPreloader.as] now for loop for length "+ts.length); for(var i:int=0;i8) { //trace("[MapPreloader.as] creating tile with datanum "+s[0]); map.tileType[s[0]] = new TileAttributes(s,map); } } map.preloadDone(); // everythings done preloading tell main map class } } }