diff --git a/stepmania/src/NoteData.cpp b/stepmania/src/NoteData.cpp index a1b8068ebb..2876e61580 100644 --- a/stepmania/src/NoteData.cpp +++ b/stepmania/src/NoteData.cpp @@ -110,8 +110,10 @@ void NoteData::LoadFromSMNoteDataString( CString sSMNoteData ) // if( m_iNumTracks != sMeasureLine.GetLength() ) // throw RageException( "Actual number of note columns (%d) is different from the NotesType (%d).", m_iNumTracks, sMeasureLine.GetLength() ); + /* XXXXX: don't do this, translate explicitly, so the TAP_* constants + * can be changed */ for( int c=0; cConvert2sAnd3sToHoldNotes(); @@ -144,8 +146,10 @@ CString NoteData::GetSMNoteDataString() for( int r=iMeasureStartRow; r<=iMeasureLastRow; r+=iRowSpacing ) { char szLineString[MAX_NOTE_TRACKS]; + /* XXXXX: don't do this, translate explicitly, so the TAP_* constants + * can be changed */ for( int t=0; tConvert4sToHoldNotes(); } @@ -237,10 +241,10 @@ void NoteData::AddHoldNote( HoldNote add ) // delete TapNotes under this HoldNote for( i=iAddStartIndex+1; i<=iAddEndIndex; i++ ) - m_TapNotes[add.m_iTrack][i] = TAP_EMPTY; + SetTapNote(add.m_iTrack, i, TAP_EMPTY); // add a tap note at the start of this hold - m_TapNotes[add.m_iTrack][iAddStartIndex] = TAP_HOLD_HEAD; // Hold begin marker. Don't draw this, but do grade it. + SetTapNote(add.m_iTrack, iAddStartIndex, TAP_HOLD_HEAD); // Hold begin marker. Don't draw this, but do grade it. ASSERT( m_iNumHoldNotes < MAX_HOLD_NOTES ); m_HoldNotes[m_iNumHoldNotes++] = add; @@ -255,7 +259,7 @@ void NoteData::RemoveHoldNote( int iHoldIndex ) int iHoldStartIndex = BeatToNoteRow(hn.m_fStartBeat); // delete a tap note at the start of this hold - m_TapNotes[hn.m_iTrack][iHoldStartIndex] = TAP_EMPTY; + SetTapNote(hn.m_iTrack, iHoldStartIndex, TAP_EMPTY); // remove from list for( int j=iHoldIndex; j= 2 ) @@ -419,7 +423,7 @@ void NoteData::CropToLeftSide() for( int c=iFirstRightSideColumn; c<=iLastRightSideColumn; c++ ) { for( int i=0; i=0; i-- ) // foreach HoldNote @@ -446,7 +450,7 @@ void NoteData::CropToRightSide() for( c=0; cCopyAll( &tempNoteData ); // copy note data from newData back into this this->Convert2sAnd3sToHoldNotes(); @@ -628,18 +632,18 @@ void NoteData::Turn( PlayerOptions::TurnType tt ) // shuffle this row CArray aiTracksThatCouldHaveTapNotes; for( t=0; tm_TapNotes[iOldTrack][r] != TAP_EMPTY ) - this->m_TapNotes[iNewTrack][r] = pOriginal->m_TapNotes[iOldTrack][r]; + if( pOriginal->GetTapNote(iOldTrack, r) != TAP_EMPTY ) + this->SetTapNote(iNewTrack, r, pOriginal->GetTapNote(iOldTrack, r)); } if( r % (ROWS_PER_MEASURE*4) == 0 ) // adjust sliding window every 4 measures @@ -956,8 +963,8 @@ void NoteData::LoadTransformedSlidingWindow( NoteData* pOriginal, int iNewNumTra if( r ) for( int t=0; t<=pOriginal->m_iNumTracks; t++ ) { - if( pOriginal->m_TapNotes[t][r] == TAP_HOLD && - pOriginal->m_TapNotes[t][r-1] == TAP_HOLD) + if( pOriginal->GetTapNote(t, r) == TAP_HOLD && + pOriginal->GetTapNote(t, r-1) == TAP_HOLD) { bHoldCrossesThisMeasure = true; break;