CInterface.js 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. function CInterface(){
  2. var _oAudioToggle;
  3. var _oButExit;
  4. var _oSpriteScore;
  5. var _oSpriteBall;
  6. var _oScoreText;
  7. var _oScoreText1;
  8. var _oBallText;
  9. var _oBallText1;
  10. var _oButFullscreen;
  11. var _fRequestFullScreen = null;
  12. var _fCancelFullScreen = null;
  13. var _pStartPosScore;
  14. var _oButScore;
  15. var _pStartPosBall;
  16. var _oButBall;
  17. var _pStartPositionScoreText;
  18. var _pStartPositionScore;
  19. var _pStartPositionBallText;
  20. var _pStartPosFullscreen;
  21. var _pStartPosExit;
  22. var _pStartPosAudio;
  23. this._init = function(){
  24. var oExitX;
  25. var oSprite = s_oSpriteLibrary.getSprite('but_exit');
  26. _pStartPosExit = {x: CANVAS_WIDTH - (oSprite.height/2)- 10, y: (oSprite.height/2) + 10};
  27. _oButExit = new CGfxButton(_pStartPosExit.x, _pStartPosExit.y, oSprite, s_oStage);
  28. _oButExit.addEventListener(ON_MOUSE_UP, this._onExit, this);
  29. oExitX = CANVAS_WIDTH - (oSprite.width/2)- 90;
  30. _pStartPosAudio = {x: oExitX, y: (oSprite.height/2) + 10};
  31. if(DISABLE_SOUND_MOBILE === false || s_bMobile === false){
  32. var oSprite = s_oSpriteLibrary.getSprite('audio_icon');
  33. _oAudioToggle = new CToggle(_pStartPosAudio.x,_pStartPosAudio.y,oSprite,s_bAudioActive,s_oStage);
  34. _oAudioToggle.addEventListener(ON_MOUSE_UP, this._onAudioToggle, this);
  35. oSprite = s_oSpriteLibrary.getSprite('but_fullscreen');
  36. _pStartPosFullscreen = {x:_pStartPosAudio.x - oSprite.width/2 - 10,y:_pStartPosAudio.y};
  37. }else{
  38. _pStartPosFullscreen = {x: oExitX, y: (oSprite.height/2) + 10};
  39. }
  40. var doc = window.document;
  41. var docEl = doc.documentElement;
  42. _fRequestFullScreen = docEl.requestFullscreen || docEl.mozRequestFullScreen || docEl.webkitRequestFullScreen || docEl.msRequestFullscreen;
  43. _fCancelFullScreen = doc.exitFullscreen || doc.mozCancelFullScreen || doc.webkitExitFullscreen || doc.msExitFullscreen;
  44. if(ENABLE_FULLSCREEN === false){
  45. _fRequestFullScreen = false;
  46. }
  47. if (_fRequestFullScreen && screenfull.enabled){
  48. oSprite = s_oSpriteLibrary.getSprite('but_fullscreen');
  49. _oButFullscreen = new CToggle(_pStartPosFullscreen.x,_pStartPosFullscreen.y,oSprite,s_bFullscreen,s_oStage);
  50. _oButFullscreen.addEventListener(ON_MOUSE_UP, this._onFullscreenRelease, this);
  51. }
  52. _oSpriteScore = s_oSpriteLibrary.getSprite('score_panel');
  53. _pStartPosScore = {x: (CANVAS_WIDTH/2)-260, y: 35};
  54. _oButScore = new CGfxButton(_pStartPosScore.x, _pStartPosScore.y, _oSpriteScore, s_oStage);
  55. _pStartPositionScoreText = {x: (CANVAS_WIDTH/2)-315, y: 47};
  56. _oScoreText = new createjs.Text(SCORE_TEXT,"30px "+FONT, "#ff0000");
  57. _oScoreText.x = _pStartPositionScoreText.x;
  58. _oScoreText.y = _pStartPositionScoreText.y;
  59. _oScoreText.textAlign = "center";
  60. _oScoreText.textBaseline = "alphabetic";
  61. s_oStage.addChild(_oScoreText);
  62. _pStartPositionScore = {x: (CANVAS_WIDTH/2)-150, y: 47};
  63. _oScoreText1 = new createjs.Text("0","30px "+FONT, "#ff0000");
  64. _oScoreText1.x = _pStartPositionScore.x;
  65. _oScoreText1.y = _pStartPositionScore.y;
  66. _oScoreText1.textAlign = "right";
  67. _oScoreText1.textBaseline = "alphabetic";
  68. s_oStage.addChild(_oScoreText1);
  69. _oSpriteBall = s_oSpriteLibrary.getSprite('ball');
  70. _pStartPosBall = {x: (CANVAS_WIDTH/2)-370, y: 80};
  71. _oButBall = new CGfxButton(_pStartPosBall.x, _pStartPosBall.y, _oSpriteBall, s_oStage);
  72. _pStartPositionBallText = {x: (CANVAS_WIDTH/2)-350, y: 88};
  73. _oBallText = new createjs.Text("x "+BALL_TO_THROW,"30px "+FONT2, "#ffffff");
  74. _oBallText.x = _pStartPositionBallText.x;
  75. _oBallText.y = _pStartPositionBallText.y;
  76. _oBallText.textAlign = "left";
  77. _oBallText.textBaseline = "alphabetic";
  78. _oBallText.outline = 5;
  79. s_oStage.addChild(_oBallText);
  80. _oBallText1 = new createjs.Text("x "+BALL_TO_THROW,"30px "+FONT2, "#ff0000");
  81. _oBallText1.x = _pStartPositionBallText.x;
  82. _oBallText1.y = _pStartPositionBallText.y;
  83. _oBallText1.textAlign = "left";
  84. _oBallText1.textBaseline = "alphabetic";
  85. s_oStage.addChild(_oBallText1);
  86. this.refreshButtonPos(s_iOffsetX,s_iOffsetY);
  87. };
  88. this.unload = function(){
  89. if(DISABLE_SOUND_MOBILE === false || s_bMobile === false){
  90. _oAudioToggle.unload();
  91. _oAudioToggle = null;
  92. }
  93. if (_fRequestFullScreen && screenfull.enabled){
  94. _oButFullscreen.unload();
  95. }
  96. _oButExit.unload();
  97. s_oInterface = null;
  98. };
  99. this.refreshButtonPos = function(iNewX,iNewY){
  100. _oButExit.setPosition(_pStartPosExit.x - iNewX,iNewY + _pStartPosExit.y);
  101. if(DISABLE_SOUND_MOBILE === false || s_bMobile === false){
  102. _oAudioToggle.setPosition(_pStartPosAudio.x - iNewX,iNewY + _pStartPosAudio.y);
  103. }
  104. if (_fRequestFullScreen && screenfull.enabled){
  105. _oButFullscreen.setPosition(_pStartPosFullscreen.x - iNewX,_pStartPosFullscreen.y + iNewY);
  106. }
  107. _oButScore.setPosition(_pStartPosScore.x + iNewX,iNewY + _pStartPosScore.y);
  108. _oButBall.setPosition(_pStartPosBall.x + iNewX,iNewY + _pStartPosBall.y);
  109. _oScoreText.x = _pStartPositionScoreText.x + iNewX;
  110. _oScoreText1.x = _pStartPositionScore.x + iNewX;
  111. _oBallText.x = _pStartPositionBallText.x + iNewX;
  112. _oBallText1.x = _pStartPositionBallText.x + iNewX;
  113. };
  114. this.viewScore = function(iValue){
  115. _oScoreText1.text = iValue;
  116. };
  117. this.viewBallLeft = function(iValue){
  118. _oBallText.text = "x "+(BALL_TO_THROW-iValue);
  119. _oBallText1.text = "x "+(BALL_TO_THROW-iValue);
  120. };
  121. this._onButHelpRelease = function(){
  122. _oHelpPanel = new CHelpPanel();
  123. };
  124. this._onButRestartRelease = function(){
  125. s_oGame.restartGame();
  126. };
  127. this.onExitFromHelp = function(){
  128. _oHelpPanel.unload();
  129. };
  130. this._onAudioToggle = function(){
  131. Howler.mute(s_bAudioActive);
  132. s_bAudioActive = !s_bAudioActive;
  133. };
  134. this._onExit = function(){
  135. s_oGame.onExit();
  136. };
  137. this.resetFullscreenBut = function(){
  138. if (_fRequestFullScreen && screenfull.enabled){
  139. _oButFullscreen.setActive(s_bFullscreen);
  140. }
  141. };
  142. this._onFullscreenRelease = function(){
  143. if(s_bFullscreen) {
  144. _fCancelFullScreen.call(window.document);
  145. }else{
  146. _fRequestFullScreen.call(window.document.documentElement);
  147. }
  148. sizeHandler();
  149. };
  150. s_oInterface = this;
  151. this._init();
  152. return this;
  153. }
  154. var s_oInterface = null;