fix stage count problems
This commit is contained in:
@@ -1394,11 +1394,6 @@ void ScreenEvaluation::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
break;
|
break;
|
||||||
case SM_GoToNextScreen:
|
case SM_GoToNextScreen:
|
||||||
{
|
{
|
||||||
/* Hack: finish the stage before moving on. This will increment the stage
|
|
||||||
* counter. If we don't do this, the stage counter will be wrong for
|
|
||||||
* ScreenSelectMusic code which is called before the ctor. */
|
|
||||||
GAMESTATE->FinishStage();
|
|
||||||
|
|
||||||
if( PREFSMAN->m_bEventMode )
|
if( PREFSMAN->m_bEventMode )
|
||||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||||
else
|
else
|
||||||
@@ -1419,6 +1414,12 @@ void ScreenEvaluation::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
case stage:
|
case stage:
|
||||||
if( m_bTryExtraStage || !(GAMESTATE->IsFinalStage() || GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() ) )
|
if( m_bTryExtraStage || !(GAMESTATE->IsFinalStage() || GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() ) )
|
||||||
{
|
{
|
||||||
|
/* Hack: finish the stage before moving on. This will increment the stage
|
||||||
|
* counter. If we don't do this, the stage counter will be wrong for
|
||||||
|
* ScreenSelectMusic code which is called before the ctor. Watch out;
|
||||||
|
* calling this will change the results of IsFinalStage(), etc. */
|
||||||
|
GAMESTATE->FinishStage();
|
||||||
|
|
||||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user