If not shared selection, load everything in init. Don't SET_XY, just do that all in OnCommand.

This commit is contained in:
Steve Checkoway
2007-06-09 21:49:51 +00:00
parent 9ef3b2b838
commit 8c31e4126e
+15 -14
View File
@@ -73,7 +73,7 @@ void ScreenSelectMaster::Init()
}
else
{
FOREACH_HumanPlayer( p )
FOREACH_ENUM( PlayerNumber, p )
vpns.push_back( p );
}
@@ -121,7 +121,7 @@ void ScreenSelectMaster::Init()
RString sName = "Icon" "Choice" + mc.m_sName;
m_vsprIcon[c]->SetName( sName );
if( USE_ICON_METRICS )
LOAD_ALL_COMMANDS_AND_SET_XY( m_vsprIcon[c] );
LOAD_ALL_COMMANDS( m_vsprIcon[c] );
this->AddChild( m_vsprIcon[c] );
}
@@ -162,7 +162,7 @@ void ScreenSelectMaster::Init()
m_Scroller[*p].SetSecondsPerItem( SCROLLER_SECONDS_PER_ITEM );
m_Scroller[*p].SetNumSubdivisions( SCROLLER_SUBDIVISIONS );
m_Scroller[*p].SetName( "Scroller"+PLAYER_APPEND_NO_SPACE(*p) );
LOAD_ALL_COMMANDS_AND_SET_XY( m_Scroller[*p] );
LOAD_ALL_COMMANDS( m_Scroller[*p] );
this->AddChild( &m_Scroller[*p] );
}
}
@@ -171,12 +171,12 @@ void ScreenSelectMaster::Init()
{
m_sprMore[page].Load( THEME->GetPathG(m_sName, ssprintf("more page%d",page+1)) );
m_sprMore[page]->SetName( ssprintf("MorePage%d",page+1) );
LOAD_ALL_COMMANDS_AND_SET_XY( m_sprMore[page] );
LOAD_ALL_COMMANDS( m_sprMore[page] );
this->AddChild( m_sprMore[page] );
m_sprExplanation[page].Load( THEME->GetPathG(m_sName, ssprintf("explanation page%d",page+1)) );
m_sprExplanation[page]->SetName( ssprintf("ExplanationPage%d",page+1) );
LOAD_ALL_COMMANDS_AND_SET_XY( m_sprExplanation[page] );
LOAD_ALL_COMMANDS( m_sprExplanation[page] );
this->AddChild( m_sprExplanation[page] );
}
@@ -260,16 +260,17 @@ void ScreenSelectMaster::BeginScreen()
CLAMP( m_iChoice[p], 0, (int)m_aGameCommands.size()-1 );
m_bChosen[p] = false;
}
vector<PlayerNumber> vpns;
if( SHARED_SELECTION )
if( !SHARED_SELECTION )
{
vpns.push_back( PLAYER_1 );
}
else
{
FOREACH_HumanPlayer( p )
vpns.push_back( p );
FOREACH_ENUM( PlayerNumber, pn )
{
if( GAMESTATE->IsHumanPlayer(pn) )
continue;
if( SHOW_CURSOR )
m_sprCursor[pn]->SetVisible( false );
if( SHOW_SCROLLER )
m_Scroller[pn].SetVisible( false );
}
}
this->UpdateSelectableChoices();