make draw order separate from Z value
add "PageType" graphic to ScreenEvaluation
This commit is contained in:
@@ -3545,6 +3545,10 @@ StepsTypeX=520
|
||||
StepsTypeY=60
|
||||
StepsTypeOnCommand=addx,640;sleep,0.0;bounceend,1;addx,-640
|
||||
StepsTypeOffCommand=sleep,0.0;linear,0.5;diffusealpha,0
|
||||
PageTypeX=520
|
||||
PageTypeY=60
|
||||
PageTypeOnCommand=addx,640;sleep,0.0;bounceend,1;addx,-640
|
||||
PageTypeOffCommand=sleep,0.0;linear,0.5;diffusealpha,0
|
||||
|
||||
BulletStartX=100
|
||||
BulletStartY=140
|
||||
|
||||
@@ -54,6 +54,7 @@ void Actor::Reset()
|
||||
m_fShadowLength = 0;
|
||||
m_bIsAnimating = true;
|
||||
m_fHibernateSecondsLeft = 0;
|
||||
m_iDrawOrder = 0;
|
||||
|
||||
m_bTextureWrapping = false;
|
||||
m_BlendMode = BLEND_NORMAL;
|
||||
@@ -735,6 +736,7 @@ void Actor::HandleCommand( const ParsedCommand &command )
|
||||
else if( sName=="cullmode" ) SetCullMode( sParam(1) );
|
||||
else if( sName=="hidden" ) SetHidden( bParam(1) );
|
||||
else if( sName=="hibernate" ) SetHibernate( fParam(1) );
|
||||
else if( sName=="draworder" ) SetDrawOrder( iParam(1) );
|
||||
else if( sName=="playcommand" ) PlayCommand( sParam(1) );
|
||||
else if( sName=="queuecommand" )
|
||||
{
|
||||
|
||||
@@ -15,6 +15,10 @@
|
||||
#include "ActorCommands.h" // for ParsedCommand
|
||||
#include <deque>
|
||||
|
||||
#define DRAW_ORDER_BEFORE_EVERYTHING -100
|
||||
#define DRAW_ORDER_TRANSITIONS 100
|
||||
#define DRAW_ORDER_AFTER_EVERYTHING 200
|
||||
|
||||
class Actor
|
||||
{
|
||||
public:
|
||||
@@ -278,6 +282,8 @@ public:
|
||||
void SetShadowLength( float fLength );
|
||||
// TODO: Implement hibernate as a tween type?
|
||||
void SetHibernate( float fSecs ) { m_fHibernateSecondsLeft = fSecs; }
|
||||
void SetDrawOrder( int iOrder ) { m_iDrawOrder = iOrder; }
|
||||
int GetDrawOrder() const { return m_iDrawOrder; }
|
||||
|
||||
virtual void EnableAnimation( bool b ) { m_bIsAnimating = b; } // Sprite needs to overload this
|
||||
void StartAnimating() { this->EnableAnimation(true); };
|
||||
@@ -376,6 +382,7 @@ protected:
|
||||
float m_fHibernateSecondsLeft;
|
||||
float m_fShadowLength; // 0 == no shadow
|
||||
bool m_bIsAnimating;
|
||||
int m_iDrawOrder;
|
||||
|
||||
//
|
||||
// render states
|
||||
|
||||
@@ -28,6 +28,13 @@ void ActorFrame::AddChild( Actor* pActor )
|
||||
m_SubActors.push_back( pActor );
|
||||
}
|
||||
|
||||
void ActorFrame::RemoveChild( Actor* pActor )
|
||||
{
|
||||
vector<Actor*>::iterator iter = find( m_SubActors.begin(), m_SubActors.end(), pActor );
|
||||
if( iter != m_SubActors.end() )
|
||||
m_SubActors.erase( iter );
|
||||
}
|
||||
|
||||
void ActorFrame::MoveToTail( Actor* pActor )
|
||||
{
|
||||
vector<Actor*>::iterator iter = find( m_SubActors.begin(), m_SubActors.end(), pActor );
|
||||
@@ -130,15 +137,15 @@ float ActorFrame::GetTweenTimeLeft() const
|
||||
|
||||
}
|
||||
|
||||
bool CompareActorsByZDesc(const Actor *p1, const Actor *p2)
|
||||
bool CompareActorsByDrawOrder(const Actor *p1, const Actor *p2)
|
||||
{
|
||||
return p1->GetZ() > p2->GetZ();
|
||||
return p1->GetDrawOrder() < p2->GetDrawOrder();
|
||||
}
|
||||
|
||||
void ActorFrame::SortByZ()
|
||||
void ActorFrame::SortByDrawOrder()
|
||||
{
|
||||
// Preserve ordering of Actors with equal Z values.
|
||||
stable_sort( m_SubActors.begin(), m_SubActors.end(), CompareActorsByZDesc );
|
||||
// Preserve ordering of Actors with equal DrawOrders.
|
||||
stable_sort( m_SubActors.begin(), m_SubActors.end(), CompareActorsByDrawOrder );
|
||||
}
|
||||
|
||||
void ActorFrame::DeleteAllChildren()
|
||||
|
||||
@@ -17,9 +17,10 @@ class ActorFrame : public Actor
|
||||
{
|
||||
public:
|
||||
virtual void AddChild( Actor* pActor );
|
||||
virtual void RemoveChild( Actor* pActor );
|
||||
virtual void MoveToTail( Actor* pActor );
|
||||
virtual void MoveToHead( Actor* pActor );
|
||||
virtual void SortByZ();
|
||||
virtual void SortByDrawOrder();
|
||||
|
||||
virtual ~ActorFrame() { }
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ void Foreground::LoadFromSong( const Song *pSong )
|
||||
|
||||
TEXTUREMAN->SetDefaultTexturePolicy( OldPolicy );
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void Foreground::Update( float fDeltaTime )
|
||||
|
||||
@@ -49,9 +49,11 @@ ScreenAttract::ScreenAttract( CString sName, bool bResetGameState ) : Screen( sN
|
||||
|
||||
m_In.Load( THEME->GetPathToB(m_sName+" in") );
|
||||
m_In.StartTransitioning();
|
||||
m_In.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_In );
|
||||
|
||||
m_Out.Load( THEME->GetPathToB(m_sName+" out") );
|
||||
m_Out.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_Out );
|
||||
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo(m_sName) );
|
||||
|
||||
@@ -268,7 +268,7 @@ void ScreenEvaluation::Init()
|
||||
// }
|
||||
|
||||
m_bgOverlay.LoadFromAniDir( THEME->GetPathB(m_sName, "overlay") );
|
||||
m_bgOverlay.SetZ( -1 ); /* draw on top of everything except transitions */
|
||||
m_bgOverlay.SetDrawOrder( 1 ); /* draw on top of everything except transitions */
|
||||
this->AddChild( &m_bgOverlay );
|
||||
|
||||
m_bPassFailTriggered = false; // the sound hasn't been triggered yet
|
||||
@@ -859,7 +859,7 @@ void ScreenEvaluation::Init()
|
||||
break;
|
||||
}
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
|
||||
|
||||
SOUND->PlayMusic( THEME->GetPathToS("ScreenEvaluation music") );
|
||||
|
||||
@@ -298,17 +298,17 @@ void ScreenGameplay::Init()
|
||||
|
||||
|
||||
|
||||
m_Background.SetZ( 2 ); // behind everything else
|
||||
m_Background.SetDrawOrder( DRAW_ORDER_BEFORE_EVERYTHING );
|
||||
this->AddChild( &m_Background );
|
||||
|
||||
m_Foreground.SetZ( -5 ); // on top of everything else, including transitions
|
||||
m_Foreground.SetDrawOrder( DRAW_ORDER_AFTER_EVERYTHING ); // on top of everything else, including transitions
|
||||
this->AddChild( &m_Foreground );
|
||||
|
||||
|
||||
m_sprStaticBackground.SetName( "StaticBG" );
|
||||
m_sprStaticBackground.Load( THEME->GetPathToG("ScreenGameplay Static Background"));
|
||||
SET_XY( m_sprStaticBackground );
|
||||
m_sprStaticBackground.SetZ( 2 ); // behind everything else
|
||||
m_sprStaticBackground.SetDrawOrder( DRAW_ORDER_BEFORE_EVERYTHING ); // behind everything else
|
||||
this->AddChild(&m_sprStaticBackground);
|
||||
|
||||
if( !m_bDemonstration ) // only load if we're going to use it
|
||||
@@ -344,13 +344,13 @@ void ScreenGameplay::Init()
|
||||
this->AddChild( &m_sprOniGameOver[p] );
|
||||
}
|
||||
|
||||
m_NextSongIn.SetZ( -2 ); // on top of everything else
|
||||
m_NextSongIn.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 );
|
||||
this->AddChild( &m_NextSongIn );
|
||||
|
||||
m_NextSongOut.SetZ( -2 ); // on top of everything else
|
||||
m_NextSongOut.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 );
|
||||
this->AddChild( &m_NextSongOut );
|
||||
|
||||
m_SongFinished.SetZ( -2 ); // on top of everything else
|
||||
m_SongFinished.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 );
|
||||
this->AddChild( &m_SongFinished );
|
||||
|
||||
//
|
||||
@@ -676,11 +676,11 @@ void ScreenGameplay::Init()
|
||||
this->AddChild( &m_Go );
|
||||
|
||||
m_Cleared.Load( THEME->GetPathToB("ScreenGameplay cleared") );
|
||||
m_Cleared.SetZ( -2 ); // on top of everything else
|
||||
m_Cleared.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 ); // on top of everything else
|
||||
this->AddChild( &m_Cleared );
|
||||
|
||||
m_Failed.Load( THEME->GetPathToB("ScreenGameplay failed") );
|
||||
m_Failed.SetZ( -2 ); // on top of everything else
|
||||
m_Failed.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 ); // on top of everything else
|
||||
this->AddChild( &m_Failed );
|
||||
|
||||
if( PREFSMAN->m_bAllowExtraStage && GAMESTATE->IsFinalStage() ) // only load if we're going to use it
|
||||
@@ -704,25 +704,23 @@ void ScreenGameplay::Init()
|
||||
break;
|
||||
}
|
||||
|
||||
m_In.Load( THEME->GetPathToB("ScreenGameplay in") );
|
||||
m_In.SetZ( -2 ); // on top of everything else
|
||||
this->AddChild( &m_In );
|
||||
|
||||
|
||||
m_textDebug.LoadFromFont( THEME->GetPathToF("Common normal") );
|
||||
m_textDebug.SetName( "Debug" );
|
||||
SET_XY( m_textDebug );
|
||||
this->AddChild( &m_textDebug );
|
||||
|
||||
m_Overlay.LoadFromAniDir( THEME->GetPathToB("ScreenGameplay Overlay") );
|
||||
m_Overlay.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 );
|
||||
this->AddChild( &m_Overlay );
|
||||
|
||||
m_In.Load( THEME->GetPathToB("ScreenGameplay in") );
|
||||
m_In.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_In );
|
||||
|
||||
m_Back.Load( THEME->GetPathToB("Common back") );
|
||||
m_Back.SetZ( -4 ); // on top of everything else
|
||||
m_Back.SetDrawOrder( DRAW_ORDER_TRANSITIONS ); // on top of everything else
|
||||
this->AddChild( &m_Back );
|
||||
|
||||
m_Overlay.LoadFromAniDir( THEME->GetPathToB("ScreenGameplay Overlay") );
|
||||
m_Overlay.SetZ( -3 ); // on top of everything else
|
||||
this->AddChild( &m_Overlay );
|
||||
|
||||
|
||||
if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() ) // only load if we're going to use it
|
||||
{
|
||||
@@ -730,7 +728,7 @@ void ScreenGameplay::Init()
|
||||
m_textSurviveTime.SetShadowLength( 0 );
|
||||
m_textSurviveTime.SetName( "SurviveTime" );
|
||||
SET_XY( m_textSurviveTime );
|
||||
m_textSurviveTime.SetZ( -3 ); // on top of everything else
|
||||
m_textSurviveTime.SetDrawOrder( DRAW_ORDER_TRANSITIONS-1 );
|
||||
m_textSurviveTime.SetDiffuse( RageColor(1,1,1,0) );
|
||||
this->AddChild( &m_textSurviveTime );
|
||||
}
|
||||
@@ -743,7 +741,7 @@ void ScreenGameplay::Init()
|
||||
|
||||
TweenOnScreen();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
|
||||
if( !m_bDemonstration ) // only load if we're going to use it
|
||||
{
|
||||
|
||||
@@ -497,7 +497,7 @@ void ScreenOptions::Init( InputMode im, OptionRowData OptionRows[], int iNumOpti
|
||||
|
||||
m_sprMore->FinishTweening();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
ScreenOptions::~ScreenOptions()
|
||||
|
||||
@@ -24,6 +24,14 @@
|
||||
#include "RageLog.h"
|
||||
#include "UnlockSystem.h"
|
||||
|
||||
static const CString PageTypeNames[NUM_PAGE_TYPES] = {
|
||||
"Category",
|
||||
"Course",
|
||||
"AllSteps",
|
||||
"AllCourses",
|
||||
};
|
||||
XToString( PageType );
|
||||
|
||||
|
||||
#define STEPS_TYPES_TO_HIDE THEME->GetMetric ("ScreenRanking","StepsTypesToHide")
|
||||
#define SHOW_CATEGORIES THEME->GetMetricB("ScreenRanking","ShowCategories")
|
||||
@@ -294,7 +302,7 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
|
||||
for( int c=0; c<NUM_RANKING_CATEGORIES; c++ )
|
||||
{
|
||||
PageToShow pts;
|
||||
pts.type = PageToShow::TYPE_CATEGORY;
|
||||
pts.type = PAGE_TYPE_CATEGORY;
|
||||
pts.colorIndex = i;
|
||||
pts.category = (RankingCategory)c;
|
||||
pts.nt = aStepsTypesToShow[i];
|
||||
@@ -311,7 +319,7 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
|
||||
for( unsigned c=0; c<asCoursePaths.size(); c++ )
|
||||
{
|
||||
PageToShow pts;
|
||||
pts.type = PageToShow::TYPE_COURSE;
|
||||
pts.type = PAGE_TYPE_COURSE;
|
||||
pts.colorIndex = i;
|
||||
pts.nt = aStepsTypesToShow[i];
|
||||
pts.pCourse = SONGMAN->GetCourseFromPath( asCoursePaths[c] );
|
||||
@@ -330,7 +338,7 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
|
||||
for( unsigned i=0; i<aStepsTypesToShow.size(); i++ )
|
||||
{
|
||||
PageToShow pts;
|
||||
pts.type = PageToShow::TYPE_ALL_STEPS;
|
||||
pts.type = PAGE_TYPE_ALL_STEPS;
|
||||
pts.colorIndex = i;
|
||||
pts.nt = aStepsTypesToShow[i];
|
||||
m_vPagesToShow.push_back( pts );
|
||||
@@ -347,7 +355,7 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
|
||||
for( unsigned i=0; i<aStepsTypesToShow.size(); i++ )
|
||||
{
|
||||
PageToShow pts;
|
||||
pts.type = PageToShow::TYPE_ALL_COURSES;
|
||||
pts.type = PAGE_TYPE_ALL_COURSES;
|
||||
pts.colorIndex = i;
|
||||
pts.nt = aStepsTypesToShow[i];
|
||||
m_vPagesToShow.push_back( pts );
|
||||
@@ -355,9 +363,6 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
|
||||
}
|
||||
}
|
||||
|
||||
this->MoveToTail( &m_In ); // put it in the back so it covers up the stuff we just added
|
||||
this->MoveToTail( &m_Out ); // put it in the back so it covers up the stuff we just added
|
||||
|
||||
this->ClearMessageQueue( SM_BeginFadingOut ); // ignore ScreenAttract's SecsToShow
|
||||
|
||||
this->PostScreenMessage( SM_ShowNextPage, 0.5f );
|
||||
@@ -380,7 +385,7 @@ void ScreenRanking::HandleScreenMessage( const ScreenMessage SM )
|
||||
if( m_vPagesToShow.size() > 0 )
|
||||
{
|
||||
float fSecsToShow = SetPage( m_vPagesToShow[0] );
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
m_vPagesToShow.erase( m_vPagesToShow.begin() );
|
||||
this->PostScreenMessage( SM_HidePage, fSecsToShow-PAGE_FADE_SECONDS );
|
||||
}
|
||||
@@ -416,7 +421,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
bool bShowCourseScore = false;
|
||||
switch( pts.type )
|
||||
{
|
||||
case PageToShow::TYPE_CATEGORY:
|
||||
case PAGE_TYPE_CATEGORY:
|
||||
bBanner = false;
|
||||
bBannerFrame = false;
|
||||
bShowCategory = true;
|
||||
@@ -430,7 +435,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
bShowDifficulty = false;
|
||||
bShowStepsScore = false;
|
||||
break;
|
||||
case PageToShow::TYPE_COURSE:
|
||||
case PAGE_TYPE_COURSE:
|
||||
bBanner = true;
|
||||
bBannerFrame = true;
|
||||
bShowCategory = false;
|
||||
@@ -444,7 +449,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
bShowDifficulty = false;
|
||||
bShowStepsScore = false;
|
||||
break;
|
||||
case PageToShow::TYPE_ALL_STEPS:
|
||||
case PAGE_TYPE_ALL_STEPS:
|
||||
bBanner = false;
|
||||
bBannerFrame = false;
|
||||
bShowCategory = false;
|
||||
@@ -458,7 +463,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
bShowDifficulty = true;
|
||||
bShowStepsScore = true;
|
||||
break;
|
||||
case PageToShow::TYPE_ALL_COURSES:
|
||||
case PAGE_TYPE_ALL_COURSES:
|
||||
bShowStepsType = true;
|
||||
bShowCourseScore = true;
|
||||
bShowCourseDifficulty = true;
|
||||
@@ -504,6 +509,15 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
SET_XY_AND_ON_COMMAND( m_textStepsType );
|
||||
}
|
||||
|
||||
// UGLY: We have to call AddChild every time we re-load an AutoActor
|
||||
// because the internal Actor* changes.
|
||||
if( (Actor*)m_sprPageType )
|
||||
this->RemoveChild( m_sprPageType );
|
||||
m_sprPageType.Load( THEME->GetPathG(m_sName, "PageType "+PageTypeToString(pts.type)) );
|
||||
m_sprPageType->SetName( "PageType" );
|
||||
this->AddChild( m_sprPageType );
|
||||
SET_XY_AND_ON_COMMAND( m_sprPageType );
|
||||
|
||||
{
|
||||
for( int l=0; l<NUM_RANKING_LINES; l++ )
|
||||
{
|
||||
@@ -663,7 +677,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
//
|
||||
switch( pts.type )
|
||||
{
|
||||
case PageToShow::TYPE_CATEGORY:
|
||||
case PAGE_TYPE_CATEGORY:
|
||||
{
|
||||
m_textCategory.SetText( ssprintf("Type %c", 'A'+pts.category) );
|
||||
m_textStepsType.SetText( GameManager::NotesTypeToThemedString(pts.nt) );
|
||||
@@ -702,7 +716,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
}
|
||||
}
|
||||
return SECONDS_PER_PAGE;
|
||||
case PageToShow::TYPE_COURSE:
|
||||
case PAGE_TYPE_COURSE:
|
||||
{
|
||||
m_textCourseTitle.SetText( pts.pCourse->m_sName );
|
||||
m_Banner.LoadFromCourse( pts.pCourse );
|
||||
@@ -753,7 +767,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
}
|
||||
}
|
||||
return SECONDS_PER_PAGE;
|
||||
case PageToShow::TYPE_ALL_STEPS:
|
||||
case PAGE_TYPE_ALL_STEPS:
|
||||
{
|
||||
m_textStepsType.SetText( GameManager::NotesTypeToThemedString(pts.nt) );
|
||||
|
||||
@@ -798,7 +812,7 @@ float ScreenRanking::SetPage( PageToShow pts )
|
||||
}
|
||||
}
|
||||
return m_ListScoreRowItems.GetSecondsForCompleteScrollThrough();
|
||||
case PageToShow::TYPE_ALL_COURSES:
|
||||
case PAGE_TYPE_ALL_COURSES:
|
||||
{
|
||||
m_textStepsType.SetText( GameManager::NotesTypeToThemedString(pts.nt) );
|
||||
|
||||
@@ -847,6 +861,7 @@ void ScreenRanking::TweenPageOffScreen()
|
||||
OFF_COMMAND( m_textCourseTitle );
|
||||
OFF_COMMAND( m_textCategory );
|
||||
OFF_COMMAND( m_textStepsType );
|
||||
OFF_COMMAND( m_sprPageType );
|
||||
|
||||
for( int l=0; l<NUM_RANKING_LINES; l++ )
|
||||
{
|
||||
|
||||
@@ -17,10 +17,23 @@
|
||||
#include "BitmapText.h"
|
||||
#include "Banner.h"
|
||||
#include "ListDisplay.h"
|
||||
#include "ActorUtil.h"
|
||||
|
||||
class Course;
|
||||
class Song;
|
||||
|
||||
enum PageType
|
||||
{
|
||||
PAGE_TYPE_CATEGORY,
|
||||
PAGE_TYPE_COURSE,
|
||||
PAGE_TYPE_ALL_STEPS,
|
||||
PAGE_TYPE_ALL_COURSES,
|
||||
NUM_PAGE_TYPES
|
||||
};
|
||||
#define FOREACH_PageType( pt ) FOREACH_ENUM( PageType, NUM_PAGE_TYPES, pt )
|
||||
const CString& PageTypeToString( PageType pt );
|
||||
|
||||
|
||||
class ScreenRanking : public ScreenAttract
|
||||
{
|
||||
public:
|
||||
@@ -32,13 +45,17 @@ public:
|
||||
protected:
|
||||
struct PageToShow
|
||||
{
|
||||
enum { TYPE_CATEGORY, TYPE_COURSE, TYPE_ALL_STEPS, TYPE_ALL_COURSES } type;
|
||||
PageToShow()
|
||||
{
|
||||
pCourse = NULL;
|
||||
}
|
||||
|
||||
PageType type;
|
||||
int colorIndex;
|
||||
StepsType nt;
|
||||
RankingCategory category;
|
||||
Course* pCourse;
|
||||
CourseDifficulty cd;
|
||||
PageToShow(): pCourse(NULL) { }
|
||||
};
|
||||
|
||||
float SetPage( PageToShow pts );
|
||||
@@ -51,6 +68,7 @@ protected:
|
||||
BitmapText m_textCourseTitle; // for course
|
||||
BitmapText m_textCategory; // for category
|
||||
BitmapText m_textStepsType; // for category, course, all_steps
|
||||
AutoActor m_sprPageType;
|
||||
|
||||
Sprite m_sprBullets[NUM_RANKING_LINES]; // for category and course
|
||||
BitmapText m_textNames[NUM_RANKING_LINES]; // for category and course
|
||||
|
||||
@@ -168,7 +168,7 @@ ScreenSelectCharacter::ScreenSelectCharacter( CString sClassName ) : ScreenWithM
|
||||
}
|
||||
TweenOnScreen();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -143,7 +143,7 @@ ScreenSelectCourse::ScreenSelectCourse( CString sClassName ) : ScreenWithMenuEle
|
||||
AfterCourseChange();
|
||||
TweenOnScreen();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -124,7 +124,7 @@ ScreenSelectDifficulty::ScreenSelectDifficulty( CString sClassName ) : ScreenSel
|
||||
|
||||
TweenOnScreen();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void ScreenSelectDifficulty::Update( float fDelta )
|
||||
|
||||
@@ -155,7 +155,7 @@ ScreenSelectDifficultyEX::ScreenSelectDifficultyEX( CString sClassName ) : Scree
|
||||
|
||||
SetAllPlayersSelection( 0, false );
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void ScreenSelectDifficultyEX::Update( float fDelta )
|
||||
|
||||
@@ -144,7 +144,7 @@ ScreenSelectGroup::ScreenSelectGroup( CString sClassName ) : ScreenWithMenuEleme
|
||||
TweenOnScreen();
|
||||
m_GroupList.SetSelection(0);
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -715,7 +715,7 @@ void ScreenSelectMaster::TweenOnScreen()
|
||||
SET_XY_AND_ON_COMMAND( m_sprExplanation[GetCurrentPage()] );
|
||||
SET_XY_AND_ON_COMMAND( m_sprMore[GetCurrentPage()] );
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void ScreenSelectMaster::TweenOffScreen()
|
||||
|
||||
@@ -338,7 +338,7 @@ ScreenSelectMusic::ScreenSelectMusic( CString sClassName ) : ScreenWithMenuEleme
|
||||
AfterMusicChange();
|
||||
TweenOnScreen();
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -140,7 +140,7 @@ ScreenSelectStyle::ScreenSelectStyle( CString sClassName ) : ScreenSelect( sClas
|
||||
SET_XY_AND_ON_COMMAND( m_sprPremium );
|
||||
|
||||
// let AfterChange tween Picture and Info
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void ScreenSelectStyle::MenuLeft( PlayerNumber pn )
|
||||
|
||||
@@ -39,7 +39,7 @@ ScreenStage::ScreenStage( CString sClassName ) : Screen( sClassName )
|
||||
|
||||
|
||||
m_Background.LoadFromAniDir( THEME->GetPathToB(m_sName + " "+GAMESTATE->GetStageText()) );
|
||||
m_Background.SetZ( 10 ); // behind everything else
|
||||
m_Background.SetDrawOrder( DRAW_ORDER_BEFORE_EVERYTHING );
|
||||
this->AddChild( &m_Background );
|
||||
|
||||
m_Overlay.SetName( "Overlay" );
|
||||
@@ -49,15 +49,15 @@ ScreenStage::ScreenStage( CString sClassName ) : Screen( sClassName )
|
||||
|
||||
m_In.Load( THEME->GetPathToB(m_sName + " in") );
|
||||
m_In.StartTransitioning();
|
||||
m_In.SetZ( -2 ); // on top of everything else
|
||||
m_In.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_In );
|
||||
|
||||
m_Out.Load( THEME->GetPathToB(m_sName + " out") );
|
||||
m_Out.SetZ( -2 ); // on top of everything else
|
||||
m_Out.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_Out );
|
||||
|
||||
m_Back.Load( THEME->GetPathToB("Common back") );
|
||||
m_Back.SetZ( -2 ); // on top of everything else
|
||||
m_Back.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_Back );
|
||||
|
||||
/* Prep the new screen once m_In is complete. */
|
||||
@@ -107,7 +107,7 @@ ScreenStage::ScreenStage( CString sClassName ) : Screen( sClassName )
|
||||
|
||||
SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo("stage "+GAMESTATE->GetStageText()) );
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
void ScreenStage::HandleScreenMessage( const ScreenMessage SM )
|
||||
|
||||
@@ -189,7 +189,7 @@ ScreenTitleMenu::ScreenTitleMenu( CString sClassName ) : ScreenSelect( sClassNam
|
||||
|
||||
this->PostScreenMessage( SM_PlayComment, SECONDS_BETWEEN_COMMENTS);
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
|
||||
// this->MoveToTail( &m_AttractOut ); // put it in the back so it covers up the stuff we just added
|
||||
}
|
||||
|
||||
@@ -324,7 +324,7 @@ ScreenUnlock::ScreenUnlock( CString sClassName ) : ScreenAttract( sClassName )
|
||||
|
||||
this->PostScreenMessage( SM_BeginFadingOut, TIME_TO_DISPLAY );
|
||||
|
||||
this->SortByZ();
|
||||
this->SortByDrawOrder();
|
||||
}
|
||||
|
||||
ScreenUnlock::~ScreenUnlock()
|
||||
|
||||
@@ -100,15 +100,15 @@ ScreenWithMenuElements::ScreenWithMenuElements( CString sClassName ) : Screen( s
|
||||
|
||||
|
||||
m_In.Load( THEME->GetPathToB(m_sName+" in") );
|
||||
m_In.SetZ( -1000 ); // always on top
|
||||
m_In.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_In );
|
||||
|
||||
m_Out.Load( THEME->GetPathToB(m_sName+" out") );
|
||||
m_Out.SetZ( -1000 ); // always on top
|
||||
m_Out.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_Out );
|
||||
|
||||
m_Back.Load( THEME->GetPathToB("Common back") );
|
||||
m_Back.SetZ( -1000 ); // always on top
|
||||
m_Back.SetDrawOrder( DRAW_ORDER_TRANSITIONS );
|
||||
this->AddChild( &m_Back );
|
||||
|
||||
m_In.StartTransitioning();
|
||||
|
||||
Reference in New Issue
Block a user