From 00e4c2686ed9b77b7665e3785c13f4a88733f902 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Mon, 4 Apr 2005 12:45:35 +0000 Subject: [PATCH] clear all stage stats to fix accumulating life and combo memory --- stepmania/src/StageStats.cpp | 7 ++++++- stepmania/src/StageStats.h | 2 +- stepmania/src/StatsManager.h | 6 +++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/stepmania/src/StageStats.cpp b/stepmania/src/StageStats.cpp index 6d5338cb43..001fb11b15 100644 --- a/stepmania/src/StageStats.cpp +++ b/stepmania/src/StageStats.cpp @@ -5,7 +5,7 @@ #include "Steps.h" #include "song.h" -void StageStats::Init() +StageStats::StageStats() { playMode = PLAY_MODE_INVALID; pStyle = NULL; @@ -14,6 +14,11 @@ void StageStats::Init() fGameplaySeconds = 0; } +void StageStats::Init() +{ + *this = StageStats(); +} + void StageStats::AssertValid( PlayerNumber pn ) const { ASSERT( vpSongs.size() != 0 ); diff --git a/stepmania/src/StageStats.h b/stepmania/src/StageStats.h index 22078f74f1..c4301c6806 100644 --- a/stepmania/src/StageStats.h +++ b/stepmania/src/StageStats.h @@ -12,7 +12,7 @@ struct lua_State; struct StageStats { - StageStats() { Init(); } + StageStats(); void Init(); void AssertValid( PlayerNumber pn ) const; diff --git a/stepmania/src/StatsManager.h b/stepmania/src/StatsManager.h index 8960cce9f1..2af3a754c5 100644 --- a/stepmania/src/StatsManager.h +++ b/stepmania/src/StatsManager.h @@ -12,11 +12,15 @@ public: void Reset() { + m_CurStageStats.Init(); m_vPlayedStageStats.clear(); + m_AccumStageStats.Init(); + m_FinalEvalStageStats.Init(); + CalcAccumStageStats(); } - StageStats m_CurStageStats; // current stage (not necessarily passed if Extra Stage) + StageStats m_CurStageStats; // current stage (not necessarily passed if Extra Stage) vector m_vPlayedStageStats; // Only the latest 3 normal songs + passed extra stages.