// public void launch() { MainMenu.Instance.init(); _popup = MainMenu.Instance.popup; //goPlayer.transform.position = new Vector3(0, 0.6f, -0.75f); //goPlayerCameraRig.transform.position = goPlayer.transform.position; Vector3 savedPos = Vector3.zero; Vector3 savedRot = Vector2.zero; savedPos.x = (VoxelUtils.MAX_CHUNK_UNITS * VoxelUtils.CHUNK_SIZE * .5f); savedPos.y = (VoxelUtils.MAX_CHUNK_UNITS * VoxelUtils.CHUNK_SIZE * .5f); savedPos.z = (VoxelUtils.MAX_CHUNK_UNITS * VoxelUtils.CHUNK_SIZE * .5f) - 1.0f; FlyCam.Instance.setNewInitialPosition(savedPos, savedRot); resetCamToStartPos(); _aEditorTools = new List <EditorTool> ((int)Globals.TOOL.NUM_TOOLS); _aEditorTools.Add(new EditorToolLook()); _aEditorTools.Add(new EditorToolDig()); _aEditorTools.Add(new EditorToolPaint()); _aEditorTools.Add(new EditorToolBuild()); _aEditorTools.Add(new EditorToolProp()); _aEditorTools.Add(new EditorToolRailgun()); _curEditorTool = null; if (!AppController.Instance.editorIsInOfflineMode) { int firstLevelId = LevelManager.Instance.getLevelIdByIndex(0); teleportToLevelWithId(firstLevelId); } SceneManager.UnloadSceneAsync(BuildSettings.VWE_SplashScreenScene); setMode(AppState.Null, true); if (!_popup.isVisible()) { showHelpPopup(); } }
// public void setMode(AppState mode, bool forceMode = false) { if (mode == AppController.Instance.appState && !forceMode) { return; } AppController.Instance.setAppState(mode); //goLights.SetActive (mode != AppState.Play); MainMenu.Instance.setModeButtons(mode); MainMenu.Instance.setMenuPanels(mode); if (_curEditorTool != null) { _curEditorTool.setSingleMaterial(laserAim, laserAimMaterial, false); _curEditorTool.resetMaterial(); _curEditorTool.resetAim(); _curEditorTool.resetProp(); _curEditorTool.deactivate(); } _curEditorTool = null; MainMenu.Instance.showTransformBox(false); MainMenu.Instance.showDigButtons(false); MainMenu.Instance.showMaterialBox(false); MainMenu.Instance.showRailgunBox(false); MainMenu.Instance.showItemsBox(false); laserAim.SetActive(false); propAim.SetActive(false); editCam.enabled = true; itemCam.enabled = false; _activeCam = editCam; EditorObjectSelection.Instance.ClearSelection(false); setSelectedObjects(); SceneGizmo.Instance.editorCameraTransform = EditorCamera.Instance.transform; Cursor.lockState = CursorLockMode.None; Cursor.visible = true; if (mode != AppState.Play) { activateCorrectPlayer(); } if (_goLevelMeshContainer.activeSelf) { _curVoxelsLevelChunk.trfmProps.SetParent(_curVoxelsLevelChunk.trfmVoxels.parent); } _goLevelContainer.SetActive(mode != AppState.Play); _goLevelMeshContainer.SetActive(!_goLevelContainer.activeSelf); if (mode == AppState.ExperimentalRailgun) { MainMenu.Instance.showRailgunBox(true); laserAim.SetActive(true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.RAILGUN]; newRailgunSelected(MainMenu.Instance.iSelectedRailgunMaterialIndex); } else if (mode == AppState.Play) { //resetCamToStartPos (false); // don't go back to starting pos _createLevelMeshesRunning = false; _createLevelMeshesComplete = false; AppController.Instance.showPopup(PopupMode.Overlay, null, "Creating level meshes\n0%"); } else if (mode == AppState.Select) { MainMenu.Instance.showTransformBox(true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.SELECT]; itemCam.enabled = true; itemCam.transform.position = editCam.transform.position; _activeCam = itemCam; editCam.enabled = false; } else if (mode == AppState.Dig) { MainMenu.Instance.showDigButtons(true); laserAim.SetActive(true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.DIG]; } else if (mode == AppState.Paint) { MainMenu.Instance.showMaterialBox(true); MainMenu.Instance.showDigButtons(true); laserAim.SetActive(true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.PAINT]; _curEditorTool.setCurAimMaterial(); } else if (mode == AppState.Build) { MainMenu.Instance.showMaterialBox(true); MainMenu.Instance.showDigButtons(true); laserAim.SetActive(true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.BUILD]; //_curEditorTool.setSingleMaterial (laserAim, _aMaterials[MainMenu.Instance.iSelectedMaterial], false); _curEditorTool.setCurAimMaterial(); } else if (mode == AppState.Props) { //MainMenu.Instance.showItemsBox (true); _curEditorTool = _aEditorTools [(int)Globals.TOOL.PROPS]; laserAim.SetActive(true); propAim.SetActive(true); if (_goCurProp == null) { newPropSelected(); } } SceneGizmo.Instance.editorCameraTransform = (itemCam.enabled ? EditorCamera.Instance.transform : FlyCam.Instance.player); RuntimeEditorApplication.Instance.gameObject.SetActive(mode == AppState.Select); MainMenu.Instance.setDigSliders(mode); //MainMenu.Instance.resetDigSettings (new Vector3 (1, 1, 1)); updateDigSettings(MainMenu.Instance.v3DigSettings); if (_curEditorTool != null) { _curEditorTool.activate(); } }