fix Dancing Characters option setting "Select"
This commit is contained in:
@@ -214,8 +214,8 @@ void DancingCharacters::DrawPrimitives()
|
|||||||
bool bDanger = m_bDrawDangerLight;
|
bool bDanger = m_bDrawDangerLight;
|
||||||
|
|
||||||
DISPLAY->SetLighting( true );
|
DISPLAY->SetLighting( true );
|
||||||
RageColor ambient = bFailed ? RageColor(0.2f,0.0f,0.0f,1) : (bDanger ? RageColor(0.4f,0.0f,0.0f,1) : RageColor(0.4f,0.4f,0.4f,1));
|
RageColor ambient = bFailed ? RageColor(0.2f,0.1f,0.1f,1) : (bDanger ? RageColor(0.4f,0.1f,0.1f,1) : RageColor(0.4f,0.4f,0.4f,1));
|
||||||
RageColor diffuse = bFailed ? RageColor(0.4f,0.0f,0.0f,1) : (bDanger ? RageColor(0.8f,0.0f,0.0f,1) : RageColor(0.8f,0.8f,0.8f,1));
|
RageColor diffuse = bFailed ? RageColor(0.4f,0.1f,0.1f,1) : (bDanger ? RageColor(0.8f,0.1f,0.1f,1) : RageColor(0.8f,0.8f,0.8f,1));
|
||||||
RageColor specular = RageColor(0.8f,0.8f,0.8f,1);
|
RageColor specular = RageColor(0.8f,0.8f,0.8f,1);
|
||||||
|
|
||||||
DISPLAY->SetLightDirectional(
|
DISPLAY->SetLightDirectional(
|
||||||
|
|||||||
@@ -44,8 +44,9 @@
|
|||||||
#define ICONS_OFF_COMMAND( p ) THEME->GetMetric ("ScreenSelectCharacter",ssprintf("IconsP%dOffCommand",p+1))
|
#define ICONS_OFF_COMMAND( p ) THEME->GetMetric ("ScreenSelectCharacter",ssprintf("IconsP%dOffCommand",p+1))
|
||||||
#define HELP_TEXT THEME->GetMetric ("ScreenSelectCharacter","HelpText")
|
#define HELP_TEXT THEME->GetMetric ("ScreenSelectCharacter","HelpText")
|
||||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectCharacter","TimerSeconds")
|
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectCharacter","TimerSeconds")
|
||||||
#define NEXT_SCREEN THEME->GetMetric ("ScreenSelectCharacter","NextScreen")
|
|
||||||
#define SLEEP_AFTER_TWEEN_OFF_SECONDS THEME->GetMetricF("ScreenSelectCharacter","SleepAfterTweenOffSeconds")
|
#define SLEEP_AFTER_TWEEN_OFF_SECONDS THEME->GetMetricF("ScreenSelectCharacter","SleepAfterTweenOffSeconds")
|
||||||
|
#define PREV_SCREEN( play_mode ) THEME->GetMetric ("ScreenSelectCharacter","PrevScreen"+Capitalize(PlayModeToString(play_mode)))
|
||||||
|
#define NEXT_SCREEN( play_mode ) THEME->GetMetric ("ScreenSelectCharacter","NextScreen"+Capitalize(PlayModeToString(play_mode)))
|
||||||
|
|
||||||
#define LEVEL_CURSOR_X( p, l ) ( ICONS_START_X(p)+ICONS_SPACING_X*((NUM_ATTACKS_PER_LEVEL-1)/2.f) )
|
#define LEVEL_CURSOR_X( p, l ) ( ICONS_START_X(p)+ICONS_SPACING_X*((NUM_ATTACKS_PER_LEVEL-1)/2.f) )
|
||||||
#define LEVEL_CURSOR_Y( p, l ) ( ICONS_START_Y(p)+ICONS_SPACING_Y*l )
|
#define LEVEL_CURSOR_Y( p, l ) ( ICONS_START_Y(p)+ICONS_SPACING_Y*l )
|
||||||
@@ -53,16 +54,33 @@
|
|||||||
const PlayerNumber CPU_PLAYER[NUM_PLAYERS] = { PLAYER_2, PLAYER_1 };
|
const PlayerNumber CPU_PLAYER[NUM_PLAYERS] = { PLAYER_2, PLAYER_1 };
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ScreenSelectCharacter::ScreenSelectCharacter() : Screen("ScreenSelectCharacter")
|
ScreenSelectCharacter::ScreenSelectCharacter() : Screen("ScreenSelectCharacter")
|
||||||
{
|
{
|
||||||
LOG->Trace( "ScreenSelectCharacter::ScreenSelectCharacter()" );
|
LOG->Trace( "ScreenSelectCharacter::ScreenSelectCharacter()" );
|
||||||
|
|
||||||
if( GAMESTATE->m_pCharacters.empty() ||
|
|
||||||
(GAMESTATE->m_PlayMode != PLAY_MODE_BATTLE && GAMESTATE->m_PlayMode != PLAY_MODE_RAVE && PREFSMAN->m_ShowDancingCharacters != PrefsManager::CO_SELECT ))
|
switch( GAMESTATE->m_PlayMode )
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Must have at least one character installed to play battle or rave
|
||||||
|
//
|
||||||
|
case PLAY_MODE_BATTLE:
|
||||||
|
case PLAY_MODE_RAVE:
|
||||||
|
SCREENMAN->Prompt( SM_GoToPrevScreen, "No characters are installed.\n\nAt least one character must be installed\nto play this mode." );
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
//
|
||||||
|
//
|
||||||
|
if( GAMESTATE->m_pCharacters.empty() || // Bail early if no characters
|
||||||
|
PREFSMAN->m_ShowDancingCharacters != PrefsManager::CO_SELECT ) // Bail early if this screen should be hidden
|
||||||
{
|
{
|
||||||
HandleScreenMessage( SM_GoToNextScreen );
|
HandleScreenMessage( SM_GoToNextScreen );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
m_Menu.Load( "ScreenSelectCharacter" );
|
m_Menu.Load( "ScreenSelectCharacter" );
|
||||||
@@ -184,10 +202,10 @@ void ScreenSelectCharacter::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
MenuStart(PLAYER_1);
|
MenuStart(PLAYER_1);
|
||||||
break;
|
break;
|
||||||
case SM_GoToPrevScreen:
|
case SM_GoToPrevScreen:
|
||||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
SCREENMAN->SetNewScreen( PREV_SCREEN(GAMESTATE->m_PlayMode) );
|
||||||
break;
|
break;
|
||||||
case SM_GoToNextScreen:
|
case SM_GoToNextScreen:
|
||||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
SCREENMAN->SetNewScreen( NEXT_SCREEN(GAMESTATE->m_PlayMode) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user