@@ -43,16 +43,32 @@ private enum GameState
4343 private GameState m_CurrentState = GameState . Initializing ;
4444 private GameState m_NextState = GameState . Playing ;
4545
46- private void SetState ( GameState newState )
46+ private void OnToggleMenu ( InputAction . CallbackContext obj )
47+ {
48+ ToggleMenu ( ) ;
49+ }
50+
51+ private void OnEnable ( )
52+ {
53+ toggleMenuAction . action . performed += OnToggleMenu ;
54+ }
55+
56+ private void OnDisable ( )
57+ {
58+ toggleMenuAction . action . performed -= OnToggleMenu ;
59+ }
60+
61+ private void Update ( )
4762 {
4863 // Abort if there is no change to state
49- if ( newState == m_CurrentState )
64+ if ( m_CurrentState == m_NextState )
5065 return ;
5166
5267 // Update current state
53- m_CurrentState = newState ;
68+ m_CurrentState = m_NextState ;
5469
55- switch ( newState )
70+ // Handle state transition
71+ switch ( m_NextState )
5672 {
5773 // Entering game mode: enable in-game actions, show menu
5874 case GameState . Playing :
@@ -70,29 +86,6 @@ private void SetState(GameState newState)
7086 EventSystem . current . SetSelectedGameObject ( EventSystem . current . firstSelectedGameObject ) ;
7187 break ;
7288 }
73-
74- Debug . Log ( m_CurrentState ) ;
75- }
76-
77- private void OnToggleMenu ( InputAction . CallbackContext obj )
78- {
79- ToggleMenu ( ) ;
80- }
81-
82- private void OnEnable ( )
83- {
84- toggleMenuAction . action . performed += OnToggleMenu ;
85- }
86-
87- private void OnDisable ( )
88- {
89- toggleMenuAction . action . performed -= OnToggleMenu ;
90- }
91-
92- private void Update ( )
93- {
94- if ( m_CurrentState != m_NextState )
95- SetState ( m_NextState ) ;
9689 }
9790 }
9891}
0 commit comments