Fix banners being overridden incorrectly.

Find "BN" banners.  (?!)
Simplify.
This commit is contained in:
Glenn Maynard
2003-06-22 20:59:57 +00:00
parent 87ce36a74d
commit ae863c4472
+20 -23
View File
@@ -430,6 +430,14 @@ bool Song::LoadFromSongDir( CString sDir )
} }
static void GetImageDirListing( CString sPath, CStringArray &AddTo, bool bReturnPathToo=false )
{
GetDirListing( sPath + ".png", AddTo, false, bReturnPathToo );
GetDirListing( sPath + ".jpg", AddTo, false, bReturnPathToo );
GetDirListing( sPath + ".bmp", AddTo, false, bReturnPathToo );
GetDirListing( sPath + ".gif", AddTo, false, bReturnPathToo );
}
void Song::TidyUpData() void Song::TidyUpData()
{ {
if( !HasMusic() ) if( !HasMusic() )
@@ -577,10 +585,12 @@ void Song::TidyUpData()
// find an image with "banner" in the file name // find an image with "banner" in the file name
CStringArray arrayPossibleBanners; CStringArray arrayPossibleBanners;
GetDirListing( m_sSongDir + CString("*banner*.png"), arrayPossibleBanners ); GetImageDirListing( m_sSongDir + "*banner*", arrayPossibleBanners );
GetDirListing( m_sSongDir + CString("*banner*.jpg"), arrayPossibleBanners );
GetDirListing( m_sSongDir + CString("*banner*.bmp"), arrayPossibleBanners ); /* Some people do things differently for the sake of being different. Don't
GetDirListing( m_sSongDir + CString("*banner*.gif"), arrayPossibleBanners ); * match eg. abnormal, numbness. */
GetImageDirListing( m_sSongDir + "* BN", arrayPossibleBanners );
if( !arrayPossibleBanners.empty() ) if( !arrayPossibleBanners.empty() )
m_sBannerFile = arrayPossibleBanners[0]; m_sBannerFile = arrayPossibleBanners[0];
} }
@@ -591,28 +601,17 @@ void Song::TidyUpData()
// find an image with "bg" or "background" in the file name // find an image with "bg" or "background" in the file name
CStringArray arrayPossibleBGs; CStringArray arrayPossibleBGs;
GetDirListing( m_sSongDir + CString("*bg*.png"), arrayPossibleBGs ); GetImageDirListing( m_sSongDir + "*bg*", arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*bg*.jpg"), arrayPossibleBGs ); GetImageDirListing( m_sSongDir + "*background*", arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*bg*.bmp"), arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*bg*.gif"), arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*background*.png"), arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*background*.jpg"), arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*background*.bmp"), arrayPossibleBGs );
GetDirListing( m_sSongDir + CString("*background*.gif"), arrayPossibleBGs );
if( !arrayPossibleBGs.empty() ) if( !arrayPossibleBGs.empty() )
m_sBackgroundFile = arrayPossibleBGs[0]; m_sBackgroundFile = arrayPossibleBGs[0];
} }
if( !HasCDTitle() ) if( !HasCDTitle() )
{ {
// m_sCDTitleFile = "";
// find an image with "cdtitle" in the file name // find an image with "cdtitle" in the file name
CStringArray arrayPossibleCDTitles; CStringArray arrayPossibleCDTitles;
GetDirListing( m_sSongDir + CString("*cdtitle*.png"), arrayPossibleCDTitles ); GetImageDirListing( m_sSongDir + "*cdtitle*", arrayPossibleCDTitles );
GetDirListing( m_sSongDir + CString("*cdtitle*.jpg"), arrayPossibleCDTitles );
GetDirListing( m_sSongDir + CString("*cdtitle*.bmp"), arrayPossibleCDTitles );
GetDirListing( m_sSongDir + CString("*cdtitle*.gif"), arrayPossibleCDTitles );
if( !arrayPossibleCDTitles.empty() ) if( !arrayPossibleCDTitles.empty() )
m_sCDTitleFile = arrayPossibleCDTitles[0]; m_sCDTitleFile = arrayPossibleCDTitles[0];
} }
@@ -632,10 +631,8 @@ void Song::TidyUpData()
// Now, For the images we still haven't found, look at the image dimensions of the remaining unclassified images. // Now, For the images we still haven't found, look at the image dimensions of the remaining unclassified images.
// //
CStringArray arrayImages; CStringArray arrayImages;
GetDirListing( m_sSongDir + CString("*.png"), arrayImages ); GetImageDirListing( m_sSongDir + "*", arrayImages );
GetDirListing( m_sSongDir + CString("*.jpg"), arrayImages );
GetDirListing( m_sSongDir + CString("*.bmp"), arrayImages );
GetDirListing( m_sSongDir + CString("*.gif"), arrayImages );
unsigned i; unsigned i;
for( i=0; i<arrayImages.size(); i++ ) // foreach image for( i=0; i<arrayImages.size(); i++ ) // foreach image
{ {
@@ -672,7 +669,7 @@ void Song::TidyUpData()
continue; continue;
} }
if( CroppedSprite::IsDiagonalBanner(width, height) ) if( !HasBanner() && CroppedSprite::IsDiagonalBanner(width, height) )
{ {
m_sBannerFile = arrayImages[i]; m_sBannerFile = arrayImages[i];
continue; continue;