diff --git a/stepmania/src/ScreenGameplay.cpp b/stepmania/src/ScreenGameplay.cpp index bdda3acee8..83a4e67d32 100644 --- a/stepmania/src/ScreenGameplay.cpp +++ b/stepmania/src/ScreenGameplay.cpp @@ -2594,10 +2594,6 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) else SOUND->PlayOnceFromAnnouncer( "gameplay failed" ); } - else if( SM == SM_StopMusic ) - { - m_pSoundMusic->Stop(); - } else if( SM == SM_Pause ) { /* Ignore SM_Pause when in demonstration. */ @@ -2612,6 +2608,13 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM ) } +void ScreenGameplay::Cancel( ScreenMessage smSendWhenDone ) +{ + m_pSoundMusic->Stop(); + + ScreenWithMenuElements::Cancel( smSendWhenDone ); +} + void ScreenGameplay::TweenOursOnScreen() { ON_COMMAND( m_sprLifeFrame ); diff --git a/stepmania/src/ScreenGameplay.h b/stepmania/src/ScreenGameplay.h index 8f771e12d6..8a03b7154f 100644 --- a/stepmania/src/ScreenGameplay.h +++ b/stepmania/src/ScreenGameplay.h @@ -106,6 +106,7 @@ public: virtual void Update( float fDeltaTime ); virtual void Input( const InputEventPlus &input ); virtual void HandleScreenMessage( const ScreenMessage SM ); + virtual void Cancel( ScreenMessage smSendWhenDone ); virtual bool UsesBackground() const { return false; } virtual ScreenType GetScreenType() const { return gameplay; }