fix "can't enter codes on ScreenTitleMenu if UseDedicatedMenuButtons is on"
This commit is contained in:
@@ -237,44 +237,45 @@ void ScreenTitleMenu::Input( const DeviceInput& DeviceI, const InputEventType ty
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !MenuI.IsValid() )
|
|
||||||
return;
|
|
||||||
|
|
||||||
if( m_In.IsTransitioning() || m_Back.IsTransitioning() ) /* not m_Out */
|
if( m_In.IsTransitioning() || m_Back.IsTransitioning() ) /* not m_Out */
|
||||||
return;
|
return;
|
||||||
|
|
||||||
switch( MenuI.button )
|
if( MenuI.IsValid() )
|
||||||
{
|
{
|
||||||
case MENU_BUTTON_UP:
|
switch( MenuI.button )
|
||||||
case MENU_BUTTON_LEFT:
|
|
||||||
MoveCursor( true );
|
|
||||||
break;
|
|
||||||
case MENU_BUTTON_DOWN:
|
|
||||||
case MENU_BUTTON_RIGHT:
|
|
||||||
MoveCursor( false );
|
|
||||||
break;
|
|
||||||
case MENU_BUTTON_BACK:
|
|
||||||
if( m_Out.IsTransitioning() )
|
|
||||||
break;
|
|
||||||
Back( SM_GoToAttractLoop );
|
|
||||||
break;
|
|
||||||
case MENU_BUTTON_START:
|
|
||||||
/* return if the choice is invalid */
|
|
||||||
const ModeChoice &mc = m_aModeChoices[m_Choice];
|
|
||||||
CString why;
|
|
||||||
if( !mc.IsPlayable( &why ) )
|
|
||||||
{
|
{
|
||||||
SCREENMAN->PlayInvalidSound();
|
case MENU_BUTTON_UP:
|
||||||
if( why != "" )
|
case MENU_BUTTON_LEFT:
|
||||||
SCREENMAN->SystemMessage( why );
|
MoveCursor( true );
|
||||||
return;
|
break;
|
||||||
|
case MENU_BUTTON_DOWN:
|
||||||
|
case MENU_BUTTON_RIGHT:
|
||||||
|
MoveCursor( false );
|
||||||
|
break;
|
||||||
|
case MENU_BUTTON_BACK:
|
||||||
|
if( m_Out.IsTransitioning() )
|
||||||
|
break;
|
||||||
|
Back( SM_GoToAttractLoop );
|
||||||
|
break;
|
||||||
|
case MENU_BUTTON_START:
|
||||||
|
/* return if the choice is invalid */
|
||||||
|
const ModeChoice &mc = m_aModeChoices[m_Choice];
|
||||||
|
CString why;
|
||||||
|
if( !mc.IsPlayable( &why ) )
|
||||||
|
{
|
||||||
|
SCREENMAN->PlayInvalidSound();
|
||||||
|
if( why != "" )
|
||||||
|
SCREENMAN->SystemMessage( why );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !Screen::JoinInput( DeviceI, type, GameI, MenuI, StyleI ) )
|
||||||
|
return;
|
||||||
|
|
||||||
|
if( !m_Out.IsTransitioning() )
|
||||||
|
StartTransitioning( SM_GoToNextScreen );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !Screen::JoinInput( DeviceI, type, GameI, MenuI, StyleI ) )
|
|
||||||
return;
|
|
||||||
|
|
||||||
if( !m_Out.IsTransitioning() )
|
|
||||||
StartTransitioning( SM_GoToNextScreen );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// detect codes
|
// detect codes
|
||||||
|
|||||||
Reference in New Issue
Block a user