fix "100%" not stripped if there's a leading speed
This commit is contained in:
@@ -571,21 +571,6 @@ bool PlayerOptions::IsEasierForCourseAndTrail( Course* pCourse, Trail* pTrail )
|
|||||||
|
|
||||||
CString PlayerOptions::ThemeMod( CString sOneMod )
|
CString PlayerOptions::ThemeMod( CString sOneMod )
|
||||||
{
|
{
|
||||||
// Strip out the approach speed token
|
|
||||||
if( !sOneMod.empty() && sOneMod[0]=='*' )
|
|
||||||
{
|
|
||||||
int iPos = sOneMod.Find(' ');
|
|
||||||
if( iPos != -1 )
|
|
||||||
sOneMod.erase( sOneMod.begin(), sOneMod.begin()+iPos+1 );
|
|
||||||
}
|
|
||||||
|
|
||||||
// Strip out "100% "
|
|
||||||
#define PERCENT_100 "100% "
|
|
||||||
if( !strncmp( sOneMod, PERCENT_100, sizeof(PERCENT_100)) )
|
|
||||||
{
|
|
||||||
sOneMod.erase( sOneMod.begin(), sOneMod.begin()+sizeof(PERCENT_100) );
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change all token to first letter capitalized, rest lowercase
|
// Change all token to first letter capitalized, rest lowercase
|
||||||
CStringArray asTokens;
|
CStringArray asTokens;
|
||||||
split( sOneMod, " ", asTokens );
|
split( sOneMod, " ", asTokens );
|
||||||
@@ -595,6 +580,14 @@ CString PlayerOptions::ThemeMod( CString sOneMod )
|
|||||||
*s = Capitalize( *s );
|
*s = Capitalize( *s );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Strip the approach speed token, if any
|
||||||
|
if( asTokens[0][0] == '*' )
|
||||||
|
asTokens.erase( asTokens.begin() );
|
||||||
|
|
||||||
|
// Strip "100%", if any
|
||||||
|
if( asTokens[0] == "100%" )
|
||||||
|
asTokens.erase( asTokens.begin() );
|
||||||
|
|
||||||
/* Theme the mod name (the last string). Allow this to not exist, since
|
/* Theme the mod name (the last string). Allow this to not exist, since
|
||||||
* characters might use modifiers that don't exist in the theme. */
|
* characters might use modifiers that don't exist in the theme. */
|
||||||
if( THEME->HasMetric( "OptionNames", asTokens.back() ) )
|
if( THEME->HasMetric( "OptionNames", asTokens.back() ) )
|
||||||
|
|||||||
Reference in New Issue
Block a user