[splittiming] BG stuff in Song Timing only.
Alright...let's see how badly I broke this.
This commit is contained in:
@@ -1947,7 +1947,7 @@ Decrease/increase music offset=Decrease/increase music offset
|
|||||||
Decrease/increase sample music start=Decrease/increase sample music start
|
Decrease/increase sample music start=Decrease/increase sample music start
|
||||||
Decrease/increase sample music length=Decrease/increase sample music length
|
Decrease/increase sample music length=Decrease/increase sample music length
|
||||||
Play sample music=Play sample music
|
Play sample music=Play sample music
|
||||||
Add/Edit Background Change=Add/Edit Background Change
|
Add/Edit Background Change=Add/Edit Background Change (Song Timing Only)
|
||||||
Insert beat and shift down=Insert beat and shift down
|
Insert beat and shift down=Insert beat and shift down
|
||||||
Shift BPM changes and stops down one beat=Shift BPM changes and stops down one beat
|
Shift BPM changes and stops down one beat=Shift BPM changes and stops down one beat
|
||||||
Delete beat and shift up=Delete beat and shift up
|
Delete beat and shift up=Delete beat and shift up
|
||||||
|
|||||||
+91
-88
@@ -1798,101 +1798,104 @@ void ScreenEdit::InputEdit( const InputEventPlus &input, EditButton EditB )
|
|||||||
break;
|
break;
|
||||||
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU:
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU:
|
||||||
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU:
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU:
|
||||||
switch( EditB )
|
if( !GAMESTATE->m_bIsEditorStepTiming )
|
||||||
{
|
{
|
||||||
DEFAULT_FAIL( EditB );
|
switch( EditB )
|
||||||
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU: g_CurrentBGChangeLayer = BACKGROUND_LAYER_1; break;
|
|
||||||
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU: g_CurrentBGChangeLayer = BACKGROUND_LAYER_2; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
// Fill in option names
|
|
||||||
vector<RString> vThrowAway;
|
|
||||||
|
|
||||||
MenuDef &menu = g_BackgroundChange;
|
|
||||||
|
|
||||||
menu.rows[layer].choices[0] = ssprintf("%d",g_CurrentBGChangeLayer);
|
|
||||||
BackgroundUtil::GetBackgroundTransitions( "", vThrowAway, menu.rows[transition].choices );
|
|
||||||
g_BackgroundChange.rows[transition].choices.insert( g_BackgroundChange.rows[transition].choices.begin(), "None" ); // add "no transition"
|
|
||||||
BackgroundUtil::GetBackgroundEffects( "", vThrowAway, menu.rows[effect].choices );
|
|
||||||
menu.rows[effect].choices.insert( menu.rows[effect].choices.begin(), "Default" ); // add "default effect"
|
|
||||||
|
|
||||||
BackgroundUtil::GetSongBGAnimations( m_pSong, "", vThrowAway, menu.rows[file1_song_bganimation].choices );
|
|
||||||
BackgroundUtil::GetSongMovies( m_pSong, "", vThrowAway, menu.rows[file1_song_movie].choices );
|
|
||||||
BackgroundUtil::GetSongBitmaps( m_pSong, "", vThrowAway, menu.rows[file1_song_still].choices );
|
|
||||||
BackgroundUtil::GetGlobalBGAnimations( m_pSong, "", vThrowAway, menu.rows[file1_global_bganimation].choices ); // NULL to get all background files
|
|
||||||
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie].choices, false, false ); // all backgrounds
|
|
||||||
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie_song_group].choices, false, true ); // song group's backgrounds
|
|
||||||
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie_song_group_and_genre].choices, true, true ); // song group and genre's backgrounds
|
|
||||||
|
|
||||||
menu.rows[file2_type].choices = menu.rows[file1_type].choices;
|
|
||||||
menu.rows[file2_song_bganimation].choices = menu.rows[file1_song_bganimation].choices;
|
|
||||||
menu.rows[file2_song_movie].choices = menu.rows[file1_song_movie].choices;
|
|
||||||
menu.rows[file2_song_still].choices = menu.rows[file1_song_still].choices;
|
|
||||||
menu.rows[file2_global_bganimation].choices = menu.rows[file1_global_bganimation].choices;
|
|
||||||
menu.rows[file2_global_movie].choices = menu.rows[file1_global_movie].choices;
|
|
||||||
menu.rows[file2_global_movie_song_group].choices = menu.rows[file1_global_movie_song_group].choices;
|
|
||||||
menu.rows[file2_global_movie_song_group_and_genre].choices = menu.rows[file1_global_movie_song_group_and_genre].choices;
|
|
||||||
|
|
||||||
|
|
||||||
// Fill in lines enabled/disabled
|
|
||||||
bool bAlreadyBGChangeHere = false;
|
|
||||||
BackgroundChange bgChange;
|
|
||||||
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(g_CurrentBGChangeLayer), bgc )
|
|
||||||
{
|
{
|
||||||
if( bgc->m_fStartBeat == GAMESTATE->m_pPlayerState[PLAYER_1]->m_Position.m_fSongBeat )
|
DEFAULT_FAIL( EditB );
|
||||||
{
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU: g_CurrentBGChangeLayer = BACKGROUND_LAYER_1; break;
|
||||||
bAlreadyBGChangeHere = true;
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU: g_CurrentBGChangeLayer = BACKGROUND_LAYER_2; break;
|
||||||
bgChange = *bgc;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
// Fill in option names
|
||||||
|
vector<RString> vThrowAway;
|
||||||
|
|
||||||
|
MenuDef &menu = g_BackgroundChange;
|
||||||
|
|
||||||
|
menu.rows[layer].choices[0] = ssprintf("%d",g_CurrentBGChangeLayer);
|
||||||
|
BackgroundUtil::GetBackgroundTransitions( "", vThrowAway, menu.rows[transition].choices );
|
||||||
|
g_BackgroundChange.rows[transition].choices.insert( g_BackgroundChange.rows[transition].choices.begin(), "None" ); // add "no transition"
|
||||||
|
BackgroundUtil::GetBackgroundEffects( "", vThrowAway, menu.rows[effect].choices );
|
||||||
|
menu.rows[effect].choices.insert( menu.rows[effect].choices.begin(), "Default" ); // add "default effect"
|
||||||
|
|
||||||
|
BackgroundUtil::GetSongBGAnimations( m_pSong, "", vThrowAway, menu.rows[file1_song_bganimation].choices );
|
||||||
|
BackgroundUtil::GetSongMovies( m_pSong, "", vThrowAway, menu.rows[file1_song_movie].choices );
|
||||||
|
BackgroundUtil::GetSongBitmaps( m_pSong, "", vThrowAway, menu.rows[file1_song_still].choices );
|
||||||
|
BackgroundUtil::GetGlobalBGAnimations( m_pSong, "", vThrowAway, menu.rows[file1_global_bganimation].choices ); // NULL to get all background files
|
||||||
|
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie].choices, false, false ); // all backgrounds
|
||||||
|
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie_song_group].choices, false, true ); // song group's backgrounds
|
||||||
|
BackgroundUtil::GetGlobalRandomMovies( m_pSong, "", vThrowAway, menu.rows[file1_global_movie_song_group_and_genre].choices, true, true ); // song group and genre's backgrounds
|
||||||
|
|
||||||
|
menu.rows[file2_type].choices = menu.rows[file1_type].choices;
|
||||||
|
menu.rows[file2_song_bganimation].choices = menu.rows[file1_song_bganimation].choices;
|
||||||
|
menu.rows[file2_song_movie].choices = menu.rows[file1_song_movie].choices;
|
||||||
|
menu.rows[file2_song_still].choices = menu.rows[file1_song_still].choices;
|
||||||
|
menu.rows[file2_global_bganimation].choices = menu.rows[file1_global_bganimation].choices;
|
||||||
|
menu.rows[file2_global_movie].choices = menu.rows[file1_global_movie].choices;
|
||||||
|
menu.rows[file2_global_movie_song_group].choices = menu.rows[file1_global_movie_song_group].choices;
|
||||||
|
menu.rows[file2_global_movie_song_group_and_genre].choices = menu.rows[file1_global_movie_song_group_and_genre].choices;
|
||||||
|
|
||||||
|
|
||||||
|
// Fill in lines enabled/disabled
|
||||||
|
bool bAlreadyBGChangeHere = false;
|
||||||
|
BackgroundChange bgChange;
|
||||||
|
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(g_CurrentBGChangeLayer), bgc )
|
||||||
|
{
|
||||||
|
if( bgc->m_fStartBeat == GAMESTATE->m_pPlayerState[PLAYER_1]->m_Position.m_fSongBeat )
|
||||||
|
{
|
||||||
|
bAlreadyBGChangeHere = true;
|
||||||
|
bgChange = *bgc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#define FILL_ENABLED( x ) menu.rows[x].bEnabled = menu.rows[x].choices.size() > 0;
|
#define FILL_ENABLED( x ) menu.rows[x].bEnabled = menu.rows[x].choices.size() > 0;
|
||||||
FILL_ENABLED( transition );
|
FILL_ENABLED( transition );
|
||||||
FILL_ENABLED( effect );
|
FILL_ENABLED( effect );
|
||||||
FILL_ENABLED( file1_song_bganimation );
|
FILL_ENABLED( file1_song_bganimation );
|
||||||
FILL_ENABLED( file1_song_movie );
|
FILL_ENABLED( file1_song_movie );
|
||||||
FILL_ENABLED( file1_song_still );
|
FILL_ENABLED( file1_song_still );
|
||||||
FILL_ENABLED( file1_global_bganimation );
|
FILL_ENABLED( file1_global_bganimation );
|
||||||
FILL_ENABLED( file1_global_movie );
|
FILL_ENABLED( file1_global_movie );
|
||||||
FILL_ENABLED( file1_global_movie_song_group );
|
FILL_ENABLED( file1_global_movie_song_group );
|
||||||
FILL_ENABLED( file1_global_movie_song_group_and_genre );
|
FILL_ENABLED( file1_global_movie_song_group_and_genre );
|
||||||
FILL_ENABLED( file2_song_bganimation );
|
FILL_ENABLED( file2_song_bganimation );
|
||||||
FILL_ENABLED( file2_song_movie );
|
FILL_ENABLED( file2_song_movie );
|
||||||
FILL_ENABLED( file2_song_still );
|
FILL_ENABLED( file2_song_still );
|
||||||
FILL_ENABLED( file2_global_bganimation );
|
FILL_ENABLED( file2_global_bganimation );
|
||||||
FILL_ENABLED( file2_global_movie );
|
FILL_ENABLED( file2_global_movie );
|
||||||
FILL_ENABLED( file2_global_movie_song_group );
|
FILL_ENABLED( file2_global_movie_song_group );
|
||||||
FILL_ENABLED( file2_global_movie_song_group_and_genre );
|
FILL_ENABLED( file2_global_movie_song_group_and_genre );
|
||||||
#undef FILL_ENABLED
|
#undef FILL_ENABLED
|
||||||
menu.rows[delete_change].bEnabled = bAlreadyBGChangeHere;
|
menu.rows[delete_change].bEnabled = bAlreadyBGChangeHere;
|
||||||
|
|
||||||
// set default choices
|
// set default choices
|
||||||
menu.rows[rate]. SetDefaultChoiceIfPresent( ssprintf("%2.0f%%",bgChange.m_fRate*100) );
|
menu.rows[rate]. SetDefaultChoiceIfPresent( ssprintf("%2.0f%%",bgChange.m_fRate*100) );
|
||||||
menu.rows[transition]. SetDefaultChoiceIfPresent( bgChange.m_sTransition );
|
menu.rows[transition]. SetDefaultChoiceIfPresent( bgChange.m_sTransition );
|
||||||
menu.rows[effect]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sEffect );
|
menu.rows[effect]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sEffect );
|
||||||
menu.rows[file1_type].iDefaultChoice = none;
|
menu.rows[file1_type].iDefaultChoice = none;
|
||||||
if( bgChange.m_def.m_sFile1 == RANDOM_BACKGROUND_FILE ) menu.rows[file1_type].iDefaultChoice = dynamic_random;
|
if( bgChange.m_def.m_sFile1 == RANDOM_BACKGROUND_FILE ) menu.rows[file1_type].iDefaultChoice = dynamic_random;
|
||||||
if( menu.rows[file1_song_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_bganimation;
|
if( menu.rows[file1_song_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_bganimation;
|
||||||
if( menu.rows[file1_song_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_movie;
|
if( menu.rows[file1_song_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_movie;
|
||||||
if( menu.rows[file1_song_still]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_bitmap;
|
if( menu.rows[file1_song_still]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = song_bitmap;
|
||||||
if( menu.rows[file1_global_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_bganimation;
|
if( menu.rows[file1_global_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_bganimation;
|
||||||
if( menu.rows[file1_global_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie;
|
if( menu.rows[file1_global_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie;
|
||||||
if( menu.rows[file1_global_movie_song_group]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie_song_group;
|
if( menu.rows[file1_global_movie_song_group]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie_song_group;
|
||||||
if( menu.rows[file1_global_movie_song_group_and_genre]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie_song_group_and_genre;
|
if( menu.rows[file1_global_movie_song_group_and_genre]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile1 ) ) menu.rows[file1_type].iDefaultChoice = global_movie_song_group_and_genre;
|
||||||
menu.rows[file2_type].iDefaultChoice = none;
|
menu.rows[file2_type].iDefaultChoice = none;
|
||||||
if( bgChange.m_def.m_sFile2 == RANDOM_BACKGROUND_FILE ) menu.rows[file2_type].iDefaultChoice = dynamic_random;
|
if( bgChange.m_def.m_sFile2 == RANDOM_BACKGROUND_FILE ) menu.rows[file2_type].iDefaultChoice = dynamic_random;
|
||||||
if( menu.rows[file2_song_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_bganimation;
|
if( menu.rows[file2_song_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_bganimation;
|
||||||
if( menu.rows[file2_song_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_movie;
|
if( menu.rows[file2_song_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_movie;
|
||||||
if( menu.rows[file2_song_still]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_bitmap;
|
if( menu.rows[file2_song_still]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = song_bitmap;
|
||||||
if( menu.rows[file2_global_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_bganimation;
|
if( menu.rows[file2_global_bganimation]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_bganimation;
|
||||||
if( menu.rows[file2_global_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie;
|
if( menu.rows[file2_global_movie]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie;
|
||||||
if( menu.rows[file2_global_movie_song_group]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie_song_group;
|
if( menu.rows[file2_global_movie_song_group]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie_song_group;
|
||||||
if( menu.rows[file2_global_movie_song_group_and_genre]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie_song_group_and_genre;
|
if( menu.rows[file2_global_movie_song_group_and_genre]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sFile2 ) ) menu.rows[file2_type].iDefaultChoice = global_movie_song_group_and_genre;
|
||||||
menu.rows[color1]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sColor1 );
|
menu.rows[color1]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sColor1 );
|
||||||
menu.rows[color2]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sColor2 );
|
menu.rows[color2]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sColor2 );
|
||||||
|
|
||||||
EditMiniMenu( &g_BackgroundChange, SM_BackFromBGChange );
|
EditMiniMenu( &g_BackgroundChange, SM_BackFromBGChange );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -2718,7 +2721,7 @@ void ScreenEdit::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
else if ( SM == SM_BackFromLabelChange )
|
else if ( SM == SM_BackFromLabelChange )
|
||||||
{
|
{
|
||||||
RString sLabel = ScreenTextEntry::s_sLastAnswer;
|
RString sLabel = ScreenTextEntry::s_sLastAnswer;
|
||||||
if ( !m_pSteps->m_Timing.DoesLabelExist(sLabel) )
|
if ( !GetAppropriateTiming().DoesLabelExist(sLabel) )
|
||||||
{
|
{
|
||||||
sLabel.Replace("=", "_");
|
sLabel.Replace("=", "_");
|
||||||
sLabel.Replace(",", "_");
|
sLabel.Replace(",", "_");
|
||||||
|
|||||||
Reference in New Issue
Block a user