add NumStepsLoadedFromProfile display
This commit is contained in:
@@ -13,6 +13,7 @@ ScreenWidth=640
|
||||
ScreenHeight=480
|
||||
OverlayScreens=ScreenSystemLayer
|
||||
HomeEditMode=0
|
||||
MaxStepsLoadedFromProfile=-1
|
||||
|
||||
[ModeSwitcher]
|
||||
PrevModeX=-200
|
||||
@@ -2190,6 +2191,9 @@ Class=ScreenEditMenu
|
||||
ExplanationX=SCREEN_CENTER_X
|
||||
ExplanationY=SCREEN_BOTTOM-70
|
||||
ExplanationOnCommand=wrapwidthpixels,900;zoom,0.7
|
||||
NumStepsLoadedFromProfileX=SCREEN_RIGHT-180
|
||||
NumStepsLoadedFromProfileY=SCREEN_TOP+42
|
||||
NumStepsLoadedFromProfileOnCommand=zoom,0.7
|
||||
StyleIcon=0
|
||||
MemoryCardIcons=1
|
||||
TimerSeconds=0
|
||||
|
||||
@@ -5,16 +5,17 @@
|
||||
|
||||
CString PLAYER_COLOR_NAME( size_t p ) { return ssprintf("ColorP%d",p+1); }
|
||||
|
||||
ThemeMetric<CString> DIFFICULTIES_TO_SHOW ("Common","DifficultiesToShow");
|
||||
ThemeMetric<CString> INITIAL_SCREEN ("Common","InitialScreen");
|
||||
ThemeMetric<CString> FIRST_RUN_INITIAL_SCREEN ("Common","FirstRunInitialScreen");
|
||||
ThemeMetric<CString> DEFAULT_MODIFIERS ("Common","DefaultModifiers" );
|
||||
ThemeMetric<CString> DEFAULT_CPU_MODIFIERS ("Common","DefaultCpuModifiers" );
|
||||
ThemeMetric<CString> COURSE_DIFFICULTIES_TO_SHOW ("Common","CourseDifficultiesToShow");
|
||||
ThemeMetric1D<RageColor> PLAYER_COLOR ("Common",PLAYER_COLOR_NAME,NUM_PLAYERS);
|
||||
ThemeMetric<float> JOIN_PAUSE_SECONDS ("Common","JoinPauseSeconds");
|
||||
ThemeMetric<CString> WINDOW_TITLE ("Common","WindowTitle");
|
||||
ThemeMetric<bool> HOME_EDIT_MODE ("Common","HomeEditMode");
|
||||
ThemeMetric<CString> DIFFICULTIES_TO_SHOW ("Common","DifficultiesToShow");
|
||||
ThemeMetric<CString> INITIAL_SCREEN ("Common","InitialScreen");
|
||||
ThemeMetric<CString> FIRST_RUN_INITIAL_SCREEN ("Common","FirstRunInitialScreen");
|
||||
ThemeMetric<CString> DEFAULT_MODIFIERS ("Common","DefaultModifiers" );
|
||||
ThemeMetric<CString> DEFAULT_CPU_MODIFIERS ("Common","DefaultCpuModifiers" );
|
||||
ThemeMetric<CString> COURSE_DIFFICULTIES_TO_SHOW ("Common","CourseDifficultiesToShow");
|
||||
ThemeMetric1D<RageColor> PLAYER_COLOR ("Common",PLAYER_COLOR_NAME,NUM_PLAYERS);
|
||||
ThemeMetric<float> JOIN_PAUSE_SECONDS ("Common","JoinPauseSeconds");
|
||||
ThemeMetric<CString> WINDOW_TITLE ("Common","WindowTitle");
|
||||
ThemeMetric<bool> HOME_EDIT_MODE ("Common","HomeEditMode");
|
||||
ThemeMetric<int> MAX_STEPS_LOADED_FROM_PROFILE ("Common","MaxStepsLoadedFromProfile");
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -16,6 +16,8 @@ extern ThemeMetric1D<RageColor> PLAYER_COLOR;
|
||||
extern ThemeMetric<float> JOIN_PAUSE_SECONDS;
|
||||
extern ThemeMetric<CString> WINDOW_TITLE;
|
||||
extern ThemeMetric<bool> HOME_EDIT_MODE;
|
||||
extern ThemeMetric<int> MAX_STEPS_LOADED_FROM_PROFILE;
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -12,10 +12,10 @@
|
||||
#include "ThemeManager.h"
|
||||
#include "Steps.h"
|
||||
#include "song.h"
|
||||
#include "CommonMetrics.h"
|
||||
|
||||
#define PREV_SCREEN THEME->GetMetric(m_sName,"PrevScreen")
|
||||
#define EXPLANATION_TEXT( row ) THEME->GetMetric(m_sName,"Explanation"+EditMenuRowToString(row))
|
||||
#define HELP_TEXT THEME->GetMetric(m_sName,"HelpText")
|
||||
|
||||
const ScreenMessage SM_RefreshSelector = (ScreenMessage)(SM_User+1);
|
||||
|
||||
@@ -44,6 +44,12 @@ void ScreenEditMenu::Init()
|
||||
RefreshExplanationText();
|
||||
this->AddChild( &m_textExplanation );
|
||||
|
||||
m_textNumStepsLoadedFromProfile.SetName( "NumStepsLoadedFromProfile" );
|
||||
m_textNumStepsLoadedFromProfile.LoadFromFont( THEME->GetPathF(m_sName,"NumStepsLoadedFromProfile") );
|
||||
SET_XY_AND_ON_COMMAND( m_textNumStepsLoadedFromProfile );
|
||||
RefreshNumStepsLoadedFromProfile();
|
||||
this->AddChild( &m_textNumStepsLoadedFromProfile );
|
||||
|
||||
this->SortByDrawOrder();
|
||||
|
||||
SOUND->PlayMusic( THEME->GetPathS(m_sName,"music") );
|
||||
@@ -249,6 +255,14 @@ void ScreenEditMenu::RefreshExplanationText()
|
||||
ON_COMMAND( m_textExplanation );
|
||||
}
|
||||
|
||||
void ScreenEditMenu::RefreshNumStepsLoadedFromProfile()
|
||||
{
|
||||
CString s = ssprintf( "edits loaded: %d", SONGMAN->GetNumStepsLoadedFromProfile() );
|
||||
int iMaxStepsLoadedFromProfile = MAX_STEPS_LOADED_FROM_PROFILE;
|
||||
if( iMaxStepsLoadedFromProfile != -1 )
|
||||
s += ssprintf( " / %d", iMaxStepsLoadedFromProfile );
|
||||
m_textNumStepsLoadedFromProfile.SetText( s );
|
||||
}
|
||||
|
||||
/*
|
||||
* (c) 2002-2004 Chris Danford
|
||||
|
||||
@@ -23,10 +23,12 @@ private:
|
||||
void MenuStart( PlayerNumber pn );
|
||||
|
||||
void RefreshExplanationText();
|
||||
void RefreshNumStepsLoadedFromProfile();
|
||||
|
||||
EditMenu m_Selector;
|
||||
|
||||
BitmapText m_textExplanation;
|
||||
BitmapText m_textNumStepsLoadedFromProfile;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -826,7 +826,7 @@ void Song::GetSteps(
|
||||
if( !iMaxToGet )
|
||||
return;
|
||||
|
||||
const vector<Steps*>& vpSteps = GetStepsByStepsType(st);
|
||||
const vector<Steps*> &vpSteps = st == STEPS_TYPE_INVALID ? GetAllSteps() : GetStepsByStepsType(st);
|
||||
for( unsigned i=0; i<vpSteps.size(); i++ ) // for each of the Song's Steps
|
||||
{
|
||||
Steps* pSteps = vpSteps[i];
|
||||
|
||||
@@ -1238,18 +1238,21 @@ void SongManager::FreeAllLoadedFromProfiles()
|
||||
StepsID::ClearCache();
|
||||
}
|
||||
|
||||
int SongManager::GetTotalNumberOfEdits()
|
||||
int SongManager::GetNumStepsLoadedFromProfile()
|
||||
{
|
||||
int iNumEdits = 0;
|
||||
for( unsigned s=0; s<m_pSongs.size(); s++ )
|
||||
int iCount = 0;
|
||||
FOREACH( Song*, m_pSongs, s )
|
||||
{
|
||||
Song* pSong = m_pSongs[s];
|
||||
vector<Steps*> vSteps;
|
||||
pSong->GetSteps( vSteps, STEPS_TYPE_INVALID, DIFFICULTY_INVALID );
|
||||
iNumEdits += vSteps.size();
|
||||
vector<Steps*> vpAllSteps = (*s)->GetAllSteps();
|
||||
|
||||
FOREACH( Steps*, vpAllSteps, ss )
|
||||
{
|
||||
if( (*ss)->GetLoadedFromProfile() != PROFILE_SLOT_INVALID )
|
||||
iCount++;
|
||||
}
|
||||
}
|
||||
|
||||
return iNumEdits;
|
||||
return iCount;
|
||||
}
|
||||
|
||||
|
||||
@@ -1277,7 +1280,6 @@ public:
|
||||
}
|
||||
static int FindSong( T* p, lua_State *L ) { Song *pS = p->FindSong(SArg(1)); if(pS) pS->PushSelf(L); else lua_pushnil(L); return 1; }
|
||||
static int FindCourse( T* p, lua_State *L ) { Course *pC = p->FindCourse(SArg(1)); if(pC) pC->PushSelf(L); else lua_pushnil(L); return 1; }
|
||||
static int GetTotalNumberOfEdits( T* p, lua_State *L ) { lua_pushnumber(L,p->GetTotalNumberOfEdits()); return 1; }
|
||||
|
||||
static void Register(lua_State *L)
|
||||
{
|
||||
@@ -1285,7 +1287,6 @@ public:
|
||||
ADD_METHOD( GetAllCourses )
|
||||
ADD_METHOD( FindSong )
|
||||
ADD_METHOD( FindCourse )
|
||||
ADD_METHOD( GetTotalNumberOfEdits )
|
||||
Luna<T>::Register( L );
|
||||
|
||||
// Add global singleton if constructed already. If it's not constructed yet,
|
||||
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
void SetPreferences();
|
||||
|
||||
void LoadAllFromProfile( ProfileSlot s ); // songs, edits
|
||||
int GetTotalNumberOfEdits();
|
||||
int GetNumStepsLoadedFromProfile();
|
||||
void FreeAllLoadedFromProfiles();
|
||||
|
||||
void LoadGroupSymLinks( CString sDir, CString sGroupFolder );
|
||||
|
||||
Reference in New Issue
Block a user