different BGAChange menus for each layer for easier editing
This commit is contained in:
@@ -144,13 +144,16 @@ void ScreenEdit::InitEditMappings()
|
|||||||
|
|
||||||
g_EditMappings.button[EDIT_BUTTON_OPEN_EDIT_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_ESC);
|
g_EditMappings.button[EDIT_BUTTON_OPEN_EDIT_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_ESC);
|
||||||
g_EditMappings.button[EDIT_BUTTON_OPEN_AREA_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_ENTER);
|
g_EditMappings.button[EDIT_BUTTON_OPEN_AREA_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_ENTER);
|
||||||
g_EditMappings.button[EDIT_BUTTON_OPEN_BGA_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cb);
|
g_EditMappings.button[EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cb);
|
||||||
|
g_EditMappings.button[EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cb);
|
||||||
|
g_EditMappings.hold[EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_LSHIFT);
|
||||||
|
g_EditMappings.hold[EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU][1] = DeviceInput(DEVICE_KEYBOARD, KEY_RSHIFT);
|
||||||
g_EditMappings.button[EDIT_BUTTON_OPEN_COURSE_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cc);
|
g_EditMappings.button[EDIT_BUTTON_OPEN_COURSE_MENU][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cc);
|
||||||
g_EditMappings.button[EDIT_BUTTON_OPEN_INPUT_HELP][0] = DeviceInput(DEVICE_KEYBOARD, KEY_F1);
|
g_EditMappings.button[EDIT_BUTTON_OPEN_INPUT_HELP][0] = DeviceInput(DEVICE_KEYBOARD, KEY_F1);
|
||||||
|
|
||||||
g_EditMappings.button[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cb);
|
g_EditMappings.button[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cb);
|
||||||
g_EditMappings.hold[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][0] = DeviceInput(DEVICE_KEYBOARD, KEY_LSHIFT);
|
g_EditMappings.hold[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][0] = DeviceInput(DEVICE_KEYBOARD, KEY_LCTRL);
|
||||||
g_EditMappings.hold[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][1] = DeviceInput(DEVICE_KEYBOARD, KEY_RSHIFT);
|
g_EditMappings.hold[EDIT_BUTTON_NEW_BAKED_RANDOM_FILE_FOR_BGCHANGE][1] = DeviceInput(DEVICE_KEYBOARD, KEY_RCTRL);
|
||||||
|
|
||||||
g_EditMappings.button[EDIT_BUTTON_PLAY_FROM_START][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cp);
|
g_EditMappings.button[EDIT_BUTTON_PLAY_FROM_START][0] = DeviceInput(DEVICE_KEYBOARD, KEY_Cp);
|
||||||
g_EditMappings.hold[EDIT_BUTTON_PLAY_FROM_START][0] = DeviceInput(DEVICE_KEYBOARD, KEY_LCTRL);
|
g_EditMappings.hold[EDIT_BUTTON_PLAY_FROM_START][0] = DeviceInput(DEVICE_KEYBOARD, KEY_LCTRL);
|
||||||
@@ -461,7 +464,7 @@ static bool EnabledIfSet2GlobalMovieSongGroup();
|
|||||||
static bool EnabledIfSet2GlobalMovieSongGroupAndGenre();
|
static bool EnabledIfSet2GlobalMovieSongGroupAndGenre();
|
||||||
static Menu g_BackgroundChange(
|
static Menu g_BackgroundChange(
|
||||||
"ScreenMiniMenuBackgroundChange",
|
"ScreenMiniMenuBackgroundChange",
|
||||||
MenuRow( ScreenEdit::layer, "Layer", true, EDIT_MODE_FULL, 0, "0","1" ),
|
MenuRow( ScreenEdit::layer, "Layer", false, EDIT_MODE_FULL, 0, "" ),
|
||||||
MenuRow( ScreenEdit::rate, "Rate", true, EDIT_MODE_FULL, 10, "0%","10%","20%","30%","40%","50%","60%","70%","80%","90%","100%","120%","140%","160%","180%","200%" ),
|
MenuRow( ScreenEdit::rate, "Rate", true, EDIT_MODE_FULL, 10, "0%","10%","20%","30%","40%","50%","60%","70%","80%","90%","100%","120%","140%","160%","180%","200%" ),
|
||||||
MenuRow( ScreenEdit::transition, "Transition", true, EDIT_MODE_FULL, 0, NULL ),
|
MenuRow( ScreenEdit::transition, "Transition", true, EDIT_MODE_FULL, 0, NULL ),
|
||||||
MenuRow( ScreenEdit::effect, "Force Effect", true, EDIT_MODE_FULL, 0, NULL ),
|
MenuRow( ScreenEdit::effect, "Force Effect", true, EDIT_MODE_FULL, 0, NULL ),
|
||||||
@@ -534,6 +537,7 @@ static Menu g_CourseMode(
|
|||||||
// menus.
|
// menus.
|
||||||
int g_iLastInsertAttackTrack = -1;
|
int g_iLastInsertAttackTrack = -1;
|
||||||
float g_fLastInsertAttackDurationSeconds = -1;
|
float g_fLastInsertAttackDurationSeconds = -1;
|
||||||
|
BackgroundLayer g_CurrentBGChangeLayer = BACKGROUND_LAYER_INVALID;
|
||||||
|
|
||||||
#define PREV_SCREEN THEME->GetMetric(m_sName,"PrevScreen")
|
#define PREV_SCREEN THEME->GetMetric(m_sName,"PrevScreen")
|
||||||
|
|
||||||
@@ -1359,7 +1363,12 @@ void ScreenEdit::InputEdit( const DeviceInput& DeviceI, const InputEventType typ
|
|||||||
case EDIT_BUTTON_PLAY_SAMPLE_MUSIC:
|
case EDIT_BUTTON_PLAY_SAMPLE_MUSIC:
|
||||||
PlayPreviewMusic();
|
PlayPreviewMusic();
|
||||||
break;
|
break;
|
||||||
case EDIT_BUTTON_OPEN_BGA_MENU:
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU:
|
||||||
|
g_CurrentBGChangeLayer = BACKGROUND_LAYER_1;
|
||||||
|
HandleMainMenuChoice( edit_bg_change );
|
||||||
|
break;
|
||||||
|
case EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU:
|
||||||
|
g_CurrentBGChangeLayer = BACKGROUND_LAYER_2;
|
||||||
HandleMainMenuChoice( edit_bg_change );
|
HandleMainMenuChoice( edit_bg_change );
|
||||||
break;
|
break;
|
||||||
case EDIT_BUTTON_OPEN_COURSE_MENU:
|
case EDIT_BUTTON_OPEN_COURSE_MENU:
|
||||||
@@ -1408,19 +1417,15 @@ void ScreenEdit::InputEdit( const DeviceInput& DeviceI, const InputEventType typ
|
|||||||
BackgroundLayer iLayer = BACKGROUND_LAYER_1;
|
BackgroundLayer iLayer = BACKGROUND_LAYER_1;
|
||||||
BackgroundChange bgChange;
|
BackgroundChange bgChange;
|
||||||
bgChange.m_fStartBeat = GAMESTATE->m_fSongBeat;
|
bgChange.m_fStartBeat = GAMESTATE->m_fSongBeat;
|
||||||
FOREACH_BackgroundLayer( l )
|
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(iLayer), bgc )
|
||||||
{
|
|
||||||
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(l), bgc )
|
|
||||||
{
|
{
|
||||||
if( bgc->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
if( bgc->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
||||||
{
|
{
|
||||||
bAlreadyBGChangeHere = true;
|
bAlreadyBGChangeHere = true;
|
||||||
iLayer = l;
|
|
||||||
bgChange = *bgc;
|
bgChange = *bgc;
|
||||||
m_pSong->GetBackgroundChanges(iLayer).erase( bgc );
|
m_pSong->GetBackgroundChanges(iLayer).erase( bgc );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
bgChange.m_def.m_sFile1 = GetOneBakedRandomFile( m_pSong );
|
bgChange.m_def.m_sFile1 = GetOneBakedRandomFile( m_pSong );
|
||||||
m_pSong->AddBackgroundChange( iLayer, bgChange );
|
m_pSong->AddBackgroundChange( iLayer, bgChange );
|
||||||
m_soundMarker.Play();
|
m_soundMarker.Play();
|
||||||
@@ -2120,6 +2125,7 @@ void ScreenEdit::HandleMainMenuChoice( MainMenuChoice c, const vector<int> &iAns
|
|||||||
//
|
//
|
||||||
vector<CString> vThrowAway;
|
vector<CString> vThrowAway;
|
||||||
|
|
||||||
|
g_BackgroundChange.rows[layer].choices[0] = ssprintf("%d",g_CurrentBGChangeLayer);
|
||||||
BackgroundUtil::GetBackgroundTransitions( "", vThrowAway, g_BackgroundChange.rows[transition].choices );
|
BackgroundUtil::GetBackgroundTransitions( "", vThrowAway, g_BackgroundChange.rows[transition].choices );
|
||||||
g_BackgroundChange.rows[transition].choices.insert( g_BackgroundChange.rows[transition].choices.begin(), "" ); // add "no transition"
|
g_BackgroundChange.rows[transition].choices.insert( g_BackgroundChange.rows[transition].choices.begin(), "" ); // add "no transition"
|
||||||
BackgroundUtil::GetBackgroundEffects( "", vThrowAway, g_BackgroundChange.rows[effect].choices );
|
BackgroundUtil::GetBackgroundEffects( "", vThrowAway, g_BackgroundChange.rows[effect].choices );
|
||||||
@@ -2147,20 +2153,15 @@ void ScreenEdit::HandleMainMenuChoice( MainMenuChoice c, const vector<int> &iAns
|
|||||||
// Fill in line's enabled/disabled
|
// Fill in line's enabled/disabled
|
||||||
//
|
//
|
||||||
bool bAlreadyBGChangeHere = false;
|
bool bAlreadyBGChangeHere = false;
|
||||||
int iLayer = 0;
|
|
||||||
BackgroundChange bgChange;
|
BackgroundChange bgChange;
|
||||||
FOREACH_BackgroundLayer( l )
|
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(g_CurrentBGChangeLayer), bgc )
|
||||||
{
|
|
||||||
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(l), bgc )
|
|
||||||
{
|
{
|
||||||
if( bgc->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
if( bgc->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
||||||
{
|
{
|
||||||
bAlreadyBGChangeHere = true;
|
bAlreadyBGChangeHere = true;
|
||||||
iLayer = l;
|
|
||||||
bgChange = *bgc;
|
bgChange = *bgc;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
#define FILL_ENABLED( x ) g_BackgroundChange.rows[x].bEnabled = g_BackgroundChange.rows[x].choices.size() > 0;
|
#define FILL_ENABLED( x ) g_BackgroundChange.rows[x].bEnabled = g_BackgroundChange.rows[x].choices.size() > 0;
|
||||||
FILL_ENABLED( transition );
|
FILL_ENABLED( transition );
|
||||||
@@ -2184,7 +2185,6 @@ void ScreenEdit::HandleMainMenuChoice( MainMenuChoice c, const vector<int> &iAns
|
|||||||
|
|
||||||
|
|
||||||
// set default choices
|
// set default choices
|
||||||
g_BackgroundChange.rows[layer]. SetDefaultChoiceIfPresent( ssprintf("%d",iLayer) );
|
|
||||||
g_BackgroundChange.rows[rate]. SetDefaultChoiceIfPresent( ssprintf("%2.0f%%",bgChange.m_fRate*100) );
|
g_BackgroundChange.rows[rate]. SetDefaultChoiceIfPresent( ssprintf("%2.0f%%",bgChange.m_fRate*100) );
|
||||||
g_BackgroundChange.rows[transition]. SetDefaultChoiceIfPresent( bgChange.m_sTransition );
|
g_BackgroundChange.rows[transition]. SetDefaultChoiceIfPresent( bgChange.m_sTransition );
|
||||||
g_BackgroundChange.rows[effect]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sEffect );
|
g_BackgroundChange.rows[effect]. SetDefaultChoiceIfPresent( bgChange.m_def.m_sEffect );
|
||||||
@@ -2716,16 +2716,15 @@ void ScreenEdit::HandleSongInformationChoice( SongInformationChoice c, const vec
|
|||||||
|
|
||||||
void ScreenEdit::HandleBGChangeChoice( BGChangeChoice c, const vector<int> &iAnswers )
|
void ScreenEdit::HandleBGChangeChoice( BGChangeChoice c, const vector<int> &iAnswers )
|
||||||
{
|
{
|
||||||
BackgroundLayer iLayer = (BackgroundLayer)atoi( g_BackgroundChange.rows[layer].choices[iAnswers[layer]] );
|
|
||||||
BackgroundChange newChange;
|
BackgroundChange newChange;
|
||||||
|
|
||||||
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(iLayer), iter )
|
FOREACH( BackgroundChange, m_pSong->GetBackgroundChanges(g_CurrentBGChangeLayer), iter )
|
||||||
{
|
{
|
||||||
if( iter->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
if( iter->m_fStartBeat == GAMESTATE->m_fSongBeat )
|
||||||
{
|
{
|
||||||
newChange = *iter;
|
newChange = *iter;
|
||||||
// delete the old change. We'll add a new one below.
|
// delete the old change. We'll add a new one below.
|
||||||
m_pSong->GetBackgroundChanges(iLayer).erase( iter );
|
m_pSong->GetBackgroundChanges(g_CurrentBGChangeLayer).erase( iter );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2776,7 +2775,8 @@ void ScreenEdit::HandleBGChangeChoice( BGChangeChoice c, const vector<int> &iAns
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_pSong->AddBackgroundChange( iLayer, newChange );
|
m_pSong->AddBackgroundChange( g_CurrentBGChangeLayer, newChange );
|
||||||
|
g_CurrentBGChangeLayer = BACKGROUND_LAYER_INVALID;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScreenEdit::SetupCourseAttacks()
|
void ScreenEdit::SetupCourseAttacks()
|
||||||
|
|||||||
@@ -59,7 +59,8 @@ enum EditButton
|
|||||||
|
|
||||||
EDIT_BUTTON_OPEN_EDIT_MENU,
|
EDIT_BUTTON_OPEN_EDIT_MENU,
|
||||||
EDIT_BUTTON_OPEN_AREA_MENU,
|
EDIT_BUTTON_OPEN_AREA_MENU,
|
||||||
EDIT_BUTTON_OPEN_BGA_MENU,
|
EDIT_BUTTON_OPEN_BGCHANGE_LAYER1_MENU,
|
||||||
|
EDIT_BUTTON_OPEN_BGCHANGE_LAYER2_MENU,
|
||||||
EDIT_BUTTON_OPEN_COURSE_MENU,
|
EDIT_BUTTON_OPEN_COURSE_MENU,
|
||||||
EDIT_BUTTON_OPEN_INPUT_HELP,
|
EDIT_BUTTON_OPEN_INPUT_HELP,
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,8 @@ enum BackgroundLayer
|
|||||||
{
|
{
|
||||||
BACKGROUND_LAYER_1,
|
BACKGROUND_LAYER_1,
|
||||||
BACKGROUND_LAYER_2,
|
BACKGROUND_LAYER_2,
|
||||||
NUM_BackgroundLayer
|
NUM_BackgroundLayer,
|
||||||
|
BACKGROUND_LAYER_INVALID
|
||||||
};
|
};
|
||||||
#define FOREACH_BackgroundLayer( bl ) FOREACH_ENUM( BackgroundLayer, NUM_BackgroundLayer, bl )
|
#define FOREACH_BackgroundLayer( bl ) FOREACH_ENUM( BackgroundLayer, NUM_BackgroundLayer, bl )
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user