add sort and mode banners, metric for random and roulette scrolling

This commit is contained in:
Chris Danford
2004-04-13 09:46:04 +00:00
parent d61e2b0f40
commit 8ecc6183f0
5 changed files with 52 additions and 8 deletions
+26 -7
View File
@@ -20,16 +20,23 @@
#include "Course.h"
#include "Character.h"
CachedThemeMetricB SCROLL_RANDOM ("Banner","ScrollRandom");
CachedThemeMetricB SCROLL_ROULETTE ("Banner","ScrollRoulette");
Banner::Banner()
{
SCROLL_RANDOM.Refresh();
SCROLL_ROULETTE.Refresh();
m_bScrolling = false;
m_fPercentScrolling = 0;
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathToG("Banner all music")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathToG("Common fallback banner")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathToG("Banner roulette")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathToG("Banner random")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Banner","all music")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Common","fallback banner")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Banner","roulette")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Banner","random")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Banner","Sort")) );
TEXTUREMAN->CacheTexture( SongBannerTexture(THEME->GetPathG("Banner","Mode")) );
}
bool Banner::Load( RageTextureID ID )
@@ -89,7 +96,19 @@ void Banner::LoadFromSong( Song* pSong ) // NULL means no song
void Banner::LoadAllMusic()
{
Load( THEME->GetPathToG("Banner all") );
Load( THEME->GetPathG("Banner","All") );
m_bScrolling = false;
}
void Banner::LoadSort()
{
Load( THEME->GetPathG("Banner","Sort") );
m_bScrolling = false;
}
void Banner::LoadMode()
{
Load( THEME->GetPathG("Banner","Mode") );
m_bScrolling = false;
}
@@ -149,11 +168,11 @@ void Banner::LoadFallback()
void Banner::LoadRoulette()
{
Load( THEME->GetPathToG("Banner roulette") );
m_bScrolling = true;
m_bScrolling = (bool)SCROLL_RANDOM;
}
void Banner::LoadRandom()
{
Load( THEME->GetPathToG("Banner random") );
m_bScrolling = true;
m_bScrolling = (bool)SCROLL_ROULETTE;
}
+2
View File
@@ -29,6 +29,8 @@ public:
void LoadFromSong( Song* pSong ); // NULL means no song
void LoadAllMusic();
void LoadSort();
void LoadMode();
void LoadFromGroup( CString sGroupName );
void LoadFromCourse( Course* pCourse );
void LoadCardFromCharacter( Character* pCharacter );
+12
View File
@@ -161,6 +161,18 @@ void FadingBanner::LoadAllMusic()
m_Banner[GetBackIndex()].LoadAllMusic();
}
void FadingBanner::LoadSort()
{
BeforeChange();
m_Banner[GetBackIndex()].LoadSort();
}
void FadingBanner::LoadMode()
{
BeforeChange();
m_Banner[GetBackIndex()].LoadMode();
}
void FadingBanner::LoadFromGroup( CString sGroupName )
{
const CString sGroupBannerPath = SONGMAN->GetGroupBannerPath( sGroupName );
+2
View File
@@ -25,6 +25,8 @@ public:
void LoadFromSong( Song* pSong ); // NULL means no song
void LoadAllMusic();
void LoadSort();
void LoadMode();
void LoadFromGroup( CString sGroupName );
void LoadFromCourse( Course* pCourse );
void LoadRoulette();
+10 -1
View File
@@ -1285,7 +1285,6 @@ void ScreenSelectMusic::AfterMusicChange()
for( int p=0; p<NUM_PLAYERS; p++ )
m_iSelection[p] = -1;
m_Banner.LoadFromGroup( sGroup ); // if this isn't a group, it'll default to the fallback banner
m_BPMDisplay.NoBPM();
m_sprCDTitleFront.UnloadTexture();
m_sprCDTitleBack.UnloadTexture();
@@ -1296,9 +1295,19 @@ void ScreenSelectMusic::AfterMusicChange()
switch( m_MusicWheel.GetSelectedType() )
{
case TYPE_SECTION:
m_Banner.LoadFromGroup( sGroup ); // if this isn't a group, it'll default to the fallback banner
SampleMusicToPlay = THEME->GetPathToS("ScreenSelectMusic section music");
break;
case TYPE_SORT:
switch( GAMESTATE->m_SortOrder )
{
case SORT_SORT_MENU:
m_Banner.LoadSort();
break;
case SORT_MODE_MENU:
m_Banner.LoadMode();
break;
}
SampleMusicToPlay = THEME->GetPathToS("ScreenSelectMusic sort music");
break;
default: