Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Preloader
- {
- import com.greensock.*;
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.text.TextFieldAutoSize;
- public class Preloader extends Sprite
- {
- // Properties
- public static const PRELOADER_GONE:String = "preloader_gone";
- private var progressBar:Sprite;
- private var counter:PreloaderCounter;
- private var _percentage:Number;
- // Constructor
- public function Preloader()
- {
- this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
- }
- // Methods
- private function addedToStageHandler(e:Event):void{
- this.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
- progressBar = new Sprite();
- counter = new PreloaderCounter();
- counter.txtTotal.autoSize = TextFieldAutoSize.LEFT;
- addChild(progressBar);
- addChild(counter);
- }
- private function updatePreloader():void{
- progressBar.graphics.beginFill(0x000000);
- progressBar.graphics.drawRect(0,0, stage.stageWidth * percentage, 5);
- progressBar.graphics.endFill();
- counter.txtTotal.text = String(Math.round(percentage * 100));
- counter.x = progressBar.width;
- }
- private function fadePreloader():void{
- TweenLite.to(this, .5, {alpha:0, onComplete:preloaderFadedHandler});
- }
- private function preloaderFadedHandler():void{
- dispatchEvent(new Event(PRELOADER_GONE));
- }
- // getters & Setters
- public function get percentage():Number
- {
- return _percentage;
- }
- public function set percentage(value:Number):void
- {
- _percentage = value;
- updatePreloader();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement