add NoteDataUtil::LoadTransformedLightsFromTwo

This commit is contained in:
Glenn Maynard
2005-05-04 08:18:37 +00:00
parent 82fb85fe1e
commit fa758e9a71
2 changed files with 32 additions and 1 deletions
+31 -1
View File
@@ -487,7 +487,7 @@ int FindLongestOverlappingHoldNoteForAnyTrack( const NoteData &in, int iRow )
void LightTransformHelper( const NoteData &in, NoteData &out, const vector<int> &aiTracks )
{
for( unsigned i = 0; i < aiTracks.size(); ++i )
ASSERT_M( aiTracks[i] < out.GetNumTracks(), ssprintf("%i, %i", aiTracks[i], out.GetNumTracks) );
ASSERT_M( aiTracks[i] < out.GetNumTracks(), ssprintf("%i, %i", aiTracks[i], out.GetNumTracks()) );
FOREACH_NONEMPTY_ROW_ALL_TRACKS( in, r )
{
@@ -542,6 +542,36 @@ void NoteDataUtil::LoadTransformedLights( const NoteData &in, NoteData &out, int
LightTransformHelper( in, out, aiTracks );
}
/* This transform is specific to STEPS_TYPE_LIGHTS_CABINET. */
#include "LightsManager.h" // for LIGHT_*
void NoteDataUtil::LoadTransformedLightsFromTwo( const NoteData &marquee, const NoteData &bass, NoteData &out )
{
ASSERT( marquee.GetNumTracks() >= 4 );
ASSERT( bass.GetNumTracks() >= 1 );
/* For each track in "marquee", enable a track in the marquee lights. This will
* reinit out. */
{
NoteData transformed_marquee;
transformed_marquee.CopyAll( marquee );
Wide( transformed_marquee );
const int iOriginalTrackToTakeFrom[NUM_CABINET_LIGHTS] = { 0, 1, 2, 3, -1, -1, -1, -1 };
out.LoadTransformed( transformed_marquee, NUM_CABINET_LIGHTS, iOriginalTrackToTakeFrom );
}
/* For each track in "bass", enable the bass lights. */
{
vector<int> aiTracks;
aiTracks.push_back( LIGHT_BASS_LEFT );
aiTracks.push_back( LIGHT_BASS_RIGHT );
LightTransformHelper( bass, out, aiTracks );
}
/* Delete all mines. */
NoteDataUtil::RemoveMines( out );
}
void NoteDataUtil::CalculateRadarValues( const NoteData &in, float fSongSeconds, RadarValues& out )
{
// The for loop and the assert are used to ensure that all fields of