diff --git a/stepmania/Themes/default/BGAnimations/_missing/dummy.txt b/stepmania/Themes/default/BGAnimations/_missing/dummy.txt new file mode 100644 index 0000000000..73b377907b --- /dev/null +++ b/stepmania/Themes/default/BGAnimations/_missing/dummy.txt @@ -0,0 +1 @@ +need this here for CVS... \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/_missing.png b/stepmania/Themes/default/Graphics/_missing.png new file mode 100644 index 0000000000..922995110a Binary files /dev/null and b/stepmania/Themes/default/Graphics/_missing.png differ diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index 413a27900c..cd62134fed 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -162,14 +162,30 @@ try_element_again: if( asPossibleElementFilePaths.GetSize() == 0 ) { #ifdef _DEBUG - if( IDRETRY == AfxMessageBox( ssprintf("The theme element %s/%s is missing. Correct this and click Retry, or Cancel to break.",sAssetCategory,sFileName), MB_RETRYCANCEL ) ) + switch( AfxMessageBox( ssprintf("The theme element %s/%s is missing.",sAssetCategory,sFileName), MB_ABORTRETRYIGNORE ) ) + { + case IDRETRY: goto try_element_again; + break; + case IDABORT: +#endif + throw RageException( "Theme element '%s/%s' could not be found in '%s' or '%s'.", + sAssetCategory, + sFileName, + GetThemeDirFromName(m_sCurThemeName), + GetThemeDirFromName(BASE_THEME_NAME) ); +#ifdef _DEBUG + case IDIGNORE: + LOG->Warn( + "Theme element '%s/%s' could not be found in '%s' or '%s'.", + sAssetCategory, + sFileName, + GetThemeDirFromName(m_sCurThemeName), + GetThemeDirFromName(BASE_THEME_NAME) ); + return GetPathTo( sAssetCategory, "_missing" ); + break; + } #endif - throw RageException( "Theme element '%s/%s' could not be found in '%s' or '%s'.", - sAssetCategory, - sFileName, - GetThemeDirFromName(m_sCurThemeName), - GetThemeDirFromName(BASE_THEME_NAME) ); } asPossibleElementFilePaths[0].MakeLower(); if( asPossibleElementFilePaths[0].GetLength() > 5 && asPossibleElementFilePaths[0].Right(5) == "redir" ) // this is a redirect file