partial PlayerMinus::RandomiseNotes fix
This commit is contained in:
+10
-14
@@ -822,25 +822,21 @@ void PlayerMinus::RandomiseNotes( int iNoteRow )
|
|||||||
{
|
{
|
||||||
const int NewNoteRow = (int)(iNoteRow + 50 / GAMESTATE->m_PlayerOptions[m_PlayerNumber].m_fScrollSpeed); // change the row to look ahead from based upon their speed mod
|
const int NewNoteRow = (int)(iNoteRow + 50 / GAMESTATE->m_PlayerOptions[m_PlayerNumber].m_fScrollSpeed); // change the row to look ahead from based upon their speed mod
|
||||||
|
|
||||||
bool bUpdateNoteData = false;
|
|
||||||
int iNumOfTracks = GetNumTracks();
|
int iNumOfTracks = GetNumTracks();
|
||||||
for(int t=0; t<iNumOfTracks; t++)
|
for( int t=0; t+1 < iNumOfTracks; t++ )
|
||||||
{
|
{
|
||||||
if(t+1 < iNumOfTracks)
|
int iRandomTrackToSwapWith = RandomInt(0, iNumOfTracks-1);
|
||||||
|
const TapNote t1 = GetTapNote(t, NewNoteRow);
|
||||||
|
const TapNote t2 = GetTapNote(iRandomTrackToSwapWith, NewNoteRow);
|
||||||
|
|
||||||
|
if( (t1 == TAP_TAP || t1 == TAP_EMPTY) && (t2 == TAP_TAP || t2 == TAP_EMPTY) )
|
||||||
{
|
{
|
||||||
int iRandomTrackToSwapWith = RandomInt(0, iNumOfTracks-1);
|
SetTapNote(t, NewNoteRow, t2);
|
||||||
TapNote t1 = GetTapNote(t, NewNoteRow);
|
SetTapNote(iRandomTrackToSwapWith, NewNoteRow, t1);
|
||||||
TapNote t2 = GetTapNote(iRandomTrackToSwapWith, NewNoteRow);
|
|
||||||
if((t1 == TAP_TAP || t1 == TAP_EMPTY) && (t2 == TAP_TAP || t2 == TAP_EMPTY) && (!(t1 == TAP_EMPTY && t2 == TAP_EMPTY) && !(t1 == TAP_TAP && t2 == TAP_TAP)))
|
|
||||||
{
|
|
||||||
SetTapNote(t, NewNoteRow, t2);
|
|
||||||
SetTapNote(iRandomTrackToSwapWith, NewNoteRow, t1);
|
|
||||||
bUpdateNoteData = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( bUpdateNoteData )
|
|
||||||
m_pNoteField->CopyAll( this );
|
m_pNoteField->CopyRange( this, NewNoteRow, NewNoteRow, NewNoteRow );
|
||||||
}
|
}
|
||||||
|
|
||||||
void PlayerMinus::HandleTapRowScore( unsigned row )
|
void PlayerMinus::HandleTapRowScore( unsigned row )
|
||||||
|
|||||||
Reference in New Issue
Block a user