diff --git a/stepmania/src/SongManager.cpp b/stepmania/src/SongManager.cpp index 2f3331947d..cc09103136 100644 --- a/stepmania/src/SongManager.cpp +++ b/stepmania/src/SongManager.cpp @@ -1344,6 +1344,9 @@ void SongManager::UpdateBest() { m_pBestSongs[i] = m_pSongs; SortSongPointerArrayByMostPlayed( m_pBestSongs[i], (MemoryCard) i ); + + m_pBestCourses[i] = m_pCourses; + SortCoursePointerArrayByMostPlayed( m_pBestCourses[i], (MemoryCard) i ); } } diff --git a/stepmania/src/SongManager.h b/stepmania/src/SongManager.h index bd13f67747..4c2d33141e 100644 --- a/stepmania/src/SongManager.h +++ b/stepmania/src/SongManager.h @@ -60,6 +60,7 @@ public: // Lookup const vector &GetAllSongs() const { return m_pSongs; } const vector &GetBestSongs( MemoryCard card=MEMORY_CARD_MACHINE ) const { return m_pBestSongs[MEMORY_CARD_MACHINE]; } + const vector &GetBestCourses( MemoryCard card=MEMORY_CARD_MACHINE ) const { return m_pBestCourses[MEMORY_CARD_MACHINE]; } void GetSongs( vector &AddTo, CString sGroupName, int iMaxStages = 100000 /*inf*/ ) const; void GetSongs( vector &AddTo, int iMaxStages ) const { GetSongs(AddTo,"",iMaxStages); } void GetSongs( vector &AddTo ) const { GetSongs(AddTo,"",100000 /*inf*/ ); } @@ -148,7 +149,8 @@ protected: vector m_pBestSongs[NUM_MEMORY_CARDS]; CStringArray m_sGroupNames; CStringArray m_sGroupBannerPaths; // each song group may have a banner associated with it - vector m_pCourses; + vector m_pCourses; + vector m_pBestCourses[NUM_MEMORY_CARDS]; };