Added Swap Up/Down option to Edit Alter Menu.
This commit is contained in:
@@ -791,6 +791,7 @@ SuddenOffset=Sudden Offset
|
||||
SuperShuffle=Cement Mixer
|
||||
SoftShuffle=Soft Shuffle
|
||||
Swap Sides=Swap Sides
|
||||
Swap Up/Down=Swap Up/Down
|
||||
Sync Machine=Sync Machine
|
||||
Sync Song=Sync Song
|
||||
Sync Tempo=Sync Tempo
|
||||
|
||||
@@ -1453,6 +1453,49 @@ static void GetTrackMapping( StepsType st, NoteDataUtil::TrackMapping tt, int Nu
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case NoteDataUtil::swap_up_down:
|
||||
switch(st)
|
||||
{
|
||||
case StepsType_dance_single:
|
||||
case StepsType_dance_double:
|
||||
case StepsType_dance_couple:
|
||||
case StepsType_dance_routine:
|
||||
iTakeFromTrack[0]= 0;
|
||||
iTakeFromTrack[1]= 2;
|
||||
iTakeFromTrack[2]= 1;
|
||||
iTakeFromTrack[3]= 3;
|
||||
iTakeFromTrack[4]= 4;
|
||||
iTakeFromTrack[5]= 6;
|
||||
iTakeFromTrack[6]= 5;
|
||||
iTakeFromTrack[7]= 7;
|
||||
break;
|
||||
case StepsType_pump_single:
|
||||
case StepsType_pump_double:
|
||||
case StepsType_pump_couple:
|
||||
case StepsType_pump_routine:
|
||||
iTakeFromTrack[0]= 1;
|
||||
iTakeFromTrack[1]= 0;
|
||||
iTakeFromTrack[2]= 2;
|
||||
iTakeFromTrack[3]= 4;
|
||||
iTakeFromTrack[4]= 3;
|
||||
iTakeFromTrack[5]= 6;
|
||||
iTakeFromTrack[6]= 5;
|
||||
iTakeFromTrack[7]= 7;
|
||||
iTakeFromTrack[8]= 9;
|
||||
iTakeFromTrack[9]= 8;
|
||||
break;
|
||||
case StepsType_pump_halfdouble:
|
||||
iTakeFromTrack[0]= 0;
|
||||
iTakeFromTrack[1]= 2;
|
||||
iTakeFromTrack[2]= 1;
|
||||
iTakeFromTrack[3]= 4;
|
||||
iTakeFromTrack[4]= 3;
|
||||
iTakeFromTrack[5]= 5;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
@@ -2221,6 +2264,16 @@ void NoteDataUtil::ShiftRight( NoteData &inout )
|
||||
ShiftTracks( inout, +1 );
|
||||
}
|
||||
|
||||
void NoteDataUtil::SwapUpDown(NoteData& inout, StepsType st)
|
||||
{
|
||||
int TakeFrom[MAX_NOTE_TRACKS];
|
||||
GetTrackMapping(st, NoteDataUtil::swap_up_down, inout.GetNumTracks(), TakeFrom);
|
||||
NoteData tempND;
|
||||
tempND.LoadTransformed(inout, inout.GetNumTracks(), TakeFrom);
|
||||
inout.CopyAll(tempND);
|
||||
inout.RevalidateATIs(vector<int>(), false);
|
||||
}
|
||||
|
||||
|
||||
struct ValidRow
|
||||
{
|
||||
|
||||
@@ -124,6 +124,7 @@ namespace NoteDataUtil
|
||||
soft_shuffle,
|
||||
super_shuffle,
|
||||
stomp,
|
||||
swap_up_down,
|
||||
NUM_TRACK_MAPPINGS
|
||||
};
|
||||
void Turn( NoteData &inout, StepsType st, TrackMapping tt, int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW );
|
||||
@@ -165,6 +166,7 @@ namespace NoteDataUtil
|
||||
void ShiftTracks( NoteData &inout, int iShiftBy );
|
||||
void ShiftLeft( NoteData &inout );
|
||||
void ShiftRight( NoteData &inout );
|
||||
void SwapUpDown( NoteData &inout, StepsType st );
|
||||
|
||||
void SnapToNearestNoteType( NoteData &inout, NoteType nt1, NoteType nt2, int iStartIndex, int iEndIndex );
|
||||
|
||||
|
||||
+2
-1
@@ -616,7 +616,7 @@ static MenuDef g_AlterMenu(
|
||||
MenuRowDef(ScreenEdit::alter, "Alter", true,
|
||||
EditMode_Practice, true, true, 0, "Autogen To Fill Width","Backwards","Swap Sides",
|
||||
"Copy Left To Right","Copy Right To Left","Clear Left","Clear Right",
|
||||
"Collapse To One","Collapse Left","Shift Left","Shift Right" ),
|
||||
"Collapse To One","Collapse Left","Shift Left","Shift Right", "Swap Up/Down" ),
|
||||
MenuRowDef(ScreenEdit::tempo, "Tempo", true,
|
||||
EditMode_Full, true, true, 0, "Compress 2x","Compress 3->2",
|
||||
"Compress 4->3","Expand 3->4","Expand 2->3","Expand 2x" ),
|
||||
@@ -4676,6 +4676,7 @@ void ScreenEdit::HandleAlterMenuChoice(AlterMenuChoice c, const vector<int> &iAn
|
||||
case collapse_left: NoteDataUtil::CollapseLeft( m_Clipboard ); break;
|
||||
case shift_left: NoteDataUtil::ShiftLeft( m_Clipboard ); break;
|
||||
case shift_right: NoteDataUtil::ShiftRight( m_Clipboard ); break;
|
||||
case swap_up_down: NoteDataUtil::SwapUpDown(m_Clipboard, GAMESTATE->m_pCurSteps[0]->m_StepsType); break;
|
||||
}
|
||||
|
||||
HandleAreaMenuChoice( paste_at_begin_marker, false );
|
||||
|
||||
@@ -501,6 +501,7 @@ public:
|
||||
collapse_left,
|
||||
shift_left,
|
||||
shift_right,
|
||||
swap_up_down,
|
||||
NUM_ALTER_TYPES
|
||||
};
|
||||
enum TempoType
|
||||
|
||||
Reference in New Issue
Block a user