add Banners for various SortOrders. (Group and Recent not included for various reasons)

This commit is contained in:
AJ Kelly
2010-12-23 22:31:52 -06:00
parent 5ed4916e1c
commit 036b23e9d3
21 changed files with 91 additions and 26 deletions
+5
View File
@@ -13,6 +13,11 @@ _____________________________________________________________________________
sm-ssc v1.2 | 201012xx sm-ssc v1.2 | 201012xx
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
20101223
--------
* Added Banners for most SortOrders. (Group is excluded (song group banners
still work), as is Recent (which has no sections).) [freem]
20101222 20101222
-------- --------
* Added Shift+Ctrl+F2 shortcut for reloading overlay screens (and metrics) [freem] * Added Shift+Ctrl+F2 shortcut for reloading overlay screens (and metrics) [freem]
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
@@ -0,0 +1 @@
Common fallback banner
+25
View File
@@ -220,6 +220,20 @@ void Banner::LoadRandom()
m_bScrolling = (bool)SCROLL_ROULETTE; m_bScrolling = (bool)SCROLL_ROULETTE;
} }
void Banner::LoadFromSortOrder( SortOrder so )
{
if( so == NULL || so == SortOrder_Invalid )
{
LoadFallback();
}
else
{
if( so != SORT_GROUP && so != SORT_RECENT )
Load( THEME->GetPathG("Banner",ssprintf("%s",SortOrderToString(so).c_str())) );
}
m_bScrolling = false;
}
// lua start // lua start
#include "LuaBinding.h" #include "LuaBinding.h"
@@ -274,6 +288,16 @@ public:
p->LoadFromSongGroup( SArg(1) ); p->LoadFromSongGroup( SArg(1) );
return 0; return 0;
} }
static int LoadFromSortOrder( T* p, lua_State *L )
{
if( lua_isnil(L,1) ) { p->LoadFromSortOrder( SortOrder_Invalid ); }
else
{
SortOrder so = Enum::Check<SortOrder>(L, 1);
p->LoadFromSortOrder( so );
}
return 0;
}
LunaBanner() LunaBanner()
{ {
@@ -287,6 +311,7 @@ public:
ADD_METHOD( LoadBannerFromUnlockEntry ); ADD_METHOD( LoadBannerFromUnlockEntry );
ADD_METHOD( LoadBackgroundFromUnlockEntry ); ADD_METHOD( LoadBackgroundFromUnlockEntry );
ADD_METHOD( LoadFromSongGroup ); ADD_METHOD( LoadFromSongGroup );
ADD_METHOD( LoadFromSortOrder );
} }
}; };
+2
View File
@@ -5,6 +5,7 @@
#include "Sprite.h" #include "Sprite.h"
#include "RageTextureID.h" #include "RageTextureID.h"
#include "GameConstantsAndTypes.h"
class Song; class Song;
class Course; class Course;
class Character; class Character;
@@ -34,6 +35,7 @@ public:
void LoadBackgroundFromUnlockEntry( const UnlockEntry* pUE ); void LoadBackgroundFromUnlockEntry( const UnlockEntry* pUE );
void LoadRoulette(); void LoadRoulette();
void LoadRandom(); void LoadRandom();
void LoadFromSortOrder( SortOrder so );
void LoadFallback(); void LoadFallback();
void LoadFallbackBG(); void LoadFallbackBG();
void LoadCourseFallback(); void LoadCourseFallback();
+6
View File
@@ -240,6 +240,12 @@ void FadingBanner::LoadRandom()
m_Banner[m_iIndexLatest].LoadRandom(); m_Banner[m_iIndexLatest].LoadRandom();
} }
void FadingBanner::LoadFromSortOrder( SortOrder so )
{
BeforeChange();
m_Banner[m_iIndexLatest].LoadFromSortOrder(so);
}
void FadingBanner::LoadFallback() void FadingBanner::LoadFallback()
{ {
BeforeChange(); BeforeChange();
+1
View File
@@ -27,6 +27,7 @@ public:
void LoadBannerFromUnlockEntry( const UnlockEntry* pUE ); void LoadBannerFromUnlockEntry( const UnlockEntry* pUE );
void LoadRoulette(); void LoadRoulette();
void LoadRandom(); void LoadRandom();
void LoadFromSortOrder( SortOrder so );
void LoadFallback(); void LoadFallback();
void LoadCourseFallback(); void LoadCourseFallback();
-1
View File
@@ -105,7 +105,6 @@ const RString& PlayModeToLocalizedString( PlayMode pm );
PlayMode StringToPlayMode( const RString& s ); PlayMode StringToPlayMode( const RString& s );
LuaDeclareType( PlayMode ); LuaDeclareType( PlayMode );
// ziup2 has SortOrder_PinnedMeter (¿qef?)
enum SortOrder enum SortOrder
{ {
// song sorts // song sorts
+13
View File
@@ -1692,9 +1692,22 @@ void ScreenSelectMusic::AfterMusicChange()
switch( m_MusicWheel.GetSelectedType() ) switch( m_MusicWheel.GetSelectedType() )
{ {
case TYPE_SECTION: case TYPE_SECTION:
// reduce scope
{
SortOrder curSort = GAMESTATE->m_SortOrder;
if( curSort == SORT_GROUP)
{
g_sBannerPath = SONGMAN->GetSongGroupBannerPath( m_MusicWheel.GetSelectedSection() ); g_sBannerPath = SONGMAN->GetSongGroupBannerPath( m_MusicWheel.GetSelectedSection() );
}
else
{
bWantBanner = false; // we load it ourself
m_Banner.LoadFromSortOrder(curSort);
}
if( SAMPLE_MUSIC_PREVIEW_MODE != SampleMusicPreviewMode_LastSong ) if( SAMPLE_MUSIC_PREVIEW_MODE != SampleMusicPreviewMode_LastSong )
m_sSampleMusicToPlay = m_sSectionMusicPath; m_sSampleMusicToPlay = m_sSectionMusicPath;
}
break; break;
case TYPE_SORT: case TYPE_SORT:
bWantBanner = false; // we load it ourself bWantBanner = false; // we load it ourself