syncing with sm4svn part 1.
7534867: fix SSM crashes when selecting a song with only one player enabled cddaab5: simplify SongUtil::GetStepsTypeAndDifficultyFromSortOrder 615aab0: add Style::GetUsesCenteredArrows (doubles + routine) 17f38e7: sanity check [all code changes by Glenn Maynard]
This commit is contained in:
+11
-1
@@ -362,7 +362,17 @@ void ScreenGameplay::Init()
|
||||
ScreenWithMenuElements::Init();
|
||||
|
||||
this->FillPlayerInfo( m_vPlayerInfo );
|
||||
ASSERT_M( !m_vPlayerInfo.empty(), "m_vPlayerInfo must be filled by FillPlayerInfo" );
|
||||
|
||||
{
|
||||
ASSERT_M( !m_vPlayerInfo.empty(), "m_vPlayerInfo must be filled by FillPlayerInfo" );
|
||||
|
||||
int iNumEnabledPlayers = 0;
|
||||
FOREACH_EnabledPlayerInfo( m_vPlayerInfo, pi )
|
||||
++iNumEnabledPlayers;
|
||||
|
||||
/* If this is 0, we have no active players and havn't been initialized correctly. */
|
||||
ASSERT( iNumEnabledPlayers > 0 );
|
||||
}
|
||||
|
||||
/* Pause MEMCARDMAN. If a memory card is removed, we don't want to interrupt the
|
||||
* player by making a noise until the game finishes. */
|
||||
|
||||
@@ -1003,7 +1003,7 @@ void ScreenSelectMusic::MenuStart( const InputEventPlus &input )
|
||||
bool bSelectedRoutineSteps[NUM_PLAYERS], bAnySelectedRoutine = false;
|
||||
bool bSelectedSameSteps = GAMESTATE->m_pCurSteps[PLAYER_1] == GAMESTATE->m_pCurSteps[PLAYER_2];
|
||||
|
||||
FOREACH_PlayerNumber( p )
|
||||
FOREACH_HumanPlayer( p )
|
||||
{
|
||||
const Steps *pSteps = GAMESTATE->m_pCurSteps[p];
|
||||
const StepsTypeInfo &sti = GAMEMAN->GetStepsTypeInfo( pSteps->m_StepsType );
|
||||
|
||||
+9
-24
@@ -917,18 +917,17 @@ bool SongUtil::GetStepsTypeAndDifficultyFromSortOrder( SortOrder so, StepsType &
|
||||
{
|
||||
switch( so )
|
||||
{
|
||||
case SORT_BEGINNER_METER: dcOut = Difficulty_Beginner; break;
|
||||
case SORT_EASY_METER: dcOut = Difficulty_Easy; break;
|
||||
case SORT_MEDIUM_METER: dcOut = Difficulty_Medium; break;
|
||||
case SORT_HARD_METER: dcOut = Difficulty_Hard; break;
|
||||
case SORT_CHALLENGE_METER: dcOut = Difficulty_Challenge; break;
|
||||
case SORT_DOUBLE_EASY_METER: dcOut = Difficulty_Easy; break;
|
||||
case SORT_DOUBLE_MEDIUM_METER: dcOut = Difficulty_Medium; break;
|
||||
case SORT_DOUBLE_HARD_METER: dcOut = Difficulty_Hard; break;
|
||||
case SORT_DOUBLE_CHALLENGE_METER: dcOut = Difficulty_Challenge; break;
|
||||
default:
|
||||
return false;
|
||||
case SORT_BEGINNER_METER:
|
||||
case SORT_EASY_METER:
|
||||
case SORT_MEDIUM_METER:
|
||||
case SORT_HARD_METER:
|
||||
case SORT_CHALLENGE_METER:
|
||||
case SORT_DOUBLE_EASY_METER:
|
||||
case SORT_DOUBLE_MEDIUM_METER:
|
||||
case SORT_DOUBLE_HARD_METER:
|
||||
case SORT_DOUBLE_CHALLENGE_METER:
|
||||
break; // fall through
|
||||
}
|
||||
|
||||
switch( so )
|
||||
@@ -963,20 +962,6 @@ bool SongUtil::GetStepsTypeAndDifficultyFromSortOrder( SortOrder so, StepsType &
|
||||
break;
|
||||
}
|
||||
|
||||
switch( so )
|
||||
{
|
||||
DEFAULT_FAIL( so );
|
||||
case SORT_BEGINNER_METER: dcOut = Difficulty_Beginner; break;
|
||||
case SORT_EASY_METER: dcOut = Difficulty_Easy; break;
|
||||
case SORT_MEDIUM_METER: dcOut = Difficulty_Medium; break;
|
||||
case SORT_HARD_METER: dcOut = Difficulty_Hard; break;
|
||||
case SORT_CHALLENGE_METER: dcOut = Difficulty_Challenge; break;
|
||||
case SORT_DOUBLE_EASY_METER: dcOut = Difficulty_Easy; break;
|
||||
case SORT_DOUBLE_MEDIUM_METER: dcOut = Difficulty_Medium; break;
|
||||
case SORT_DOUBLE_HARD_METER: dcOut = Difficulty_Hard; break;
|
||||
case SORT_DOUBLE_CHALLENGE_METER: dcOut = Difficulty_Challenge; break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -20,6 +20,17 @@
|
||||
#include "NoteData.h"
|
||||
#include <float.h>
|
||||
|
||||
bool Style::GetUsesCenteredArrows() const
|
||||
{
|
||||
switch( m_StyleType )
|
||||
{
|
||||
case StyleType_OnePlayerTwoSides:
|
||||
case StyleType_TwoPlayersSharedSides:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
void Style::GetTransformedNoteDataForStyle( PlayerNumber pn, const NoteData& original, NoteData& noteDataOut ) const
|
||||
{
|
||||
|
||||
+1
-1
@@ -57,8 +57,8 @@ public:
|
||||
int GameInputToColumn( const GameInput &GameI ) const;
|
||||
RString ColToButtonName( int iCol ) const;
|
||||
|
||||
bool GetUsesCenteredArrows() const;
|
||||
void GetTransformedNoteDataForStyle( PlayerNumber pn, const NoteData& original, NoteData& noteDataOut ) const;
|
||||
|
||||
void GetMinAndMaxColX( PlayerNumber pn, float& fMixXOut, float& fMaxXOut ) const;
|
||||
|
||||
// Lua
|
||||
|
||||
Reference in New Issue
Block a user