From e63743d664666bca7c3084fd38e49994609014ae Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sat, 17 Mar 2007 03:51:07 +0000 Subject: [PATCH] fix INITIAL_HOLD_LIFE: leave at 1 until the hold starts --- stepmania/src/Player.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/stepmania/src/Player.cpp b/stepmania/src/Player.cpp index f38ff08fc2..e8e2ad5300 100644 --- a/stepmania/src/Player.cpp +++ b/stepmania/src/Player.cpp @@ -404,17 +404,6 @@ void Player::Load() /* Apply transforms. */ NoteDataUtil::TransformNoteData( m_NoteData, m_pPlayerState->m_PlayerOptions.GetStage(), GAMESTATE->GetCurrentStyle()->m_StepsType ); - /* Apply InitialHoldLife. */ - { - NoteData::all_tracks_iterator iter = m_NoteData.GetTapNoteRangeAllTracks( 0, MAX_NOTE_ROW, NULL, true ); - for( ; !iter.IsAtEnd(); ++iter ) - { - TapNote &tn = *iter; - if( tn.type == TapNote::hold_head ) - tn.HoldResult.fLife = INITIAL_HOLD_LIFE; - } - } - const Song* pSong = GAMESTATE->m_pCurSong; if( GAMESTATE->m_pCurGame->m_bAllowHopos ) NoteDataUtil::SetHopoPossibleFlags( pSong, m_NoteData ); @@ -2201,6 +2190,17 @@ void Player::CrossedRows( int iFirstRowCrossed, int iLastRowCrossed, const RageT { //LOG->Trace( "Player::CrossedRows %d %d", iFirstRowCrossed, iLastRowCrossed ); + /* Apply InitialHoldLife. */ + { + NoteData::all_tracks_iterator iter = m_NoteData.GetTapNoteRangeAllTracks( iFirstRowCrossed, iLastRowCrossed+1, NULL, false ); + for( ; !iter.IsAtEnd(); ++iter ) + { + TapNote &tn = *iter; + if( tn.type == TapNote::hold_head ) + tn.HoldResult.fLife = INITIAL_HOLD_LIFE; + } + } + // for each index we crossed since the last update FOREACH_NONEMPTY_ROW_ALL_TRACKS_RANGE( m_NoteData, r, m_iFirstUncrossedRow, iLastRowCrossed+1 ) {