Fixed LifeMeterBar artifacts in MAX2 and EZ2. Fixed handling of "ez2-single-hard" NotesType.

This commit is contained in:
Chris Danford
2002-09-29 18:56:54 +00:00
parent 743db5bd82
commit 23971b9c42
3 changed files with 12 additions and 7 deletions
+5
View File
@@ -1333,6 +1333,11 @@ int GameManager::NotesTypeToNumTracks( NotesType nt )
NotesType GameManager::StringToNotesType( CString sNotesType )
{
sNotesType.MakeLower();
// HACK! We elminitated "ez2-single-hard", but we should still handle it.
if( sNotesType == "ez2-single-hard" )
sNotesType = "ez2-single";
for( int i=0; i<NUM_NOTES_TYPES; i++ )
if( NotesTypes[i].name == sNotesType )
return NotesType(i);
+4 -4
View File
@@ -112,19 +112,18 @@ public:
if( GAMESTATE->IsPlayerEnabled(m_PlayerNumber) )
{
DrawMask( m_fPercent );
DrawMask( m_fPercent ); // this is the "right endcap" to the life
const float fChamberWidthInPercent = 1.0f/g_iNumChambers;
float fPercentBetweenStrips = 1.0f/g_iNumStrips;
// round this so that the chamber overflows align
if( g_iNumChambers > 10 )
fPercentBetweenStrips = froundf( fPercentBetweenStrips, fChamberWidthInPercent );
float fPercentOffset = fmodf( GAMESTATE->m_fSongBeat/4+1000, fPercentBetweenStrips );
ASSERT( fPercentOffset >= 0 && fPercentOffset <= fPercentBetweenStrips );
for( float f=fPercentOffset+1; f>=fPercentOffset; f-=fPercentBetweenStrips )
for( float f=fPercentOffset+1; f>=0; f-=fPercentBetweenStrips )
{
DrawMask( f );
DrawStrip( f );
@@ -219,6 +218,7 @@ public:
m_quadMask.StretchTo( &rect );
m_quadMask.Draw();
}
};
+3 -3
View File
@@ -83,10 +83,10 @@ void NoteData::LoadFromSMNoteDataString( CString sSMNoteData )
const float fBeat = (m + fPercentIntoMeasure) * BEATS_PER_MEASURE;
const int iIndex = BeatToNoteRow( fBeat );
if( m_iNumTracks != sMeasureLine.GetLength() )
throw RageException( "Actual number of note columns (%d) is different from the NotesType (%d).", m_iNumTracks, sMeasureLine.GetLength() );
// if( m_iNumTracks != sMeasureLine.GetLength() )
// throw RageException( "Actual number of note columns (%d) is different from the NotesType (%d).", m_iNumTracks, sMeasureLine.GetLength() );
for( int c=0; c<sMeasureLine.GetLength(); c++ )
for( int c=0; c<min(sMeasureLine.GetLength(),m_iNumTracks); c++ )
m_TapNotes[c][iIndex] = sMeasureLine[c];
}
}