protected override void onInit(SceneProcedure lastProcedure, string intent) { // 先加载关键帧资源 mKeyFrameManager.loadAll(false); // 预先加载启动视频的背景音乐,因为需要尽量保证在播放视频时视频音效已经加载完 mAudioManager.loadAudio(SOUND_DEFINE.SD_LOGO_VIDEO); // 然后异步加载所有音效 mAudioManager.loadAll(true); // 预加载需要用到的预设 preloadObject(GameDefine.R_PARTICLE_PREFAB_PATH + GameDefine.SHIELD); preloadObject(GameDefine.R_PARTICLE_PREFAB_PATH + GameDefine.TURBO); preloadObject(GameDefine.R_SCENE_ITEM_PREFAB_PATH + GameDefine.ITEM_BOX); preloadObject(GameDefine.R_SCENE_ITEM_PREFAB_PATH + GameDefine.LANDMINE); preloadObject(GameDefine.R_SCENE_ITEM_PREFAB_PATH + GameDefine.MISSILE); for (int i = 0; i < GameDefine.ROLE_COUNT; ++i) { preloadObject(GameDefine.R_CHARACTER_PREFAB_PATH + GameDefine.ROLE_MODEL_NAME[i]); } // 加载并显示logo布局,也加载全局音效布局 LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_LOGO, 0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_GLOBAL_AUDIO, 0); LayoutTools.LOAD_NGUI_HIDE(LAYOUT_TYPE.LT_DEBUG_INFO, 25); LayoutTools.LOAD_NGUI_ASYNC(LAYOUT_TYPE.LT_STAND_BY, 1, null); // 隐藏完毕后跳转到启动视频流程 CommandGameSceneChangeProcedure cmdProcedure = newCmd(out cmdProcedure, true, true); cmdProcedure.mProcedure = PROCEDURE_TYPE.PT_LOGO_START_VIDEO; pushDelayCommand(cmdProcedure, mGameScene, mScriptLogo.getFullTime()); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { // 从待机流程和选择赛道流程跳转过来,正常显示布局 if (!lastProcedure.isThisOrParent(PROCEDURE_TYPE.PT_START_SETTING)) { // 设置摄像机的变换 RoleDisplay roleDisplay = mSceneSystem.getScene <RoleDisplay>(GameDefine.ROLE_DISPLAY); GameCamera mainCamera = mCameraManager.getMainCamera(); if (!lastProcedure.isThisOrParent(PROCEDURE_TYPE.PT_START_SELECT_TRACK)) { mainCamera.copyCamera(roleDisplay.mCameraPositionObject0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_BUTTOM_PROMPT, 9); } else { Transform cameraPos0 = roleDisplay.mCameraTransform0; ObjectTools.MOVE_OBJECT(mainCamera, mainCamera.getPosition(), cameraPos0.localPosition, 0.5f); ObjectTools.ROTATE_OBJECT(mainCamera, mainCamera.getRotation(), cameraPos0.localEulerAngles, 0.5f); } LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_SELECT_ROLE, 9); } // 从设置流程跳转过来,立即显示布局 else { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_BUTTOM_PROMPT, 9); } LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_RETURN, 0); // 设置当前选中角色 CommandStartSceneSelectRole cmd = newCmd(out cmd); cmd.mIndex = mRoleSystem.getSelectedIndex(); cmd.mPlayAudio = false; pushCommand(cmd, mGameScene); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_LOADING, 1); mSceneSystem.loadSceneAsync(mRaceSystem.getTrackName(), true, onSceneLoad); mSceneInstance = mSceneSystem.getScene <SceneInstance>(mRaceSystem.getTrackName()); }
public override void enter(StateParam param) { // 显示瞄准图标,只有玩家自己进入瞄准状态才显示 if (mPlayer.isType(CHARACTER_TYPE.CT_MYSELF)) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_AIMING, 20); } }
public override void enter(StateParam param) { // 显示方向提示界面,只有玩家自己进入瞄准状态才显示 if (mPlayer.isType(CHARACTER_TYPE.CT_MYSELF)) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_DIRECTION_TIPS, 20); } }
protected override void onInit(SceneProcedure lastProcedure, string intent) { // 给所有角色添加游戏中状态 mRoleSystem.notifyAllPlayerGame(); mRaceSystem.notifyGameStart(); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_CIRCLE_TIP, 10); LayoutTools.LOAD_NGUI_HIDE(LAYOUT_TYPE.LT_END_COUNT_DOWN, 10); // 随机播放一首背景音乐 GameTools.PLAY_AUDIO_SCENE(mRaceMusicList[MathUtility.randomInt(0, mRaceMusicList.Length - 1)], true); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_STAND_BY, 1); if (lastProcedure.getProcedureType() != PROCEDURE_TYPE.PT_START_SELECT_ROLE) { mSceneSystem.activeScene(GameDefine.ROLE_DISPLAY); mSceneSystem.initScene(GameDefine.ROLE_DISPLAY); // 播放背景音乐 GameTools.PLAY_AUDIO_SCENE(SOUND_DEFINE.SD_MENU_BACKGROUND, true); } }
protected override void onInit(SceneProcedure lastProcedure, string intent) { if (lastProcedure.isThisOrParent(PROCEDURE_TYPE.PT_START_SETTING)) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_BUTTOM_PROMPT, 0); } LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_SELECT_TRACK, 0); RoleDisplay roleDisplay = mSceneSystem.getScene <RoleDisplay>(GameDefine.ROLE_DISPLAY); Transform cameraPos1 = roleDisplay.mCameraTransform1; GameCamera mainCamera = mCameraManager.getMainCamera(); ObjectTools.MOVE_OBJECT(mainCamera, mainCamera.getPosition(), cameraPos1.localPosition, 0.5f); ObjectTools.ROTATE_OBJECT(mainCamera, mainCamera.getRotation(), cameraPos1.localEulerAngles, 0.5f); CommandStartSceneSelectTrack cmdTrack = newCmd(out cmdTrack); cmdTrack.mTrack = mRaceSystem.getTrackIndex(); cmdTrack.mPlayAudio = false; pushCommand(cmdTrack, mGameScene); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_SETTLEMENT, 10); // 卸载除了角色展示以外的所有场景 mSceneSystem.unloadOtherScene(GameDefine.ROLE_DISPLAY); // 激活场景,初始化场景 mSceneSystem.activeScene(GameDefine.ROLE_DISPLAY); mSceneSystem.initScene(GameDefine.ROLE_DISPLAY); // 设置摄像机位置 RoleDisplay roleDisplay = mSceneSystem.getScene <RoleDisplay>(GameDefine.ROLE_DISPLAY); mCameraManager.getMainCamera().copyCamera(roleDisplay.mCameraPositionObject0); // 给主角添加选中状态 CommandCharacterAddState cmdState = newCmd(out cmdState); cmdState.mState = PLAYER_STATE.PS_ON_SELECT_ROLE; pushCommand(cmdState, mCharacterManager.getMyself()); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { // 创建比赛的所有角色 mRoleSystem.createMyself("myself", 2); int[] startIndex = new int[GameDefine.MAX_AI_COUNT] { 0, 1, 3, 4 }; for (int i = 0; i < GameDefine.MAX_AI_COUNT; ++i) { mRoleSystem.createAI("player" + i, GameDefine.ROLE_MODEL_NAME[i], startIndex[i], i); } // 给所有角色添加准备状态 mRoleSystem.notifyAllPlayerReady(); // 显示游戏界面 LayoutTools.LOAD_NGUI_HIDE(LAYOUT_TYPE.LT_DIRECTION_TIPS, 20); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_BUTTOM_PROMPT, 0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_TOP_TIME, 0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_TRACK, 0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_PROPS, 0); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_COUNT_DOWN, 5); LayoutTools.LOAD_UGUI_SHOW(LAYOUT_TYPE.LT_PLAYER_RACE_INFO, 10); LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_ATTACK_TIP, 10); LayoutTools.HIDE_LAYOUT_DELAY(null, 10.0f, LAYOUT_TYPE.LT_BUTTOM_PROMPT); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { // 显示启动视频,等待视频准备完毕 LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_START_VIDEO, 1); mVideoDone = false; }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_CONFIRM_SELECTION, 10); }
protected override void onInit(SceneProcedure lastProcedure, string intent) { LayoutTools.LOAD_NGUI_SHOW(LAYOUT_TYPE.LT_VOLUME_SETTING, 10); }