home *** CD-ROM | disk | FTP | other *** search
- package
- {
- import flash.display.DisplayObject;
- import flash.display.MovieClip;
- import flash.display.SimpleButton;
- import flash.display.Sprite;
- import flash.display.StageAlign;
- import flash.display.StageScaleMode;
- import flash.events.Event;
- import flash.events.MouseEvent;
- import flash.net.URLRequest;
- import flash.net.navigateToURL;
- import flash.text.TextField;
- import flash.text.TextFieldAutoSize;
- import flash.ui.ContextMenu;
- import flash.utils.getDefinitionByName;
-
- public class Preloader extends MovieClip
- {
-
- public static const SPONSOR_VERSION:Boolean = false;
-
-
- private var splashComplete:Boolean;
-
- private var adsSkip_bt:SimpleButton;
-
- private var WindowClass:Class;
-
- private var status_tf:TextField;
-
- private var myContextMenu:ContextMenu;
-
- private var splash:MovieClip;
-
- private var progress:Sprite;
-
- private var window:Sprite;
-
- private var adsBox:Sprite;
-
- private var adsHolder:Sprite;
-
- public function Preloader()
- {
- var tf:TextField = null;
- var url:String = null;
- WindowClass = Preloader_WindowClass;
- super();
- stop();
- stage.align = StageAlign.TOP_LEFT;
- if(SPONSOR_VERSION)
- {
- stage.scaleMode = StageScaleMode.EXACT_FIT;
- }
- else
- {
- stage.scaleMode = StageScaleMode.NO_SCALE;
- }
- MochiBot.track(this,"be42325c");
- initContextMenu();
- if(SPONSOR_VERSION)
- {
- if(checkDomain())
- {
- initWindow();
- }
- else
- {
- tf = new TextField();
- tf.width = 400;
- tf.autoSize = TextFieldAutoSize.LEFT;
- tf.wordWrap = true;
- url = stage.loaderInfo.url;
- tf.text = "domain " + url + " not allowed.";
- addChild(tf);
- }
- }
- else
- {
- initWindow();
- }
- }
-
- private function efHandler(e:Event) : void
- {
- var percent:Number = NaN;
- graphics.clear();
- if(framesLoaded == totalFrames)
- {
- removeEventListener(Event.ENTER_FRAME,efHandler);
- progress.scaleX = 1;
- adsSkipClickHandler(null);
- }
- else
- {
- percent = root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal;
- progress.scaleX = percent;
- }
- }
-
- private function initContextMenu() : void
- {
- myContextMenu = new ContextMenu();
- myContextMenu.hideBuiltInItems();
- contextMenu = myContextMenu;
- }
-
- private function splashEfHandler(e:Event) : void
- {
- if(splash.currentFrame == splash.totalFrames)
- {
- splash.stop();
- splash.removeEventListener(Event.ENTER_FRAME,splashEfHandler);
- splashComplete = true;
- nextFrame();
- init();
- }
- }
-
- private function adsSkipClickHandler(e:MouseEvent) : void
- {
- adsHolder.parent.removeChild(adsHolder);
- splash.visible = true;
- splash.play();
- splash.buttonMode = true;
- splash.addEventListener(MouseEvent.CLICK,splashClickHandler);
- splash.addEventListener(Event.ENTER_FRAME,splashEfHandler);
- }
-
- private function init() : void
- {
- var app:Object = null;
- var mainClass:Class = getDefinitionByName("Balance2") as Class;
- if(mainClass)
- {
- app = new mainClass();
- addChild(app as DisplayObject);
- }
- }
-
- private function splashClickHandler(e:MouseEvent) : void
- {
- navigateToURL(new URLRequest("http://www.ourworld.com/v11/tracking?source=game&id=fglbeez"),"_blank");
- }
-
- private function checkDomain() : Boolean
- {
- var url:String = stage.loaderInfo.url;
- var urlStart:Number = url.indexOf("://") + 3;
- var urlEnd:Number = url.indexOf("/",urlStart);
- var domain:String = url.substring(urlStart,urlEnd);
- var LastDot:Number = domain.lastIndexOf(".") - 1;
- var domEnd:Number = domain.lastIndexOf(".",LastDot) + 1;
- domain = domain.substring(domEnd,domain.length);
- if(domain == "localhost" || domain == "" || domain == "isfland.com" || domain == "flashgamelicense.com" || domain == "ourworld.com")
- {
- return true;
- }
- return false;
- }
-
- private function initWindow() : void
- {
- window = new WindowClass();
- progress = window.getChildByName("progress") as Sprite;
- progress.scaleX = 0;
- status_tf = window.getChildByName("status_tf") as TextField;
- splash = window.getChildByName("splash") as MovieClip;
- splashComplete = false;
- adsHolder = window.getChildByName("adsHolder") as Sprite;
- adsBox = adsHolder.getChildByName("adBox") as Sprite;
- adsSkip_bt = adsHolder.getChildByName("skip_bt") as SimpleButton;
- adsSkip_bt.visible = false;
- if(SPONSOR_VERSION)
- {
- splashComplete = true;
- splash.parent.removeChild(splash);
- adsHolder.parent.removeChild(adsHolder);
- }
- else
- {
- splash.visible = false;
- splash.stop();
- adsSkip_bt.addEventListener(MouseEvent.CLICK,adsSkipClickHandler);
- }
- progress.scaleX = 0;
- addChild(window);
- addEventListener(Event.ENTER_FRAME,efHandler);
- }
- }
- }
-