From 5f426d73438205e3b5d8382a5098e4058655d576 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sun, 22 Feb 2004 03:37:43 +0000 Subject: [PATCH] save RankingCategory as strings; save to attr to make navigation easier --- stepmania/src/Profile.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/stepmania/src/Profile.cpp b/stepmania/src/Profile.cpp index aabd1aeb7e..34a87d700c 100644 --- a/stepmania/src/Profile.cpp +++ b/stepmania/src/Profile.cpp @@ -1069,7 +1069,8 @@ XNode* Profile::SaveCategoryScoresCreateNode() const if( pProfile->GetCategoryHighScoreList(st,rc).iNumTimesPlayed == 0 ) continue; - XNode* pRankingCategoryNode = pStepsTypeNode->AppendChild( "RankingCategory", rc ); + XNode* pRankingCategoryNode = pStepsTypeNode->AppendChild( "RankingCategory" ); + pRankingCategoryNode->AppendAttr( "Type", RankingCategoryToString(rc) ); const HighScoreList &hsl = pProfile->GetCategoryHighScoreList( (StepsType)st, (RankingCategory)rc ); @@ -1107,8 +1108,12 @@ void Profile::LoadCategoryScoresFromNode( const XNode* pNode ) if( (*radarCategory)->name != "RankingCategory" ) continue; - RankingCategory rc; - (*radarCategory)->GetValue( (int&)rc ); + const LPXAttr TypeAttr = (*radarCategory)->GetAttr( "Type" ); + if( TypeAttr == NULL ) + WARN_AND_CONTINUE; + RankingCategory rc = StringToRankingCategory( TypeAttr->value ); + if( rc == RANKING_INVALID ) + WARN_AND_CONTINUE; XNode *pHighScoreListNode = (*radarCategory)->GetChild("HighScoreList"); if( pHighScoreListNode == NULL )