From 43f0fb96e1d47791768eedfc2f42ab9b10c87951 Mon Sep 17 00:00:00 2001 From: Jason Felds Date: Thu, 26 May 2011 14:57:28 -0400 Subject: [PATCH] Reactivate ed78fa2. Hasn't caused problems yet, but haven't saved results either. Next step...setting up original step timing and reverting. --- src/AdjustSync.cpp | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/AdjustSync.cpp b/src/AdjustSync.cpp index fd60402a5e..a6f7d5e580 100644 --- a/src/AdjustSync.cpp +++ b/src/AdjustSync.cpp @@ -209,14 +209,22 @@ void AdjustSync::AutosyncOffset() { switch( GAMESTATE->m_SongOptions.GetCurrent().m_AutosyncType ) { - case SongOptions::AUTOSYNC_SONG: - GAMESTATE->m_pCurSong->m_SongTiming.m_fBeat0OffsetInSeconds += mean; - break; - case SongOptions::AUTOSYNC_MACHINE: - PREFSMAN->m_fGlobalOffsetSeconds.Set( PREFSMAN->m_fGlobalOffsetSeconds + mean ); - break; - default: - ASSERT(0); + case SongOptions::AUTOSYNC_SONG: + { + GAMESTATE->m_pCurSong->m_SongTiming.m_fBeat0OffsetInSeconds += mean; + const vector& vpSteps = GAMESTATE->m_pCurSong->GetAllSteps(); + FOREACH( Steps*, const_cast&>(vpSteps), s ) + { + (*s)->m_Timing.m_fBeat0OffsetInSeconds += mean; + } + break; + } + case SongOptions::AUTOSYNC_MACHINE: + // Step timing is not needed for this operation. + PREFSMAN->m_fGlobalOffsetSeconds.Set( PREFSMAN->m_fGlobalOffsetSeconds + mean ); + break; + default: + ASSERT(0); } SCREENMAN->SystemMessage( AUTOSYNC_CORRECTION_APPLIED.GetValue() );