protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_GAME_ENDING); // 清空房间中所有玩家的麻将数据 MahjongScene mahjongScene = mGameScene as MahjongScene; mahjongScene.getRoom().clearAllPlayerMahjongData(); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAIN_FRAME, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_CHARACTER, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BILLBOARD, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ROOM_MENU, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_JOIN_ROOM_DIALOG, true); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAIN_FRAME); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_CHARACTER); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BILLBOARD); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ROOM_MENU); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_JOIN_ROOM_DIALOG); }
protected override void onExit(SceneProcedure nextProcedure) { // 清空所有角色的所有状态 mRoleSystem.clearAllPlayerState(); // 销毁所有比赛角色 mRoleSystem.destroyAllPlayer(); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_SETTLEMENT); }
protected override void onPrepareExit(SceneProcedure nextProcedure) { base.onPrepareExit(nextProcedure); if (nextProcedure.isThisOrParent(PROCEDURE_TYPE.PT_START_SELECT_ROLE)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_SELECT_TRACK); } }
public override void leave() { // 隐藏方向提示界面 if (mPlayer.isType(CHARACTER_TYPE.CT_MYSELF)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_DIRECTION_TIPS); } }
public override void leave() { mAimTarget = null; // 隐藏瞄准图标 if (mPlayer.isType(CHARACTER_TYPE.CT_MYSELF)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_AIMING); } }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_DROP, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ALL_CHARACTER_INFO, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_BACK_FRAME, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_DROP, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_HAND_IN, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_DICE, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_PLAYER_ACTION, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_GAME_ENDING, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ADD_PLAYER, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_FRAME, true); }
public override void update(float elapsedTime) { base.update(elapsedTime); // 已经显示完成,并且需要自动隐藏时才会计时 if (mShowDone && mCurTime >= 0.0f) { mCurTime += elapsedTime; if (mCurTime >= mAutoHideTime) { LayoutTools.HIDE_LAYOUT(mLayout.getType()); } } }
protected override void onKeyProcess(float elapsedTime) { // 返回到待机流程 if (mGameInputManager.getKeyCurrentDown(KeyCode.Y)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_SELECT_ROLE, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BUTTOM_PROMPT, true); CommandGameSceneChangeProcedure cmd = newCmd(out cmd); cmd.mProcedure = PROCEDURE_TYPE.PT_START_STAND_BY; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } // 进入选择赛道流程 if (mGameInputManager.getKeyCurrentDown(KeyCode.A)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_SELECT_ROLE); CommandGameScenePrepareChangeProcedure cmd = newCmd(out cmd); cmd.mProcedure = PROCEDURE_TYPE.PT_START_SELECT_TRACK; cmd.mPrepareTime = 0.5f; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } // 进入设置流程 if (mGameInputManager.getKeyCurrentDown(KeyCode.X)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BUTTOM_PROMPT); CommandGameScenePrepareChangeProcedure cmd = newCmd(out cmd); cmd.mProcedure = PROCEDURE_TYPE.PT_START_SETTING; cmd.mPrepareTime = 0.5f; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } // 选择上一个角色 if (mGameInputManager.turnLeft()) { CommandStartSceneSelectRole cmd = newCmd(out cmd); cmd.mIndex = mRoleSystem.getLastIndex(); pushCommand(cmd, mGameScene); } // 选择下一个角色 if (mGameInputManager.turnRight()) { CommandStartSceneSelectRole cmd = newCmd(out cmd); cmd.mIndex = mRoleSystem.getNextIndex(); pushCommand(cmd, mGameScene); } }
protected override void onExit(SceneProcedure nextProcedure) { // 隐藏比赛结束的布局 // 清空所有角色的所有状态 mRoleSystem.clearAllPlayerState(); // 隐藏除了主角以外的所有角色 mRoleSystem.hideAllPlayerExceptMyself(); // 通知本局游戏结束 mRaceSystem.notifyGameFinish(); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_CIRCLE_TIP); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_TRACK); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_PROPS); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_TOP_TIME); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_PLAYER_RACE_INFO); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ATTACK_TIP); }
public override void keyProcess() { base.keyProcess(); if (FrameBase.mInputManager.getKeyCurrentDown(KeyCode.L)) { GameLayout debugInfo = FrameBase.mLayoutManager.getGameLayout(LAYOUT_TYPE.LT_DEBUG_INFO); if (debugInfo != null) { if (debugInfo.isVisible()) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_DEBUG_INFO); } else { LayoutTools.SHOW_LAYOUT(LAYOUT_TYPE.LT_DEBUG_INFO); } } } }
protected override void onKeyProcess(float elapsedTime) { if (mGameInputManager.getKeyCurrentDown(KeyCode.Y)) { CommandGameScenePrepareChangeProcedure cmd = newCmd(out cmd, true, false); cmd.mProcedure = PROCEDURE_TYPE.PT_START_SELECT_ROLE; cmd.mPrepareTime = 1.0f; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } if (mGameInputManager.getKeyCurrentDown(KeyCode.X)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BUTTOM_PROMPT); CommandGameScenePrepareChangeProcedure cmd = newCmd(out cmd); cmd.mProcedure = PROCEDURE_TYPE.PT_START_SETTING; cmd.mPrepareTime = 0.25f; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } if (mGameInputManager.turnLeft()) { CommandStartSceneSelectTrack cmdTrack = newCmd(out cmdTrack); cmdTrack.mTrack = mRaceSystem.getLastTrackIndex(); pushCommand(cmdTrack, mGameScene); } if (mGameInputManager.turnRight()) { CommandStartSceneSelectTrack cmdTrack = newCmd(out cmdTrack); cmdTrack.mTrack = mRaceSystem.getNextTrackIndex(); pushCommand(cmdTrack, mGameScene); } if (mGameInputManager.getKeyCurrentDown(KeyCode.A)) { CommandGameSceneChangeProcedure cmd = newCmd(out cmd); cmd.mProcedure = PROCEDURE_TYPE.PT_START_CONFIRM_SELECTION; pushCommand(cmd, mGameScene); GameTools.PLAY_AUDIO_UI(mScriptGlobalAudio.getAudioWindow(), SOUND_DEFINE.SD_CLICK_BUTTON); return; } }
public override void execute() { Character character = mReceiver as Character; CharacterData data = character.getCharacterData(); data.mCircle = mCircle; // 如果已经达到赛道的最大圈数,则完成比赛 if (data.mCircle >= mRaceSystem.getCurGameTrack().mCircleCount) { // 通知玩家完成比赛 pushCommand <CommandCharacterNotifyFinish>(character); // 只要有玩家完成了比赛,并且不在比赛结束倒计时流程,则跳转到比赛结束的倒计时流程 GameScene gameScene = mGameSceneManager.getCurScene(); if (!gameScene.atProcedure(PROCEDURE_TYPE.PT_MAIN_GAMING_FINISH)) { CommandGameSceneChangeProcedure cmdProcedure = newCmd(out cmdProcedure); cmdProcedure.mProcedure = PROCEDURE_TYPE.PT_MAIN_GAMING_FINISH; pushCommand(cmdProcedure, gameScene); } // 完成比赛 在倒计时流程 如果是玩家 那么就隐藏倒计时布局 if (gameScene.atProcedure(PROCEDURE_TYPE.PT_MAIN_GAMING_FINISH)) { if (character.isType(CHARACTER_TYPE.CT_MYSELF)) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_END_COUNT_DOWN, true); } } } else { // 提示圈数 if (character.isType(CHARACTER_TYPE.CT_MYSELF)) { mScriptCircleTip.notifyFinishedCircle(mCircle); } } // 通知布局 mScriptPlayerRaceInfo.notifyCurCircle(data.mNumber, data.mCircle); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_START_VIDEO); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_SELECT_TRACK, true); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_FRAME); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_ALL_CHARACTER_INFO); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_BUTTOM_PROMPT); }
public override void onNextProcedurePrepared(SceneProcedure nextPreocedure) { base.onNextProcedurePrepared(nextPreocedure); // 视频准备完毕后才卸载logo布局 LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_LOGO); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_CONFIRM_SELECTION); // 停止背景音乐 ObjectTools.PLAY_AUDIO_SCENE(); }
protected override void onExit(SceneProcedure nextProcedure) { // 隐藏比赛结束倒计时 LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_END_COUNT_DOWN); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_REGISTER); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_DROP); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_PLAYER_ACTION); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_MAHJONG_HAND_IN); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { // 隐藏该场景的所有布局 LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_LOGIN, true); LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_REGISTER, true); }
protected void onCancel(GameObject go) { LayoutTools.HIDE_LAYOUT(mType); }
protected override void onExit(SceneProcedure nextProcedure) { LayoutTools.HIDE_LAYOUT(LAYOUT_TYPE.LT_GAME_ENDING); }