Split out HideNote. Make fewer copies of TapNotes.
This commit is contained in:
@@ -1209,12 +1209,9 @@ void Player::HandleStep( int col, const RageTimer &tm, bool bHeld )
|
|||||||
// remove all TapAttacks on this row
|
// remove all TapAttacks on this row
|
||||||
for( int t=0; t<m_NoteData.GetNumTracks(); t++ )
|
for( int t=0; t<m_NoteData.GetNumTracks(); t++ )
|
||||||
{
|
{
|
||||||
TapNote tn = m_NoteData.GetTapNote(t, iIndexOverlappingNote);
|
const TapNote &tn = m_NoteData.GetTapNote(t, iIndexOverlappingNote);
|
||||||
if( tn.type == TapNote::attack )
|
if( tn.type == TapNote::attack )
|
||||||
{
|
HideNote( t, iIndexOverlappingNote );
|
||||||
tn.result.bHidden = true;
|
|
||||||
m_NoteData.SetTapNote( col, iIndexOverlappingNote, tn );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1245,12 +1242,7 @@ void Player::HandleStep( int col, const RageTimer &tm, bool bHeld )
|
|||||||
if( m_pNoteField )
|
if( m_pNoteField )
|
||||||
m_pNoteField->DidTapNote( col, score, bBright );
|
m_pNoteField->DidTapNote( col, score, bBright );
|
||||||
if( score >= TNS_W3 || bBlind )
|
if( score >= TNS_W3 || bBlind )
|
||||||
{
|
HideNote( col, iIndexOverlappingNote );
|
||||||
TapNote tn2 = tn;
|
|
||||||
|
|
||||||
tn2.result.bHidden = true;
|
|
||||||
m_NoteData.SetTapNote( col, iIndexOverlappingNote, tn2 );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if( NoteDataWithScoring::IsRowCompletelyJudged(m_NoteData, iIndexOverlappingNote, pn) )
|
else if( NoteDataWithScoring::IsRowCompletelyJudged(m_NoteData, iIndexOverlappingNote, pn) )
|
||||||
@@ -1452,12 +1444,7 @@ void Player::FlashGhostRow( int iRow, PlayerNumber pn )
|
|||||||
if( m_pNoteField )
|
if( m_pNoteField )
|
||||||
m_pNoteField->DidTapNote( iTrack, lastTNS, bBright );
|
m_pNoteField->DidTapNote( iTrack, lastTNS, bBright );
|
||||||
if( lastTNS >= TNS_W3 || bBlind )
|
if( lastTNS >= TNS_W3 || bBlind )
|
||||||
{
|
HideNote( iTrack, iRow );
|
||||||
TapNote tn2 = tn;
|
|
||||||
|
|
||||||
tn2.result.bHidden = true;
|
|
||||||
m_NoteData.SetTapNote( iTrack, iRow, tn2 );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -139,6 +139,12 @@ protected:
|
|||||||
int GetClosestNote( int col, int iNoteRow, int iMaxRowsAhead, int iMaxRowsBehind, bool bAllowGraded ) const;
|
int GetClosestNote( int col, int iNoteRow, int iMaxRowsAhead, int iMaxRowsBehind, bool bAllowGraded ) const;
|
||||||
|
|
||||||
bool IsPlayingBeginner() const;
|
bool IsPlayingBeginner() const;
|
||||||
|
inline void HideNote( int col, int row )
|
||||||
|
{
|
||||||
|
NoteData::iterator iter = m_NoteData.FindTapNote( col, row );
|
||||||
|
if( iter != m_NoteData.end(col) )
|
||||||
|
iter->second.result.bHidden = true;
|
||||||
|
}
|
||||||
|
|
||||||
bool m_bLoaded;
|
bool m_bLoaded;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user