fade between random movies

This commit is contained in:
Chris Danford
2003-04-14 07:11:04 +00:00
parent 68f0baf130
commit 41cc3e60cd
8 changed files with 41 additions and 39 deletions
+4 -4
View File
@@ -1,6 +1,6 @@
#COURSE:Players Best 1-4; #COURSE:Players Best 1-4;
#SONG:PlayersBest1:TRICK; #SONG:BEST1:TRICK;
#SONG:PlayersBest2:TRICK; #SONG:BEST2:TRICK;
#SONG:PlayersBest3:TRICK; #SONG:BEST3:TRICK;
#SONG:PlayersBest4:TRICK; #SONG:BEST4:TRICK;
@@ -1,5 +1,5 @@
#COURSE:Players Best 13-16; #COURSE:Players Best 13-16;
#SONG:PlayersBest13:TRICK; #SONG:BEST13:TRICK;
#SONG:PlayersBest14:TRICK; #SONG:BEST14:TRICK;
#SONG:PlayersBest15:TRICK; #SONG:BEST15:TRICK;
#SONG:PlayersBest16:TRICK; #SONG:BEST16:TRICK;
+4 -4
View File
@@ -1,5 +1,5 @@
#COURSE:Players Best 5-8; #COURSE:Players Best 5-8;
#SONG:PlayersBest5:TRICK; #SONG:BEST5:TRICK;
#SONG:PlayersBest6:TRICK; #SONG:BEST6:TRICK;
#SONG:PlayersBest7:TRICK; #SONG:BEST7:TRICK;
#SONG:PlayersBest8:TRICK; #SONG:BEST8:TRICK;
@@ -1,5 +1,5 @@
#COURSE:Players Best 9-12; #COURSE:Players Best 9-12;
#SONG:PlayersBest9:TRICK; #SONG:BEST9:TRICK;
#SONG:PlayersBest10:TRICK; #SONG:BEST10:TRICK;
#SONG:PlayersBest11:TRICK; #SONG:BEST11:TRICK;
#SONG:PlayersBest12:TRICK; #SONG:BEST12:TRICK;
+4 -4
View File
@@ -1,5 +1,5 @@
#COURSE:Players Worst; #COURSE:Players Worst;
#SONG:PlayersWorst1:TRICK; #SONG:WORST1:TRICK;
#SONG:PlayersWorst2:TRICK; #SONG:WORST2:TRICK;
#SONG:PlayersWorst3:TRICK; #SONG:WORST3:TRICK;
#SONG:PlayersWorst4:TRICK; #SONG:WORST4:TRICK;
+3 -1
View File
@@ -292,7 +292,9 @@ void Background::LoadFromSong( Song* pSong )
if( bLoadedAnyRandomBackgrounds ) if( bLoadedAnyRandomBackgrounds )
{ {
CString sBGName = RANDOM_BACKGROUND[ rand()%MAX_RANDOM_BACKGROUNDS ]; CString sBGName = RANDOM_BACKGROUND[ rand()%MAX_RANDOM_BACKGROUNDS ];
m_aBGChanges.push_back( BackgroundChange(f,sBGName) ); bool bFade = PREFSMAN->m_BackgroundMode==PrefsManager::BGMODE_RANDOMMOVIES ||
PREFSMAN->m_BackgroundMode==PrefsManager::BGMODE_MOVIEVIS;
m_aBGChanges.push_back( BackgroundChange(f,sBGName,1.f,bFade) );
} }
} }
+16 -16
View File
@@ -150,16 +150,16 @@ void Course::LoadFromCRSFile( CString sPath )
Entry new_entry; Entry new_entry;
// infer entry::Type from the first param // infer entry::Type from the first param
if( sParams[1].Left(strlen("PlayersBest")) == "PlayersBest" ) if( sParams[1].Left(strlen("BEST")) == "BEST" )
{ {
new_entry.type = Entry::players_best; new_entry.type = Entry::best;
new_entry.players_index = atoi( sParams[1].Right(sParams[1].size()-strlen("PlayersBest")) ) - 1; new_entry.players_index = atoi( sParams[1].Right(sParams[1].size()-strlen("BEST")) ) - 1;
CLAMP( new_entry.players_index, 0, 500 ); CLAMP( new_entry.players_index, 0, 500 );
} }
else if( sParams[1].Left(strlen("PlayersWorst")) == "PlayersWorst" ) else if( sParams[1].Left(strlen("WORST")) == "WORST" )
{ {
new_entry.type = Entry::players_worst; new_entry.type = Entry::worst;
new_entry.players_index = atoi( sParams[1].Right(sParams[1].size()-strlen("PlayersWorst")) ) - 1; new_entry.players_index = atoi( sParams[1].Right(sParams[1].size()-strlen("WORST")) ) - 1;
CLAMP( new_entry.players_index, 0, 500 ); CLAMP( new_entry.players_index, 0, 500 );
} }
else if( sParams[1] == "*" ) else if( sParams[1] == "*" )
@@ -273,11 +273,11 @@ void Course::Save()
case Entry::random_within_group: case Entry::random_within_group:
fprintf( fp, "#SONG:%s/*", entry.group_name.GetString() ); fprintf( fp, "#SONG:%s/*", entry.group_name.GetString() );
break; break;
case Entry::players_best: case Entry::best:
fprintf( fp, "#SONG:PlayersBest%d", entry.players_index+1 ); fprintf( fp, "#SONG:BEST%d", entry.players_index+1 );
break; break;
case Entry::players_worst: case Entry::worst:
fprintf( fp, "#SONG:PlayersWorst%d", entry.players_index+1 ); fprintf( fp, "#SONG:WORST%d", entry.players_index+1 );
break; break;
default: default:
ASSERT(0); ASSERT(0);
@@ -433,8 +433,8 @@ void Course::GetStageInfo(
} }
} }
break; break;
case Entry::players_best: case Entry::best:
case Entry::players_worst: case Entry::worst:
{ {
if(vSongsByMostPlayed.size() == 0) if(vSongsByMostPlayed.size() == 0)
{ {
@@ -461,10 +461,10 @@ void Course::GetStageInfo(
switch( e.type ) switch( e.type )
{ {
case Entry::players_best: case Entry::best:
pSong = vSongsByMostPlayed[e.players_index]; pSong = vSongsByMostPlayed[e.players_index];
break; break;
case Entry::players_worst: case Entry::worst:
pSong = vSongsByMostPlayed[vSongsByMostPlayed.size()-1-e.players_index]; pSong = vSongsByMostPlayed[vSongsByMostPlayed.size()-1-e.players_index];
break; break;
default: default:
@@ -552,8 +552,8 @@ bool Course::IsMysterySong( int stage ) const
case Entry::fixed: return false; case Entry::fixed: return false;
case Entry::random: return true; case Entry::random: return true;
case Entry::random_within_group: return true; case Entry::random_within_group: return true;
case Entry::players_best: return false; case Entry::best: return false;
case Entry::players_worst: return false; case Entry::worst: return false;
default: ASSERT(0); return true; default: ASSERT(0); return true;
} }
} }
+2 -2
View File
@@ -22,13 +22,13 @@ class Notes;
class Course class Course
{ {
struct Entry { struct Entry {
enum Type { fixed, random, random_within_group, players_best, players_worst } type; enum Type { fixed, random, random_within_group, best, worst } type;
Song* pSong; // used in type=fixed Song* pSong; // used in type=fixed
CString group_name; // used in type=random_within_group CString group_name; // used in type=random_within_group
Difficulty difficulty; // = DIFFICULTY_INVALID if no difficulty specified Difficulty difficulty; // = DIFFICULTY_INVALID if no difficulty specified
int low_meter; // = -1 if no meter range specified int low_meter; // = -1 if no meter range specified
int high_meter; // = -1 if no meter range specified int high_meter; // = -1 if no meter range specified
int players_index; // ignored if type isn't a players_* int players_index; // ignored if type isn't 'best' or 'worst'
CString modifiers; // set player and song options using these CString modifiers; // set player and song options using these
Entry() Entry()