From a6475109a3d92e6ba7c45c08069533f7328cd97a Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 1 Feb 2006 05:47:50 +0000 Subject: [PATCH] fix up STATE_RECORDING_PAUSED; make this clearer --- stepmania/src/ScreenEdit.cpp | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/stepmania/src/ScreenEdit.cpp b/stepmania/src/ScreenEdit.cpp index a277ba8d24..dd97a1d0f8 100644 --- a/stepmania/src/ScreenEdit.cpp +++ b/stepmania/src/ScreenEdit.cpp @@ -1957,6 +1957,27 @@ void ScreenEdit::TransitionEditState( EditState em ) break; } + // Set up player options for this mode. (EDITING uses m_PlayerStateEdit, which we + // don't need to change.) + if( em != STATE_EDITING ) + { + // Stop displaying course attacks, if any. + GAMESTATE->m_pPlayerState[PLAYER_1]->RemoveActiveAttacks(); + // Load the player's default PlayerOptions. + GAMESTATE->m_pPlayerState[PLAYER_1]->RebuildPlayerOptionsFromActiveAttacks(); + + switch( em ) + { + case STATE_RECORDING: + case STATE_RECORDING_PAUSED: + GAMESTATE->m_pPlayerState[PLAYER_1]->m_PlayerOptions.m_fScrolls[PlayerOptions::SCROLL_CENTERED] = 1.0f; + break; + } + + /* Snap to current options. */ + GAMESTATE->m_pPlayerState[PLAYER_1]->m_CurrentPlayerOptions = GAMESTATE->m_pPlayerState[PLAYER_1]->m_PlayerOptions; + } + switch( em ) { case STATE_EDITING: @@ -1981,16 +2002,6 @@ void ScreenEdit::TransitionEditState( EditState em ) { GAMESTATE->ResetOriginalSyncData(); - /* Stop displaying course attacks, if any, and return to the player's defaults. */ - GAMESTATE->m_pPlayerState[PLAYER_1]->RemoveActiveAttacks(); - GAMESTATE->m_pPlayerState[PLAYER_1]->RebuildPlayerOptionsFromActiveAttacks(); - - if( em == STATE_RECORDING ) - GAMESTATE->m_pPlayerState[PLAYER_1]->m_PlayerOptions.m_fScrolls[PlayerOptions::SCROLL_CENTERED] = 1.0f; - - /* Snap to current options. */ - GAMESTATE->m_pPlayerState[PLAYER_1]->m_CurrentPlayerOptions = GAMESTATE->m_pPlayerState[PLAYER_1]->m_PlayerOptions; - /* Give a 1 second lead-in. If we're loading Player, this must be done first. */ float fSeconds = m_pSong->m_Timing.GetElapsedTimeFromBeat( NoteRowToBeat(m_iStartPlayingAt) ) - 1; GAMESTATE->UpdateSongPosition( fSeconds, m_pSong->m_Timing );