never accept input while transitioning
This commit is contained in:
@@ -196,6 +196,8 @@ void ScreenMapControllers::Input( const InputEventPlus &input )
|
|||||||
{
|
{
|
||||||
if( input.type != IET_FIRST_PRESS && input.type != IET_SLOW_REPEAT && input.type != IET_FAST_REPEAT )
|
if( input.type != IET_FIRST_PRESS && input.type != IET_SLOW_REPEAT && input.type != IET_FAST_REPEAT )
|
||||||
return; // ignore
|
return; // ignore
|
||||||
|
if( IsTransitioning() )
|
||||||
|
return; // ignore
|
||||||
|
|
||||||
LOG->Trace( "ScreenMapControllers::Input(): device: %d, button: %d",
|
LOG->Trace( "ScreenMapControllers::Input(): device: %d, button: %d",
|
||||||
input.DeviceI.device, input.DeviceI.button );
|
input.DeviceI.device, input.DeviceI.button );
|
||||||
@@ -343,12 +345,8 @@ void ScreenMapControllers::Input( const InputEventPlus &input )
|
|||||||
m_soundChange.Play();
|
m_soundChange.Play();
|
||||||
break;
|
break;
|
||||||
case KEY_ESC: /* Quit the screen. */
|
case KEY_ESC: /* Quit the screen. */
|
||||||
if( !IsTransitioning() )
|
SCREENMAN->PlayStartSound();
|
||||||
{
|
StartTransitioningScreen( SM_GoToNextScreen );
|
||||||
SCREENMAN->PlayStartSound();
|
|
||||||
|
|
||||||
StartTransitioningScreen( SM_GoToNextScreen );
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case KEY_ENTER: /* Change the selection. */
|
case KEY_ENTER: /* Change the selection. */
|
||||||
case KEY_KP_ENTER:
|
case KEY_KP_ENTER:
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ private:
|
|||||||
// owned by m_Line
|
// owned by m_Line
|
||||||
Actor *m_pExit;
|
Actor *m_pExit;
|
||||||
|
|
||||||
ActorFrame m_Line[MAX_GAME_BUTTONS+1];
|
ActorFrame m_Line[MAX_GAME_BUTTONS+1]; // XXX
|
||||||
ActorScroller m_LineScroller;
|
ActorScroller m_LineScroller;
|
||||||
|
|
||||||
RageSound m_soundChange;
|
RageSound m_soundChange;
|
||||||
|
|||||||
Reference in New Issue
Block a user