Cleanup of theme element names

Renamed ScreenSelectMax* back to their old names
Replaced all hard-coded transitions with TransitionBGAnimations
This commit is contained in:
Chris Danford
2003-03-09 00:55:49 +00:00
parent 86b0b1e7d7
commit 31aa613295
207 changed files with 1529 additions and 2246 deletions
+26 -14
View File
@@ -54,8 +54,8 @@ ScreenManager::ScreenManager()
m_textSystemMessage.SetHorizAlign( Actor::align_left );
m_textSystemMessage.SetVertAlign( Actor::align_top );
m_textSystemMessage.SetXY( 4.0f, 4.0f );
m_textSystemMessage.SetZoom( 0.7f );
// m_textSystemMessage.SetShadowLength( 2 );
m_textSystemMessage.SetZoom( 0.8f );
m_textSystemMessage.SetShadowLength( 2 );
m_textSystemMessage.SetDiffuse( RageColor(1,1,1,0) );
m_textSysTime.LoadFromFont( THEME->GetPathTo("Fonts","normal") );
@@ -74,7 +74,7 @@ ScreenManager::~ScreenManager()
EmptyDeleteQueue();
// delete current states
// delete current Screens
for( unsigned i=0; i<m_ScreenStack.size(); i++ )
SAFE_DELETE( m_ScreenStack[i] );
SAFE_DELETE( m_ScreenBuffered );
@@ -114,6 +114,7 @@ void ScreenManager::Update( float fDeltaTime )
*
* So, let's just drop the first update for every screen.
*/
ASSERT( !m_ScreenStack.empty() ); // Why play the game if there is nothing showing?
Screen* pScreen = m_ScreenStack[m_ScreenStack.size()-1];
if( pScreen->IsFirstUpdate() )
pScreen->Update( 0 );
@@ -143,9 +144,7 @@ void ScreenManager::Draw()
for( unsigned i=0; i<m_ScreenStack.size(); i++ ) // Draw all screens bottom to top
m_ScreenStack[i]->Draw();
if( m_textSystemMessage.GetDiffuse().a != 0 )
m_textSystemMessage.Draw();
m_textSystemMessage.Draw();
if( PREFSMAN && PREFSMAN->m_bShowStats )
{
@@ -227,12 +226,23 @@ void ScreenManager::SetNewScreen( CString sClassName )
RageTimer t;
Screen* pOldTopScreen = m_ScreenStack.empty() ? NULL : m_ScreenStack.back();
// It makes sense that ScreenManager should allocate memory for a new screen since it
// deletes it later on. This also convention will reduce includes because screens won't
// have to include each other's headers of other screens.
Screen* pNewScreen = MakeNewScreen(sClassName);
LOG->Trace( "Loaded %s in %f", sClassName.GetString(), t.GetDeltaTime());
if( pOldTopScreen!=NULL && m_ScreenStack.back()!=pOldTopScreen )
{
// While constructing this Screen, it's constructor called
// SetNewScreen again! That SetNewScreen Command should
// override this older one.
SAFE_DELETE( pNewScreen );
return;
}
SetNewScreen( pNewScreen );
/* If this is a system menu, don't let the operator key touch it!
@@ -242,8 +252,10 @@ void ScreenManager::SetNewScreen( CString sClassName )
sClassName == "ScreenGraphicOptions" || sClassName == "ScreenGameplayOptions" ||
sClassName == "ScreenMapControllers" || sClassName == "ScreenPlayerOptions" ||
sClassName == "ScreenAppearanceOptions" || sClassName == "ScreenEdit" ||
sClassName == "ScreenEditMenu" || sClassName == "ScreenSoundOptions") GAMESTATE->m_bIsOnSystemMenu = true;
else GAMESTATE->m_bIsOnSystemMenu = false;
sClassName == "ScreenEditMenu" || sClassName == "ScreenSoundOptions")
GAMESTATE->m_bIsOnSystemMenu = true;
else
GAMESTATE->m_bIsOnSystemMenu = false;
}
void ScreenManager::AddNewScreenToTop( CString sClassName )
@@ -294,15 +306,15 @@ void ScreenManager::SendMessageToTopScreen( ScreenMessage SM, float fDelay )
void ScreenManager::SystemMessage( CString sMessage )
{
// Look for an open spot
m_textSystemMessage.StopTweening();
m_textSystemMessage.SetText( sMessage );
m_textSystemMessage.SetDiffuse( RageColor(1,1,1,1) );
m_textSystemMessage.SetX( -640 );
m_textSystemMessage.BeginTweening( 0.3f );
m_textSystemMessage.SetX( 4 );
m_textSystemMessage.BeginTweening( 5 );
m_textSystemMessage.BeginTweening( 1 );
m_textSystemMessage.BeginTweening( 0.3f );
m_textSystemMessage.SetTweenDiffuse( RageColor(1,1,1,0) );
LOG->Trace( "WARNING: Didn't find an empty system messages slot." );
}
void ScreenManager::RefreshCreditsMessages()
@@ -329,9 +341,9 @@ void ScreenManager::RefreshCreditsMessages()
case PrefsManager::COIN_PAY:
{
int Coins = GAMESTATE->m_iCoins % PREFSMAN->m_iCoinsPerCredit;
CString txt = ssprintf("CREDIT(S) %d ", GAMESTATE->m_iCoins / PREFSMAN->m_iCoinsPerCredit);
CString txt = ssprintf("CREDIT(S) %d", GAMESTATE->m_iCoins / PREFSMAN->m_iCoinsPerCredit);
if (Coins)
txt += ssprintf(" (%d / %d)", Coins, PREFSMAN->m_iCoinsPerCredit );
txt += ssprintf(" %d/%d", Coins, PREFSMAN->m_iCoinsPerCredit );
m_textCreditInfo[p].SetText(txt);
}
break;