// Load High scores from server var hiscoreloader:URLLoader = new URLLoader(); hiscoreloader.addEventListener(Event.COMPLETE, highScoresLoaded); hiscoreloader.load(new URLRequest("http://wfwxg.philosophydesign.com/includes/top20.php?nocache=" + new Date().getTime())); // Create an Array to hold High Score XML data var highscoredata:Array = []; // var hiscorexml:XML; function highScoresLoaded(e:Event):void { hiscorexml = new XML(e.target.data); var hsList:XMLList = hiscorexml.highscores.highscore; for(var i:uint = 0; i < hsList.length(); i++) { highscoredata[i] = { hs_score : zeroPad(hsList.score.text()[i], 8), hs_name : hsList.name.text()[i], flagURL : "http://wfwxg.philosophydesign.com/images/flags/" + hsList.country.text()[i] + ".png", mc_name : "hs_flag_"+i.toString() }; // Load the Flag images var loader:Loader = new Loader(); configureFlagListeners(loader.contentLoaderInfo); loader.name = i.toString(); loader.load( new URLRequest( highscoredata[i].flagURL ) ); } } function configureFlagListeners(info:LoaderInfo):void { info.addEventListener(Event.COMPLETE , completeFlagHandler ); } function removeFlagListeners(info:Object):void { info.removeEventListener(Event.COMPLETE , completeFlagHandler ); } function completeFlagHandler(event:Event):void { var index:int = int( event.currentTarget.loader.name ); highscoredata[index].flag = event.currentTarget.loader.content; removeFlagListeners(event.currentTarget); }