Some songs have different time signature tags in different difficulties;

cope with it by adjusting everything according to the primary version.

Attempt to detect when time signature tags are being used to tweak sync,
and convert them to BPM changes.  This is more accurate, prevents some
cases of being off by a couple rows from the beat, and fixes note coloring.
This commit is contained in:
Glenn Maynard
2004-11-08 22:27:34 +00:00
parent 422b1defb7
commit 425299cbd4
2 changed files with 92 additions and 5 deletions
+4 -2
View File
@@ -20,8 +20,10 @@ class BMSLoader: public NotesLoader
typedef map<int, float> MeasureToTimeSig_t;
void ReadTimeSigs( const NameToData_t &mapNameToData, MeasureToTimeSig_t &out );
static float GetBeatsPerMeasure( const MeasureToTimeSig_t &sigs, int iMeasure );
static int GetMeasureStartRow( const MeasureToTimeSig_t &sigs, int iMeasureNo );
float GetBeatsPerMeasure( const MeasureToTimeSig_t &sigs, int iMeasure );
int GetMeasureStartRow( const MeasureToTimeSig_t &sigs, int iMeasureNo );
void SetTimeSigAdjustments( const MeasureToTimeSig_t &sigs, Song *pOut );
MeasureToTimeSig_t m_TimeSigAdjustments;
CString m_sDir;
map<CString,int> m_mapWavIdToKeysoundIndex;