| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323 |
- function CTeamChoose() {
- var _pStartPosAudio;
- var _pStartPosExit;
- var _pStartPosContinue;
- var _pStartPosFullscreen;
-
- var _oBg;
- var _oButContinue;
- var _oContTextSelectTeam;
- var _oContTextSelectOppTeam;
- var _oContTextYourTeam;
- var _oContTextOppTeam;
- var _oFade;
- var _oLoadingScreen = null;
- var _oAudioToggle;
- var _oButFullscreen;
- var _fRequestFullScreen = null;
- var _fCancelFullScreen = null;
- var _oButExit;
- var _oPlayerFlagSelect;
- var _oOpponentFlagSelect;
- var _oContainer;
- var _oYourTeamText;
- var _oOppTeamText;
- var _oYourTeamTextStroke;
- var _oOppTeamTextStroke;
- var _aPlayerTeamFlag;
- var _aOpponentTeamFlag;
- var _aTeamText;
- var _iActivePlayerTeam;
- var _iActiveOpponentTeam;
- this._init = function () {
- _oBg = createBitmap(s_oSpriteLibrary.getSprite('bg_select_team'));
- s_oStage.addChild(_oBg);
- _aTeamText = new Array();
- _oContainer = new createjs.Container();
- _iActivePlayerTeam = 0;
- _iActiveOpponentTeam = TEXT_TEAM.length - 1;
- var iTimeAnim = 1500;
- _aPlayerTeamFlag = this.createFlagSelection(PLAYER_SELECTION_FLAG_START_POS.x, PLAYER_SELECTION_FLAG_START_POS.y, iTimeAnim, this._onButPlayerTeamChoose);
- _aOpponentTeamFlag = this.createFlagSelection(OPPONENT_SELECTION_FLAG_START_POS.x, OPPONENT_SELECTION_FLAG_START_POS.y, iTimeAnim, this._onButOppTeamChoose);
- var oSpriteFlagSelection = s_oSpriteLibrary.getSprite("flag_selection");
- _oPlayerFlagSelect = createBitmap(oSpriteFlagSelection);
- _oPlayerFlagSelect.x = _aPlayerTeamFlag[0].getX();
- _oPlayerFlagSelect.y = _aPlayerTeamFlag[0].getY();
- _oPlayerFlagSelect.regX = oSpriteFlagSelection.width * 0.5;
- _oPlayerFlagSelect.regY = oSpriteFlagSelection.height * 0.5;
- _oOpponentFlagSelect = createBitmap(oSpriteFlagSelection);
- _oOpponentFlagSelect.x = _aOpponentTeamFlag[TEXT_TEAM.length - 1].getX();
- _oOpponentFlagSelect.y = _aOpponentTeamFlag[TEXT_TEAM.length - 1].getY();
- _oOpponentFlagSelect.regX = oSpriteFlagSelection.width * 0.5;
- _oOpponentFlagSelect.regY = oSpriteFlagSelection.height * 0.5;
- s_oStage.addChild(_oContainer);
- _oContainer.y = 12;
- _oContTextSelectOppTeam = this.createText(TEXT_SELECT_OPPONENT_TEAM, 22, 200).container;//szText, iSize, oContainer
- _oContTextSelectOppTeam.x = CANVAS_WIDTH_HALF + 130;
- _oContTextSelectOppTeam.y = 304;
- s_oStage.addChild(_oContTextSelectOppTeam);
-
- _oContTextSelectTeam = this.createText(TEXT_SELECT_YOUR_TEAM, 22, 200).container;
- _oContTextSelectTeam.x = CANVAS_WIDTH_HALF - 120;
- _oContTextSelectTeam.y = 304;
- s_oStage.addChild(_oContTextSelectTeam);
- var oTextYourTeam = this.createText(TEXT_TEAM[0], 30, 500);
- _oContTextYourTeam = oTextYourTeam.container;
- _oContTextYourTeam.x = CANVAS_WIDTH_HALF - 120;
- _oContTextYourTeam.y = CANVAS_HEIGHT_HALF + 132;
- _oYourTeamText = oTextYourTeam.text;
- _oYourTeamTextStroke = oTextYourTeam.text_stroke;
- s_oStage.addChild(_oContTextYourTeam);
- var oTextOppTeam = this.createText(TEXT_TEAM[TEXT_TEAM.length - 1], 30, 500);
- _oContTextOppTeam = oTextOppTeam.container;
- _oContTextOppTeam.x = CANVAS_WIDTH_HALF + 120;
- _oContTextOppTeam.y = CANVAS_HEIGHT_HALF + 132;
- _oOppTeamText = oTextOppTeam.text;
- _oOppTeamTextStroke = oTextOppTeam.text_stroke;
- s_oStage.addChild(_oContTextOppTeam);
- if (DISABLE_SOUND_MOBILE === false || s_bMobile === false) {
- var oSprite = s_oSpriteLibrary.getSprite('audio_icon');
- _pStartPosAudio = {x: CANVAS_WIDTH - (oSprite.width / 2) - 60, y: (oSprite.height / 2) + 20};
- _oAudioToggle = new CToggle(_pStartPosAudio.x, _pStartPosAudio.y, oSprite, s_bAudioActive, s_oStage);
- _oAudioToggle.addEventListener(ON_MOUSE_UP, this._onAudioToggle, this);
- }
-
-
-
- _pStartPosContinue = {x: CANVAS_WIDTH * 0.5 + 300, y: CANVAS_HEIGHT * 0.5 + 400};
- var oSpriteContinue = s_oSpriteLibrary.getSprite("but_continue");
- _oButContinue = new CGfxButton(_pStartPosContinue.x, _pStartPosContinue.y, oSpriteContinue, s_oStage);
- _oButContinue.addEventListener(ON_MOUSE_UP, this._onButContinueRelease, this);
- _oButContinue.pulseAnimation();
- var oSpriteExit = s_oSpriteLibrary.getSprite('but_exit');
- _pStartPosExit = {x: CANVAS_WIDTH - (oSpriteExit.width / 2) - 15, y: (oSpriteExit.height / 2) + 20};
- _oButExit = new CGfxButton(_pStartPosExit.x, _pStartPosExit.y, oSpriteExit, s_oStage);
- _oButExit.addEventListener(ON_MOUSE_UP, this._onExit, this);
-
- var doc = window.document;
- var docEl = doc.documentElement;
- _fRequestFullScreen = docEl.requestFullscreen || docEl.mozRequestFullScreen || docEl.webkitRequestFullScreen || docEl.msRequestFullscreen;
- _fCancelFullScreen = doc.exitFullscreen || doc.mozCancelFullScreen || doc.webkitExitFullscreen || doc.msExitFullscreen;
-
- if(ENABLE_FULLSCREEN === false){
- _fRequestFullScreen = false;
- }
-
- if (_fRequestFullScreen && screenfull.enabled){
- oSprite = s_oSpriteLibrary.getSprite('but_fullscreen');
- _pStartPosFullscreen = {x: oSprite.width/4 + 10,y:_pStartPosExit.y};
- _oButFullscreen = new CToggle(_pStartPosFullscreen.x,_pStartPosFullscreen.y,oSprite,s_bFullscreen,s_oStage);
- _oButFullscreen.addEventListener(ON_MOUSE_UP, this._onFullscreenRelease, this);
- }
-
- _oFade = new createjs.Shape();
- _oFade.graphics.beginFill("black").drawRect(0, 0, CANVAS_WIDTH, CANVAS_HEIGHT);
- s_oStage.addChild(_oFade);
- createjs.Tween.get(_oFade).to({alpha: 0}, 1000).call(function () {
- _oFade.visible = false;
- _oContainer.addChild(_oPlayerFlagSelect, _oOpponentFlagSelect);
- });
- this.refreshButtonPos(s_iOffsetX, s_iOffsetY);
- };
- this._createFlag = function (i, iOffsetX, iOffsetY, iTimeWait, iTimeAnim, oFunction, oContainer) {
- var oFlag;
- var oSpriteFlag = s_oSpriteLibrary.getSprite("flag_" + i);
- oFlag = new CGfxButton(iOffsetX, iOffsetY, oSpriteFlag, oContainer);
- oFlag.addEventListenerWithParams(ON_MOUSE_UP, oFunction, this, i);
- var oButtonFlag = oFlag.getButton();
- oButtonFlag.scaleX = 0;
- oButtonFlag.scaleY = 0;
- createjs.Tween.get(oButtonFlag).wait(iTimeWait).to({scaleY: 1, scaleX: 1}, iTimeAnim, createjs.Ease.elasticOut);
- return oFlag;
- };
- this.createFlagSelection = function (iStartX, iStartY, iTimeAnim, oFunction) {
- var aFlag = new Array();
- var iX = iStartX;
- var iY = iStartY;
- for (var i = 0; i < TOT_TEAMS; i++) {
- var iTimeWait = Math.floor(Math.random() * 500);
- aFlag[i] = this._createFlag(i, iX, iY, iTimeWait, iTimeAnim, oFunction, _oContainer);
- if (i % MAX_COL_FLAG - 1 === 0) {
- iX = iStartX;
- iY += FLAG_OFFSET.y;
- } else {
- iX += FLAG_OFFSET.x;
- }
- }
- return aFlag;
- };
- this.createText = function (szText, iSize, iLineWidth) {
- var oContainer = new createjs.Container();
- var oText;
- oText = new createjs.Text(szText, iSize + "px " + FONT2, "#ffffff");
- oText.textAlign = "center";
- oText.lineWidth = iLineWidth;
- oText.x = 0;
- oText.y = 0;
- oContainer.addChild(oText);
- return {container: oContainer, text: oText};
- };
- this.refreshButtonPos = function (iNewX, iNewY) {
- _oButExit.setPosition(_pStartPosExit.x - iNewX, iNewY + _pStartPosExit.y);
- _oButContinue.setPosition(_pStartPosContinue.x - iNewX, _pStartPosContinue.y - iNewY);
- if (DISABLE_SOUND_MOBILE === false || s_bMobile === false) {
- _oAudioToggle.setPosition(_pStartPosAudio.x - iNewX, iNewY + _pStartPosAudio.y);
- }
- if (_fRequestFullScreen && screenfull.enabled){
- _oButFullscreen.setPosition(_pStartPosFullscreen.x + iNewX,_pStartPosFullscreen.y + iNewY);
- }
-
- };
- this._onButPlayerTeamChoose = function (iID) {
- if (_iActivePlayerTeam !== iID && _iActiveOpponentTeam !== iID) {
- _oPlayerFlagSelect.x = _aPlayerTeamFlag[iID].getX();
- _oPlayerFlagSelect.y = _aPlayerTeamFlag[iID].getY();
- _oYourTeamText.text = TEXT_TEAM[iID];
- _iActivePlayerTeam = iID;
- }
- };
- this._onButOppTeamChoose = function (iID) {
- if (_iActiveOpponentTeam !== iID && _iActivePlayerTeam !== iID) {
- _oOpponentFlagSelect.x = _aOpponentTeamFlag[iID].getX();
- _oOpponentFlagSelect.y = _aOpponentTeamFlag[iID].getY();
- _oOppTeamText.text = TEXT_TEAM[iID];
- _iActiveOpponentTeam = iID;
- }
- };
- this.unload = function () {
- for (var i = 0; i < _aPlayerTeamFlag.length; i++) {
- _aPlayerTeamFlag[i].unload();
- _aPlayerTeamFlag[i] = null;
- }
- for (var i = 0; i < _aOpponentTeamFlag.length; i++) {
- _aOpponentTeamFlag[i].unload();
- _aOpponentTeamFlag[i] = null;
- }
- _oButExit.unload();
- _oButExit = null;
- _oButContinue.unload();
- _oButContinue = null;
-
- if(_oLoadingScreen !== null){
- _oLoadingScreen.unload();
- _oLoadingScreen = null;
- }
-
- if (DISABLE_SOUND_MOBILE === false || s_bMobile === false) {
- _oAudioToggle.unload();
- _oAudioToggle = null;
- }
-
- if (_fRequestFullScreen && screenfull.enabled){
- _oButFullscreen.unload();
- }
-
- s_oStage.removeAllChildren();
- createjs.Tween.removeAllTweens();
- s_oTeamChoose = null;
- };
- this.loadingScreen = function () {
- var oContainerLoad = new createjs.Container();
- oContainerLoad.alpha = 0;
- _oLoadingScreen = new CLoadingScreen(oContainerLoad,this);
- createjs.Tween.get(oContainerLoad).to({alpha: 1}, 250, createjs.Ease.cubicOut);
- };
- this._onExit = function () {
- this.unload();
- s_oMain.gotoMenu();
- };
- this._onAudioToggle = function () {
- Howler.mute(s_bAudioActive);
- s_bAudioActive = !s_bAudioActive;
- };
- this._onButContinueRelease = function () {
- _oButContinue.block(true);
- s_iPlayerTeam = _iActivePlayerTeam;
- s_iOpponentTeam = _iActiveOpponentTeam;
-
- s_oMain.gotoGame(s_iPlayerTeam, s_iOpponentTeam);
- };
-
- this.resetFullscreenBut = function(){
- if (_fRequestFullScreen && screenfull.enabled){
- _oButFullscreen.setActive(s_bFullscreen);
- }
- };
- this._onFullscreenRelease = function(){
- if(s_bFullscreen) {
- _fCancelFullScreen.call(window.document);
- }else{
- _fRequestFullScreen.call(window.document.documentElement);
- }
-
- sizeHandler();
- };
-
- s_oTeamChoose = this;
- this._init();
- }
- var s_oTeamChoose = null;
|