CPreloader.js 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. function CPreloader(){
  2. var _iMaskWidth;
  3. var _iMaskHeight;
  4. var _oLoadingText;
  5. var _oProgressBar;
  6. var _oMaskPreloader;
  7. var _oFade;
  8. var _oContainer;
  9. this._init = function(){
  10. s_oSpriteLibrary.init( this._onImagesLoaded,this._onAllImagesLoaded, this );
  11. s_oSpriteLibrary.addSprite("bg_menu","./sprites/bg_menu.jpg");
  12. s_oSpriteLibrary.addSprite("progress_bar","./sprites/progress_bar.png");
  13. s_oSpriteLibrary.loadSprites();
  14. _oContainer = new createjs.Container();
  15. s_oStage.addChild(_oContainer);
  16. };
  17. this.unload = function(){
  18. _oContainer.removeAllChildren();
  19. };
  20. this.hide = function(){
  21. var oParent = this;
  22. setTimeout(function(){createjs.Tween.get(_oFade).to({alpha:1}, 500).call(function(){oParent.unload();s_oMain.gotoMenu();}); }, 1000);
  23. };
  24. this._onImagesLoaded = function(){
  25. };
  26. this._onAllImagesLoaded = function(){
  27. this.attachSprites();
  28. s_oMain.preloaderReady();
  29. };
  30. this.attachSprites = function(){
  31. var oBg = createBitmap(s_oSpriteLibrary.getSprite('bg_menu'));
  32. _oContainer.addChild(oBg);
  33. var oSprite = s_oSpriteLibrary.getSprite('progress_bar');
  34. _oProgressBar = createBitmap(oSprite);
  35. _oProgressBar.x = CANVAS_WIDTH/2 - (oSprite.width/2);
  36. _oProgressBar.y = CANVAS_HEIGHT - 70;
  37. _oContainer.addChild(_oProgressBar);
  38. _iMaskWidth = oSprite.width;
  39. _iMaskHeight = oSprite.height;
  40. _oMaskPreloader = new createjs.Shape();
  41. _oMaskPreloader.graphics.beginFill("rgba(255,255,255,0.01)").drawRect(_oProgressBar.x, _oProgressBar.y, 1,_iMaskHeight);
  42. _oContainer.addChild(_oMaskPreloader);
  43. _oProgressBar.mask = _oMaskPreloader;
  44. _oLoadingText = new createjs.Text("","30px "+FONT_GAME, "#fff");
  45. _oLoadingText.x = CANVAS_WIDTH/2;
  46. _oLoadingText.y = CANVAS_HEIGHT - 70;
  47. _oLoadingText.shadow = new createjs.Shadow("#000", 2, 2, 2);
  48. _oLoadingText.textBaseline = "alphabetic";
  49. _oLoadingText.textAlign = "center";
  50. _oContainer.addChild(_oLoadingText);
  51. _oFade = new createjs.Shape();
  52. _oFade.graphics.beginFill("black").drawRect(0,0,CANVAS_WIDTH,CANVAS_HEIGHT);
  53. _oFade.alpha = 0;
  54. _oContainer.addChild(_oFade);
  55. };
  56. this.refreshLoader = function(iPerc){
  57. _oLoadingText.text = iPerc+"%";
  58. _oMaskPreloader.graphics.clear();
  59. var iNewMaskWidth = Math.floor((iPerc*_iMaskWidth)/100);
  60. _oMaskPreloader.graphics.beginFill("rgba(255,255,255,0.01)").drawRect(_oProgressBar.x, _oProgressBar.y, iNewMaskWidth,_iMaskHeight);
  61. };
  62. this._init();
  63. }