diff --git a/src/Player.cpp b/src/Player.cpp index c3dfb492ba..af0037d5d7 100644 --- a/src/Player.cpp +++ b/src/Player.cpp @@ -985,6 +985,7 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vectorTrace(ssprintf("[Player::UpdateHoldNotes] fLife = %f",fLife)); bool bSteppedOnHead = true; + bool bHeadJudged = true; FOREACH( TrackRowTapNote, vTN, trtn ) { TapNote &tn = *trtn->pTN; @@ -995,7 +996,8 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vectorTrace("[Player::UpdateHoldNotes] initiated note, fLife != 0"); /* This hold note is not judged and we stepped on its head. @@ -1076,7 +1081,7 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vectorTrace("LetGo from life == 0 (did initiate hold)"); hns = HNS_LetGo; @@ -1165,7 +1170,7 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vector= iMaxEndRow ) + if( iSongRow >= iMaxEndRow && bHeadJudged ) { bool bLetGoOfHoldNote = false;