From ebe832a1428cf5aa654735685383ec44c716c4ef Mon Sep 17 00:00:00 2001 From: AJ Kelly Date: Wed, 3 Aug 2011 23:56:04 -0500 Subject: [PATCH] Move the expanded section name into GameState --- src/GameState.cpp | 4 ++++ src/GameState.h | 20 +++++++++++--------- src/MusicWheel.cpp | 1 + src/MusicWheelItem.cpp | 7 +------ 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/GameState.cpp b/src/GameState.cpp index ff265e5f5b..5e4e1ebd39 100644 --- a/src/GameState.cpp +++ b/src/GameState.cpp @@ -164,6 +164,8 @@ GameState::GameState() : m_bDopefish = false; + sExpandedSectionName = ""; + // Don't reset yet; let the first screen do it, so we can use PREFSMAN and THEME. //Reset(); @@ -347,6 +349,8 @@ void GameState::Reset() m_bBackedOutOfFinalStage = false; m_bEarnedExtraStage = false; + sExpandedSectionName = ""; + ApplyCmdline(); } diff --git a/src/GameState.h b/src/GameState.h index 51abbac141..d0edf2ee18 100644 --- a/src/GameState.h +++ b/src/GameState.h @@ -74,7 +74,7 @@ public: void Update( float fDelta ); // Main state info - + /** * @brief State what the current game is. * @@ -143,22 +143,22 @@ public: PlayerNumber GetFirstDisabledPlayer() const; bool IsCpuPlayer( PlayerNumber pn ) const; bool AnyPlayersAreCpu() const; - + /** * @brief Retrieve the present master player number. * @return The master player number. */ PlayerNumber GetMasterPlayerNumber() const; - + /** * @brief Set the master player number. * @param p the master player number. */ void SetMasterPlayerNumber(const PlayerNumber p); - + /** * @brief Retrieve the present timing data being processed. * @return the timing data pointer. */ TimingData * GetProcessedTimingData() const; - + /** * @brief Set the timing data to be used with processing. * @param t the timing data. */ @@ -200,6 +200,8 @@ public: * This resets whenever a player joins or continues. */ int m_iPlayerStageTokens[NUM_PLAYERS]; + RString sExpandedSectionName; + static int GetNumStagesMultiplierForSong( const Song* pSong ); static int GetNumStagesForSongAndStyleType( const Song* pSong, StyleType st ); int GetNumStagesForCurrentSongAndStepsOrCourse() const; @@ -236,7 +238,7 @@ public: Course* m_pPreferredCourse; BroadcastOnChangePtr1D m_pCurTrail; - bool m_bBackedOutOfFinalStage; + bool m_bBackedOutOfFinalStage; // Music statistics: SongPosition m_Position; @@ -256,9 +258,9 @@ public: bool OneIsHot() const; // Haste - float m_fHasteRate; // [-1,+1]; 0 = normal speed - float m_fLastHasteUpdateMusicSeconds; - float m_fAccumulatedHasteSeconds; + float m_fHasteRate; // [-1,+1]; 0 = normal speed + float m_fLastHasteUpdateMusicSeconds; + float m_fAccumulatedHasteSeconds; // Random Attacks & Attack Mines vector m_RandomAttacks; diff --git a/src/MusicWheel.cpp b/src/MusicWheel.cpp index 89c0e442d2..faddff72aa 100644 --- a/src/MusicWheel.cpp +++ b/src/MusicWheel.cpp @@ -1327,6 +1327,7 @@ void MusicWheel::SetOpenSection( RString group ) { //LOG->Trace( "SetOpenSection %s", group.c_str() ); m_sExpandedSectionName = group; + GAMESTATE->sExpandedSectionName = group; // wheel positions = num song groups if ( REMIND_WHEEL_POSITIONS && HIDE_INACTIVE_SECTIONS ) diff --git a/src/MusicWheelItem.cpp b/src/MusicWheelItem.cpp index 5bde9a78a1..3ec80848e1 100644 --- a/src/MusicWheelItem.cpp +++ b/src/MusicWheelItem.cpp @@ -222,13 +222,8 @@ void MusicWheelItem::LoadFromWheelItemData( const WheelItemBaseData *pData, int case TYPE_SECTION: { sDisplayName = SONGMAN->ShortenGroupName(pWID->m_sText); - RString sExpandedSectionName; - // TODO: Move the expanded section name into GameState? - ScreenSelectMusic *pScreen = dynamic_cast(SCREENMAN->GetTopScreen() ); - if( pScreen ) - sExpandedSectionName = pScreen->GetMusicWheel()->GetExpandedSectionName(); - if( sExpandedSectionName == pWID->m_sText ) + if( GAMESTATE->sExpandedSectionName == pWID->m_sText ) type = MusicWheelItemType_SectionExpanded; else type = MusicWheelItemType_SectionCollapsed;