diff --git a/stepmania/src/ScreenSelectMaster.cpp b/stepmania/src/ScreenSelectMaster.cpp index 086e601d40..6672487812 100644 --- a/stepmania/src/ScreenSelectMaster.cpp +++ b/stepmania/src/ScreenSelectMaster.cpp @@ -708,8 +708,12 @@ float ScreenSelectMaster::DoMenuStart( PlayerNumber pn ) return fSecs; } -void ScreenSelectMaster::MenuStart( PlayerNumber pn ) +void ScreenSelectMaster::MenuStart( const InputEventPlus &input ) { + if( input.type != IET_FIRST_PRESS ) + return; + PlayerNumber pn = input.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. Screen::JoinInput( pn ); diff --git a/stepmania/src/ScreenSelectMaster.h b/stepmania/src/ScreenSelectMaster.h index 31654b3964..071d2b0e47 100644 --- a/stepmania/src/ScreenSelectMaster.h +++ b/stepmania/src/ScreenSelectMaster.h @@ -34,7 +34,7 @@ public: virtual void MenuRight( const InputEventPlus &input ); virtual void MenuUp( const InputEventPlus &input ); virtual void MenuDown( const InputEventPlus &input ); - virtual void MenuStart( PlayerNumber pn ); + virtual void MenuStart( const InputEventPlus &input ); virtual void TweenOnScreen(); virtual void TweenOffScreen();