Advertisement
Guest User

Untitled

a guest
May 29th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package Preloader
  2. {
  3.     import com.greensock.*;
  4.    
  5.     import flash.display.Sprite;
  6.     import flash.events.Event;
  7.     import flash.text.TextFieldAutoSize;
  8.  
  9.     public class Preloader extends Sprite
  10.     {
  11.         // Properties
  12.         public static const PRELOADER_GONE:String = "preloader_gone";
  13.        
  14.        
  15.         private var progressBar:Sprite;
  16.         private var counter:PreloaderCounter;
  17.        
  18.         private var _percentage:Number;
  19.        
  20.         // Constructor
  21.         public function Preloader()
  22.         {
  23.             this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
  24.         }
  25.         // Methods
  26.         private function addedToStageHandler(e:Event):void{
  27.             this.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
  28.            
  29.             progressBar = new Sprite();
  30.             counter = new PreloaderCounter();
  31.             counter.txtTotal.autoSize = TextFieldAutoSize.LEFT;
  32.            
  33.             addChild(progressBar);
  34.             addChild(counter);
  35.            
  36.            
  37.         }
  38.         private function updatePreloader():void{
  39.             progressBar.graphics.beginFill(0x000000);
  40.             progressBar.graphics.drawRect(0,0, stage.stageWidth * percentage, 5);
  41.             progressBar.graphics.endFill();
  42.            
  43.             counter.txtTotal.text = String(Math.round(percentage * 100));
  44.             counter.x = progressBar.width;
  45.         }
  46.        
  47.         private function fadePreloader():void{
  48.             TweenLite.to(this, .5, {alpha:0, onComplete:preloaderFadedHandler});
  49.         }
  50.        
  51.         private function preloaderFadedHandler():void{
  52.             dispatchEvent(new Event(PRELOADER_GONE));
  53.         }
  54.        
  55.        
  56.         // getters & Setters
  57.         public function get percentage():Number
  58.         {
  59.             return _percentage;
  60.         }
  61.        
  62.         public function set percentage(value:Number):void
  63.         {
  64.             _percentage = value;
  65.            
  66.             updatePreloader();
  67.         }
  68.        
  69.     }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement