// Called internally when the new transition actually happens, at the start of the frame AFTER the Goto state was called private void EnteredNewState(EEngineState newState) { engineState = newState; }
void setEngineState(EEngineState state) { if (m_state == state) { return; } switch (m_state) { case EEngineState.view1: { m_view1_Panel.SetActive(false); break; }; case EEngineState.view2: { m_view2_Panel.SetActive(false); break; }; case EEngineState.options: { m_options_Panel.SetActive(false); break; }; case EEngineState.help_quality: { m_helpQuality_Panel.SetActive(false); break; }; } ; switch (state) { case EEngineState.view1: { m_view1_Panel.SetActive(true); m_Camera_setView(CameraView.view1); break; }; case EEngineState.view2: { m_view2_Panel.SetActive(true); m_Camera_setView(CameraView.view2); break; }; case EEngineState.options: { m_options_Panel.SetActive(true); m_Camera_setView(CameraView.view1); break; }; case EEngineState.help_quality: { m_helpQuality_Panel.SetActive(true); break; }; } ; m_state = state; }
/// <summary> /// Puts the enigine into the new state causing it to change upadate / render sate and mode /// Does not actually transition until this update cycle is over /// </summary> public void GotoState(EEngineState newState) { gotoNewState = true; nextState = newState; }