[CourseUtil] make the "All Songs" course use the current theme's Graphics/Banner all music file.

This commit is contained in:
AJ Kelly
2010-06-30 00:00:34 -05:00
parent dc741c2acf
commit 4eda22a57b
2 changed files with 18 additions and 7 deletions
+8
View File
@@ -9,6 +9,11 @@ Not all changes are documented, for various reasons.
supported but exist anyways.) supported but exist anyways.)
_____________________________________________________________________________ _____________________________________________________________________________
================================================================================
sm-ssc v1.0 Release Candidate 2 | 201007xx
--------------------------------------------------------------------------------
(work in progress, it's not out yet [hence the "xx" above].)
20100629 20100629
-------- --------
* Fix an issue involving setting a group via GameCommand and a metric ([MusicWheel] * Fix an issue involving setting a group via GameCommand and a metric ([MusicWheel]
@@ -18,10 +23,13 @@ _____________________________________________________________________________
* If [MusicWheel] UseSectionsWithPreferredGroup=true and a song group is set * If [MusicWheel] UseSectionsWithPreferredGroup=true and a song group is set
via GameCommand, the wheel will now scroll to the first song in the desired via GameCommand, the wheel will now scroll to the first song in the desired
group, instead of the very first wheel item. group, instead of the very first wheel item.
* [CourseUtil] make the "All Songs" course use the current theme's
Graphics/Banner all music file.
================================================================================ ================================================================================
sm-ssc v1.0 Release Candidate 1 | 20100627 sm-ssc v1.0 Release Candidate 1 | 20100627
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
20100627 20100627
-------- --------
* [NotesLoaderKSF] Support reading of #PLAYER and #MUSICINTRO/#INTRO tags in * [NotesLoaderKSF] Support reading of #PLAYER and #MUSICINTRO/#INTRO tags in
+10 -7
View File
@@ -239,7 +239,8 @@ void CourseUtil::AutogenEndlessFromGroup( const RString &sGroupName, Difficulty
if( sGroupName == "" ) if( sGroupName == "" )
{ {
out.m_sMainTitle = "All Songs"; out.m_sMainTitle = "All Songs";
// m_sBannerPath = ""; // XXX // this sounds reasonable... -aj
out.m_sBannerPath = THEME->GetPathG("Banner","all music");
} }
else else
{ {
@@ -288,23 +289,25 @@ void CourseUtil::AutogenOniFromArtist( const RString &sArtistName, RString sArti
ASSERT( sArtistName != "" ); ASSERT( sArtistName != "" );
ASSERT( aSongs.size() > 0 ); ASSERT( aSongs.size() > 0 );
/* "Artist Oni" is a little repetitive; "by Artist" stands out less, and lowercasing /* "Artist Oni" is a little repetitive; "by Artist" stands out less, and
* "by" puts more emphasis on the artist's name. It also sorts them together. */ * lowercasing "by" puts more emphasis on the artist's name. It also sorts
* them together. */
out.m_sMainTitle = "by " + sArtistName; out.m_sMainTitle = "by " + sArtistName;
if( sArtistNameTranslit != sArtistName ) if( sArtistNameTranslit != sArtistName )
out.m_sMainTitleTranslit = "by " + sArtistNameTranslit; out.m_sMainTitleTranslit = "by " + sArtistNameTranslit;
// How would we handle Artist Oni course banners, anyways? -aj
// m_sBannerPath = ""; // XXX // m_sBannerPath = ""; // XXX
/* Shuffle the list to determine which songs we'll use. Shuffle it deterministically, /* Shuffle the list to determine which songs we'll use. Shuffle it
* so we always get the same set of songs unless the song set changes. */ * deterministically, so we always get the same set of songs unless the
* song set changes. */
{ {
RandomGen rng( GetHashForString( sArtistName ) + aSongs.size() ); RandomGen rng( GetHashForString( sArtistName ) + aSongs.size() );
random_shuffle( aSongs.begin(), aSongs.end(), rng ); random_shuffle( aSongs.begin(), aSongs.end(), rng );
} }
/* Only use up to four songs. */ // Only use up to four songs.
if( aSongs.size() > 4 ) if( aSongs.size() > 4 )
aSongs.erase( aSongs.begin()+4, aSongs.end() ); aSongs.erase( aSongs.begin()+4, aSongs.end() );