Fixed DWI writing bug, fixed player options interface bug, added more shorten group name presets.
This commit is contained in:
@@ -220,7 +220,7 @@ OptionIconsP2Y=86
|
||||
HelpText=! or " change music Hold ! and " then press START to change sort::## easier difficulty $$ harder difficulty::#$#$ to change sort
|
||||
TimerSeconds=60
|
||||
ScoreConnectedToMusicWheel=1
|
||||
SampleMusicDelay=0.15
|
||||
SampleMusicDelay=0.25
|
||||
|
||||
[ScreenEz2SelectMusic]
|
||||
BannerX=320 // central banner
|
||||
|
||||
@@ -882,7 +882,7 @@ void NoteData::LoadTransformedSlidingWindow( NoteData* pOriginal, int iNewNumTra
|
||||
this->m_TapNotes[iNewTrack][r] = pOriginal->m_TapNotes[iOldTrack][r];
|
||||
}
|
||||
|
||||
if( r % (ROWS_PER_MEASURE*2) == 0 ) // adjust sliding window every two measures
|
||||
if( r % (ROWS_PER_MEASURE*4) == 0 ) // adjust sliding window every 4 measures
|
||||
{
|
||||
// See if there is a hold crossing the beginning of this measure
|
||||
pOriginal->Convert4sToHoldNotes();
|
||||
|
||||
@@ -12,16 +12,16 @@ char NotesWriterDWI::NotesToDWIChar( bool bCol1, bool bCol2, bool bCol3, bool bC
|
||||
bool bCol[6];
|
||||
} const lookup[] = {
|
||||
{ '0', 0, 0, 0, 0, 0, 0 },
|
||||
{ '1', 0, 1, 1, 0, 0, 0 },
|
||||
{ '1', 1, 0, 1, 0, 0, 0 },
|
||||
{ '2', 0, 0, 1, 0, 0, 0 },
|
||||
{ '3', 0, 0, 1, 0, 1, 0 },
|
||||
{ '4', 0, 1, 0, 0, 0, 0 },
|
||||
{ '6', 0, 0, 0, 0, 1, 0 },
|
||||
{ '7', 0, 1, 0, 1, 0, 0 },
|
||||
{ '3', 0, 0, 1, 0, 0, 1 },
|
||||
{ '4', 1, 0, 0, 0, 0, 0 },
|
||||
{ '6', 0, 0, 0, 0, 0, 1 },
|
||||
{ '7', 1, 0, 0, 1, 0, 0 },
|
||||
{ '8', 0, 0, 0, 1, 0, 0 },
|
||||
{ '9', 0, 0, 0, 1, 1, 0 },
|
||||
{ '9', 0, 0, 0, 1, 0, 1 },
|
||||
{ 'A', 0, 0, 1, 1, 0, 0 },
|
||||
{ 'B', 0, 1, 0, 0, 1, 0 },
|
||||
{ 'B', 1, 0, 0, 0, 0, 1 },
|
||||
{ 'C', 0, 1, 0, 0, 0, 0 },
|
||||
{ 'D', 0, 0, 0, 0, 1, 0 },
|
||||
{ 'E', 1, 1, 0, 0, 0, 0 },
|
||||
@@ -42,13 +42,13 @@ char NotesWriterDWI::NotesToDWIChar( bool bCol1, bool bCol2, bool bCol3, bool bC
|
||||
if( l.bCol[0]==bCol1 && l.bCol[1]==bCol2 && l.bCol[2]==bCol3 && l.bCol[3]==bCol4 && l.bCol[4]==bCol5 && l.bCol[5]==bCol6 )
|
||||
return l.c;
|
||||
}
|
||||
ASSERT(0);
|
||||
ASSERT(0); // if we assert here, we didn't find the row in the DWI char lookup above. It must be missing an entry.
|
||||
return '0';
|
||||
}
|
||||
|
||||
char NotesWriterDWI::NotesToDWIChar( bool bCol1, bool bCol2, bool bCol3, bool bCol4 )
|
||||
{
|
||||
return NotesToDWIChar( 0, bCol1, bCol2, bCol3, bCol4, 0 );
|
||||
return NotesToDWIChar( bCol1, 0, bCol2, bCol3, 0, bCol4 );
|
||||
}
|
||||
|
||||
CString NotesWriterDWI::NotesToDWIString( char cNoteCol1, char cNoteCol2, char cNoteCol3, char cNoteCol4, char cNoteCol5, char cNoteCol6 )
|
||||
|
||||
@@ -85,7 +85,7 @@ void ScreenPlayerOptions::ImportOptions()
|
||||
for( int i=0; i<PlayerOptions::NUM_EFFECT_TYPES; i++ )
|
||||
{
|
||||
if( po.m_bEffects[i] )
|
||||
m_iSelectedOption[p][PO_EFFECT] = i-1;
|
||||
m_iSelectedOption[p][PO_EFFECT] = i+1;
|
||||
}
|
||||
|
||||
m_iSelectedOption[p][PO_APPEAR] = po.m_AppearanceType;
|
||||
|
||||
@@ -269,15 +269,17 @@ void SongManager::ReadStatisticsFromDisk()
|
||||
|
||||
// Each value has the format "SongName::StepsName=TimesPlayed::TopGrade::TopScore::MaxCombo".
|
||||
char szSongDir[256];
|
||||
char szNotesName[256];
|
||||
char szNotesType[256];
|
||||
char szNotesDescription[256];
|
||||
int iRetVal;
|
||||
int i;
|
||||
|
||||
// Parse for Song name and Notes name
|
||||
iRetVal = sscanf( name, "%[^:]::%[^\n]", szSongDir, szNotesName );
|
||||
if( iRetVal != 2 )
|
||||
iRetVal = sscanf( name, "%[^:]::%[^:]::%[^\n]", szSongDir, szNotesType, szNotesDescription );
|
||||
if( iRetVal != 3 )
|
||||
continue; // this line doesn't match what is expected
|
||||
|
||||
NotesType notesType = GameManager::StringToNotesType( szNotesType );
|
||||
|
||||
// Search for the corresponding Song pointer.
|
||||
Song* pSong = NULL;
|
||||
@@ -297,7 +299,8 @@ void SongManager::ReadStatisticsFromDisk()
|
||||
Notes* pNotes = NULL;
|
||||
for( i=0; i<pSong->m_apNotes.GetSize(); i++ )
|
||||
{
|
||||
if( pSong->m_apNotes[i]->m_sDescription == szNotesName ) // match!
|
||||
if( pSong->m_apNotes[i]->m_NotesType == notesType &&
|
||||
pSong->m_apNotes[i]->m_sDescription == szNotesDescription ) // match!
|
||||
{
|
||||
pNotes = pSong->m_apNotes[i];
|
||||
break;
|
||||
@@ -345,7 +348,7 @@ void SongManager::SaveStatisticsToDisk()
|
||||
|
||||
// Each value has the format "SongName::NotesName=TimesPlayed::TopGrade::TopScore::MaxCombo".
|
||||
|
||||
CString sName = ssprintf( "%s::%s", pSong->m_sSongDir, pNotes->m_sDescription );
|
||||
CString sName = ssprintf( "%s::%s::%s", pSong->m_sSongDir, GameManager::NotesTypeToString(pNotes->m_NotesType), pNotes->m_sDescription );
|
||||
CString sValue = ssprintf(
|
||||
"%d::%s::%d::%d",
|
||||
pNotes->m_iNumTimesPlayed,
|
||||
@@ -425,6 +428,15 @@ CString SongManager::ShortenGroupName( const CString &sOrigGroupName )
|
||||
sShortName.Replace( "Pump It Up", "PIU" );
|
||||
sShortName.Replace( "pump it up", "PIU" );
|
||||
sShortName.Replace( "PUMP IT UP", "PIU" );
|
||||
sShortName.Replace( "ParaParaParadise", "PPP" );
|
||||
sShortName.Replace( "paraparaparadise", "PPP" );
|
||||
sShortName.Replace( "PARAPARAPARADUSE", "PPP" );
|
||||
sShortName.Replace( "Para Para Paradise", "PPP" );
|
||||
sShortName.Replace( "para para paradise", "PPP" );
|
||||
sShortName.Replace( "PARA PARA PARADUSE", "PPP" );
|
||||
sShortName.Replace( "Dancing Stage", "DS" );
|
||||
sShortName.Replace( "Dancing Stage", "DS" );
|
||||
sShortName.Replace( "Dancing Stage", "DS" );
|
||||
return sShortName;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user