diff --git a/stepmania/src/GameConstantsAndTypes.cpp b/stepmania/src/GameConstantsAndTypes.cpp index 09aa61ec0d..6c9779dd11 100644 --- a/stepmania/src/GameConstantsAndTypes.cpp +++ b/stepmania/src/GameConstantsAndTypes.cpp @@ -46,8 +46,23 @@ LuaXType( RadarCategory ); RString StepsTypeToString( StepsType st ) { RString s = GAMEMAN->GetStepsTypeInfo( st ).szName; // "dance-single" + /* foo-bar -> Foo_Bar */ s.Replace('-','_'); + + bool bCapitalizeNextLetter = true; + for( int i=0; i<(int)s.length(); i++ ) + { + if( bCapitalizeNextLetter ) + { + s[i] = toupper(s[i]); + bCapitalizeNextLetter = false; + } + + if( s[i] == '_' ) + bCapitalizeNextLetter = true; + } + return s; } namespace StringConversion { template<> RString ToString( const StepsType &value ) { return StepsTypeToString(value); } }