simplify interface
This commit is contained in:
@@ -236,13 +236,13 @@ RString Screen::GetPrevScreen() const
|
||||
}
|
||||
|
||||
|
||||
bool Screen::JoinInput( const InputEventPlus &input )
|
||||
bool Screen::JoinInput( PlayerNumber pn )
|
||||
{
|
||||
if( !GAMESTATE->PlayersCanJoin() )
|
||||
return false;
|
||||
|
||||
/* If this side is already in, don't re-join (and re-pay!). */
|
||||
if(GAMESTATE->m_bSideIsJoined[input.pn])
|
||||
if(GAMESTATE->m_bSideIsJoined[pn])
|
||||
return false;
|
||||
|
||||
/* subtract coins */
|
||||
@@ -259,7 +259,7 @@ bool Screen::JoinInput( const InputEventPlus &input )
|
||||
if( GAMESTATE->GetNumSidesJoined() > 0 )
|
||||
SCREENMAN->PlayStartSound();
|
||||
|
||||
GAMESTATE->JoinPlayer( input.pn );
|
||||
GAMESTATE->JoinPlayer( pn );
|
||||
|
||||
// don't load memory card profiles here. It's slow and can cause a big skip.
|
||||
/* Don't load the local profile, either. It causes a 150+ms skip on my A64 3000+,
|
||||
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
virtual ScreenType GetScreenType() const { return ALLOW_OPERATOR_MENU_BUTTON ? game_menu : system_menu; }
|
||||
bool AllowOperatorMenuButton() const { return ALLOW_OPERATOR_MENU_BUTTON; }
|
||||
|
||||
static bool JoinInput( const InputEventPlus &input ); // return true if a player joined
|
||||
static bool JoinInput( PlayerNumber pn ); // return true if player joined
|
||||
|
||||
//
|
||||
// Lua
|
||||
|
||||
@@ -150,7 +150,7 @@ void ScreenSelect::Input( const InputEventPlus &input )
|
||||
bool bAllowJoinInput = !ALLOW_DISABLED_PLAYER_INPUT;
|
||||
|
||||
if( input.MenuI == MENU_BUTTON_COIN ||
|
||||
(bAllowJoinInput && input.MenuI == MENU_BUTTON_START && Screen::JoinInput(input)) )
|
||||
(bAllowJoinInput && input.MenuI == MENU_BUTTON_START && Screen::JoinInput(input.pn)) )
|
||||
{
|
||||
if( input.type == IET_FIRST_PRESS )
|
||||
this->UpdateSelectableChoices();
|
||||
|
||||
@@ -712,10 +712,7 @@ void ScreenSelectMaster::MenuStart( PlayerNumber pn )
|
||||
{
|
||||
// If the player isn't already joined, try to join them.
|
||||
// Allow a player to join even if input is locked or someone has already already chosen.
|
||||
InputEventPlus input;
|
||||
input.pn = pn;
|
||||
input.MenuI = MENU_BUTTON_START;
|
||||
Screen::JoinInput( input );
|
||||
Screen::JoinInput( pn );
|
||||
|
||||
if( m_fLockInputSecs > 0 )
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user