Advertisement
Guest User

Loader

a guest
Apr 30th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package Loader_fla
  2. {
  3.    import flash.display.MovieClip;
  4.    import flash.net.URLLoader;
  5.    import flash.events.Event;
  6.    import flash.net.URLVariables;
  7.    import flash.system.ApplicationDomain;
  8.    import flash.display.Loader;
  9.    import flash.events.IOErrorEvent;
  10.    import flash.net.URLRequest;
  11.    import flash.system.LoaderContext;
  12.    import flash.events.ProgressEvent;
  13.    import flash.system.Security;
  14.    
  15.    public dynamic class MainTimeline extends MovieClip
  16.    {
  17.        
  18.      
  19.       public var mcLoading:MovieClip;
  20.      
  21.       public var sFile;
  22.      
  23.       public var sTitle;
  24.      
  25.       public var sBG:String;
  26.      
  27.       public var sURL:String;
  28.      
  29.       public var versionURL:String;
  30.      
  31.       public var loader:URLLoader;
  32.      
  33.       public var loaderVars;
  34.      
  35.       public var titleDomain:ApplicationDomain;
  36.      
  37.       public function MainTimeline()
  38.       {
  39.          super();
  40.          addFrameScript(0,this.frame1);
  41.       }
  42.      
  43.       public function onDataComplete(evt:Event) : void
  44.       {
  45.          trace("onDataComplete:" + evt.target.data);
  46.          var vars:URLVariables = new URLVariables(evt.target.data);
  47.          if(vars.status == "success")
  48.          {
  49.             this.sFile = vars.sFile;
  50.             this.sTitle = vars.sTitle;
  51.             this.sBG = vars.sBG;
  52.             this.loaderVars = vars;
  53.             this.loadTitle();
  54.             this.loadGame();
  55.          }
  56.          else
  57.          {
  58.             trace(vars.strReason);
  59.          }
  60.       }
  61.      
  62.       public function loadTitle() : void
  63.       {
  64.          var loader:Loader = new Loader();
  65.          loader.contentLoaderInfo.addEventListener(Event.COMPLETE,this.onTitleComplete);
  66.          loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,this.onError);
  67.          loader.load(new URLRequest(this.sURL + "gamefiles/title/" + this.sBG),new LoaderContext(false,this.titleDomain));
  68.       }
  69.      
  70.       public function onTitleComplete(e:Event) : void
  71.       {
  72.          trace("Title Loaded");
  73.       }
  74.      
  75.       public function loadGame() : void
  76.       {
  77.          var loader:Loader = new Loader();
  78.          loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,this.onProgress);
  79.          loader.contentLoaderInfo.addEventListener(Event.COMPLETE,this.onComplete);
  80.          loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,this.onError);
  81.          loader.load(new URLRequest(this.sURL + "gamefiles/" + this.sFile));
  82.          this.mcLoading.strLoad.text = "Loading 0%";
  83.       }
  84.      
  85.       public function onProgress(evt:ProgressEvent) : void
  86.       {
  87.          var percent:int = evt.currentTarget.bytesLoaded / evt.currentTarget.bytesTotal * 100;
  88.          this.mcLoading.strLoad.text = "Loading " + percent + "%";
  89.       }
  90.      
  91.       public function onComplete(e:Event) : void
  92.       {
  93.          var v:* = undefined;
  94.          var stg:* = stage;
  95.          stg.removeChildAt(0);
  96.          var game:* = stg.addChild(MovieClip(Loader(e.target.loader).content));
  97.          for(v in root.loaderInfo.parameters)
  98.          {
  99.             trace(v + ": " + root.loaderInfo.parameters[v]);
  100.             game.params[v] = root.loaderInfo.parameters[v];
  101.          }
  102.          game.params.sURL = this.sURL;
  103.          game.params.sTitle = this.sTitle;
  104.          game.params.vars = this.loaderVars;
  105.          game.titleDomain = this.titleDomain;
  106.       }
  107.      
  108.       public function onError(e:IOErrorEvent) : void
  109.       {
  110.          trace("Preloader IOError: " + e);
  111.       }
  112.      
  113.       function frame1() : *
  114.       {
  115.          Security.allowDomain("*");
  116.          this.sURL = this.loaderInfo.url.substring(0,this.loaderInfo.url.lastIndexOf("gamefiles/"));
  117.          trace("sURL: " + this.sURL);
  118.          this.versionURL = "gameversion.asp";
  119.          if(this.sURL.indexOf("cdn.aqworlds.com") >= 0 || this.sURL.indexOf("aqworldscdn.aq.com") >= 0)
  120.          {
  121.             this.versionURL = "http://game.aqworlds.com/game/" + this.versionURL;
  122.          }
  123.          else
  124.          {
  125.             this.versionURL = this.sURL + this.versionURL;
  126.          }
  127.          trace("versionURL: " + this.versionURL);
  128.          this.loader = new URLLoader();
  129.          this.loader.addEventListener(Event.COMPLETE,this.onDataComplete);
  130.          this.loader.load(new URLRequest(this.versionURL));
  131.          this.titleDomain = new ApplicationDomain();
  132.       }
  133.    }
  134. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement