improved Wide - prevents some nearly-impossible patterns
This commit is contained in:
@@ -280,7 +280,7 @@ void Background::LoadFromSong( Song* pSong )
|
||||
{
|
||||
const BPMSegment& bpmseg = pSong->m_BPMSegments[i];
|
||||
|
||||
if( fmodf(bpmseg.m_fStartBeat, BEATS_PER_MEASURE) != 0 )
|
||||
if( fmodf(bpmseg.m_fStartBeat, (float)BEATS_PER_MEASURE) != 0 )
|
||||
continue; // skip
|
||||
|
||||
if( bpmseg.m_fStartBeat < fFirstBeat || bpmseg.m_fStartBeat > fLastBeat )
|
||||
|
||||
@@ -1017,10 +1017,22 @@ void NoteDataUtil::Wide( NoteData &in )
|
||||
for( int i=0; i<=max_row; i+=ROWS_PER_BEAT )
|
||||
{
|
||||
if( in.GetNumTapNonEmptyTracks(i) != 1 )
|
||||
continue; // skip
|
||||
continue; // skip. Don't place during holds
|
||||
|
||||
if( in.GetNumTracksWithTap(i) != 1 )
|
||||
continue; // skip
|
||||
|
||||
bool bSpaceAroundIsEmpty = true; // no other notes with a 1/8th of this row
|
||||
for( int j=i-ROWS_PER_BEAT/2+1; j<i+ROWS_PER_BEAT/2-1; j++ )
|
||||
if( j!=i && in.GetNumTapNonEmptyTracks(j) > 0 )
|
||||
{
|
||||
bSpaceAroundIsEmpty = false;
|
||||
break;
|
||||
}
|
||||
|
||||
if( !bSpaceAroundIsEmpty )
|
||||
continue; // skip
|
||||
|
||||
// add a note determinitsitcally
|
||||
int iBeat = (int)roundf( NoteRowToBeat(i) );
|
||||
int iTrackOfNote = in.GetFirstTrackWithTap(i);
|
||||
|
||||
@@ -1521,8 +1521,6 @@ void ScreenEdit::HandleEditSongInfoChoice( EditSongInfoChoice c, int* iAnswers )
|
||||
|
||||
void ScreenEdit::HandleBGChangeChoice( BGChangeChoice c, int* iAnswers )
|
||||
{
|
||||
Song* pSong = GAMESTATE->m_pCurSong;
|
||||
|
||||
CString sBGName;
|
||||
|
||||
switch( c )
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
!define PRODUCT_NAME_VER "${PRODUCT_NAME} ${VERSION}"
|
||||
|
||||
Name "${PRODUCT_NAME}"
|
||||
OutFile "StepMania-CVS-20030306.exe"
|
||||
OutFile "StepMania-CVS-20030315.exe"
|
||||
;OutFile "StepMania301.exe"
|
||||
|
||||
; Some default compiler settings (uncomment and change at will):
|
||||
|
||||
Reference in New Issue
Block a user