If not shared selection, load everything in init. Don't SET_XY, just do that all in OnCommand.
This commit is contained in:
@@ -73,7 +73,7 @@ void ScreenSelectMaster::Init()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
FOREACH_HumanPlayer( p )
|
FOREACH_ENUM( PlayerNumber, p )
|
||||||
vpns.push_back( p );
|
vpns.push_back( p );
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -121,7 +121,7 @@ void ScreenSelectMaster::Init()
|
|||||||
RString sName = "Icon" "Choice" + mc.m_sName;
|
RString sName = "Icon" "Choice" + mc.m_sName;
|
||||||
m_vsprIcon[c]->SetName( sName );
|
m_vsprIcon[c]->SetName( sName );
|
||||||
if( USE_ICON_METRICS )
|
if( USE_ICON_METRICS )
|
||||||
LOAD_ALL_COMMANDS_AND_SET_XY( m_vsprIcon[c] );
|
LOAD_ALL_COMMANDS( m_vsprIcon[c] );
|
||||||
this->AddChild( 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].SetSecondsPerItem( SCROLLER_SECONDS_PER_ITEM );
|
||||||
m_Scroller[*p].SetNumSubdivisions( SCROLLER_SUBDIVISIONS );
|
m_Scroller[*p].SetNumSubdivisions( SCROLLER_SUBDIVISIONS );
|
||||||
m_Scroller[*p].SetName( "Scroller"+PLAYER_APPEND_NO_SPACE(*p) );
|
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] );
|
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].Load( THEME->GetPathG(m_sName, ssprintf("more page%d",page+1)) );
|
||||||
m_sprMore[page]->SetName( ssprintf("MorePage%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] );
|
this->AddChild( m_sprMore[page] );
|
||||||
|
|
||||||
m_sprExplanation[page].Load( THEME->GetPathG(m_sName, ssprintf("explanation page%d",page+1)) );
|
m_sprExplanation[page].Load( THEME->GetPathG(m_sName, ssprintf("explanation page%d",page+1)) );
|
||||||
m_sprExplanation[page]->SetName( ssprintf("ExplanationPage%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] );
|
this->AddChild( m_sprExplanation[page] );
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -260,16 +260,17 @@ void ScreenSelectMaster::BeginScreen()
|
|||||||
CLAMP( m_iChoice[p], 0, (int)m_aGameCommands.size()-1 );
|
CLAMP( m_iChoice[p], 0, (int)m_aGameCommands.size()-1 );
|
||||||
m_bChosen[p] = false;
|
m_bChosen[p] = false;
|
||||||
}
|
}
|
||||||
|
if( !SHARED_SELECTION )
|
||||||
vector<PlayerNumber> vpns;
|
|
||||||
if( SHARED_SELECTION )
|
|
||||||
{
|
{
|
||||||
vpns.push_back( PLAYER_1 );
|
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 );
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
FOREACH_HumanPlayer( p )
|
|
||||||
vpns.push_back( p );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this->UpdateSelectableChoices();
|
this->UpdateSelectableChoices();
|
||||||
|
|||||||
Reference in New Issue
Block a user