[GameState, SongUtil] Fix Issue 263 by not charging 2x stages for doubles when not using joint premium.

This commit is contained in:
AJ Kelly
2011-08-07 18:33:35 -05:00
parent 4fa91adc36
commit 0285f7687f
3 changed files with 4 additions and 23 deletions
+1 -22
View File
@@ -630,27 +630,6 @@ int GameState::GetNumStagesMultiplierForSong( const Song* pSong )
return iNumStages;
}
int GameState::GetNumStagesForSongAndStyleType( const Song* pSong, StyleType st )
{
int iNumStages = GetNumStagesMultiplierForSong( pSong );
// One player, two-sides styles cost extra
switch( st )
{
DEFAULT_FAIL( st );
case StyleType_OnePlayerTwoSides:
if( g_Premium == Premium_Off )
iNumStages *= 2;
break;
case StyleType_TwoPlayersTwoSides:
case StyleType_OnePlayerOneSide:
case StyleType_TwoPlayersSharedSides:
break;
}
return iNumStages;
}
int GameState::GetNumStagesForCurrentSongAndStepsOrCourse() const
{
int iNumStagesOfThisSong = 1;
@@ -688,7 +667,7 @@ int GameState::GetNumStagesForCurrentSongAndStepsOrCourse() const
if( IsAnExtraStage() )
iNumStagesOfThisSong = 1;
else
iNumStagesOfThisSong = GameState::GetNumStagesForSongAndStyleType( m_pCurSong, pStyle->m_StyleType );
iNumStagesOfThisSong = GameState::GetNumStagesMultiplierForSong( m_pCurSong );
}
else if( m_pCurCourse )
iNumStagesOfThisSong = PREFSMAN->m_iSongsPerPlay;