diff --git a/stepmania/src/Course.cpp b/stepmania/src/Course.cpp index d2bdcf3886..431f190b38 100644 --- a/stepmania/src/Course.cpp +++ b/stepmania/src/Course.cpp @@ -349,7 +349,7 @@ bool Course::GetTrailSorted( StepsType st, CourseDifficulty cd, Trail &trail ) c { SortTrailEntry ste; ste.entry = trail.m_vEntries[i]; - ste.SortMeter = SortTrail.m_vEntries[i].pSteps->GetMeter(); + ste.SortMeter = SortTrail.m_vEntries[i].GetSteps()->GetMeter(); entries.push_back( ste ); } @@ -567,7 +567,7 @@ bool Course::GetTrailUnsorted( StepsType st, CourseDifficulty cd, Trail &trail ) TrailEntry te; te.pSong = resolved.pSong; - te.pSteps = resolved.pSteps; + te.SetSteps(resolved.pSteps); te.Modifiers = e->sModifiers; te.Attacks = e->attacks; te.bSecret = e->bSecret; diff --git a/stepmania/src/CourseEntryDisplay.cpp b/stepmania/src/CourseEntryDisplay.cpp index db1718462c..c4199a60fd 100644 --- a/stepmania/src/CourseEntryDisplay.cpp +++ b/stepmania/src/CourseEntryDisplay.cpp @@ -173,7 +173,7 @@ void CourseEntryDisplay::SetFromGameState( int iCourseEntryIndex ) const TrailEntry *te = tes[pn]; if( te == NULL ) continue; - SetDifficulty( pn, ssprintf("%d", te->pSteps->GetMeter()), te->pSteps->GetDifficulty() ); + SetDifficulty( pn, ssprintf("%d", te->GetSteps()->GetMeter()), te->GetSteps()->GetDifficulty() ); } m_TextBanner.LoadFromSong( te->pSong ); diff --git a/stepmania/src/PlayerOptions.cpp b/stepmania/src/PlayerOptions.cpp index 0593b1043d..15f03f6452 100644 --- a/stepmania/src/PlayerOptions.cpp +++ b/stepmania/src/PlayerOptions.cpp @@ -630,7 +630,7 @@ bool PlayerOptions::IsEasierForCourseAndTrail( Course* pCourse, Trail* pTrail ) FOREACH_CONST( TrailEntry, pTrail->m_vEntries, e ) { - if( e->pSong && IsEasierForSongAndSteps(e->pSong, e->pSteps, PLAYER_1) ) + if( e->pSong && IsEasierForSongAndSteps(e->pSong, e->GetSteps(), PLAYER_1) ) return true; } return false; diff --git a/stepmania/src/ScreenGameplay.cpp b/stepmania/src/ScreenGameplay.cpp index fb520ded15..a6f8de9852 100644 --- a/stepmania/src/ScreenGameplay.cpp +++ b/stepmania/src/ScreenGameplay.cpp @@ -850,8 +850,8 @@ void ScreenGameplay::InitSongQueues() pi->m_asModifiersQueue.clear(); FOREACH_CONST( TrailEntry, pTrail->m_vEntries, e ) { - ASSERT( e->pSteps ); - pi->m_vpStepsQueue.push_back( e->pSteps ); + ASSERT( e->GetSteps() ); + pi->m_vpStepsQueue.push_back( e->GetSteps() ); AttackArray a; e->GetAttackArray( a ); pi->m_asModifiersQueue.push_back( a ); diff --git a/stepmania/src/SongManager.cpp b/stepmania/src/SongManager.cpp index 36e02b1d02..a0bd6a24c2 100644 --- a/stepmania/src/SongManager.cpp +++ b/stepmania/src/SongManager.cpp @@ -1144,7 +1144,7 @@ bool SongManager::GetExtraStageInfoFromCourse( bool bExtra2, RString sPreferredG } pSongOut = pTrail->m_vEntries[0].pSong; - pStepsOut = pTrail->m_vEntries[0].pSteps; + pStepsOut = pTrail->m_vEntries[0].GetSteps(); return true; } diff --git a/stepmania/src/Trail.cpp b/stepmania/src/Trail.cpp index e7bcd661d9..0bb3f1e6ab 100644 --- a/stepmania/src/Trail.cpp +++ b/stepmania/src/Trail.cpp @@ -30,6 +30,16 @@ bool TrailEntry::operator== ( const TrailEntry &rhs ) const EQUAL(dc); } +Steps *TrailEntry::GetSteps() const +{ + return pSteps; +} + +void TrailEntry::SetSteps(Steps *steps) +{ + pSteps = steps; +} + bool TrailEntry::ContainsTransformOrTurn() const { PlayerOptions po; @@ -68,7 +78,7 @@ const RadarValues &Trail::GetRadarValues() const FOREACH_CONST( TrailEntry, m_vEntries, e ) { - const Steps *pSteps = e->pSteps; + const Steps *pSteps = e->GetSteps(); ASSERT( pSteps ); /* Hack: don't calculate for autogen entries; it makes writing Catalog.xml * take way too long. (Tournamix 4 Sample.crs takes me ~10s.) */ @@ -120,7 +130,7 @@ int Trail::GetTotalMeter() const int iTotalMeter = 0; FOREACH_CONST( TrailEntry, m_vEntries, e ) { - iTotalMeter += e->pSteps->GetMeter(); + iTotalMeter += e->GetSteps()->GetMeter(); } return iTotalMeter; diff --git a/stepmania/src/Trail.h b/stepmania/src/Trail.h index 55e4d74c90..f01730c232 100644 --- a/stepmania/src/Trail.h +++ b/stepmania/src/Trail.h @@ -13,6 +13,7 @@ struct lua_State; struct TrailEntry { +public: TrailEntry(): pSong(NULL), pSteps(NULL), @@ -22,7 +23,10 @@ struct TrailEntry dc(Difficulty_Invalid) { } - void GetAttackArray( AttackArray &out ) const; + void GetAttackArray( AttackArray &out ) const; + Steps* GetSteps() const; + void SetSteps(Steps *steps); + bool ContainsTransformOrTurn() const; Song* pSong; Steps* pSteps; @@ -37,7 +41,6 @@ struct TrailEntry Difficulty dc; bool operator== ( const TrailEntry &rhs ) const; bool operator!= ( const TrailEntry &rhs ) const { return !(*this==rhs); } - bool ContainsTransformOrTurn() const; }; class Trail