Added ScreenHowToPlay, removed texture hints, and cleaned up ThemeMetric stuff
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
------------------------CVS after 3.00 beta 6----------------
|
||||
CHANGE: Texture Hints have been removed in favor of smarter, automatic
|
||||
texture format chooser.
|
||||
CHANGE: New Nullsoft NSIS installer.
|
||||
CHANGE: NG no longer breaks combo.
|
||||
NEW FEATURE: Hidden easter egg. You have to be "perfect" to find it.
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1008 B |
@@ -1,10 +1,20 @@
|
||||
[General]
|
||||
CautionType=1 // 0 for skip, 1 for DDR caution, 2 for Ez2's SelectPlayer
|
||||
SelectStyleType=0 // 0 for MAX type, 1 for 5th type, 2 for EZ2 type
|
||||
SelectDifficultyType=1 // 0 for skip, 1 for MAX type
|
||||
StageType=0 // 0 for MAX, 1 for Pump, 2 for EZ2
|
||||
// Possible NextScreen Codes:
|
||||
// - ScreenCaution
|
||||
// - ScreenEz2SelectPlayer
|
||||
// - ScreenEz2SelectStyle
|
||||
// - ScreenHowToPlay
|
||||
// - ScreenSelectCourse
|
||||
// - ScreenSelectDifficulty
|
||||
// - ScreenSelectGroup
|
||||
// - ScreenSelectMusic
|
||||
// - ScreenSelectStyle5th
|
||||
// - ScreenSelectStyle
|
||||
|
||||
[TitleMenu]
|
||||
[Common]
|
||||
ColorP1=0.4,1.0,0.8,1 // sea green
|
||||
ColorP2=1.0,0.5,0.2,1 // orange
|
||||
|
||||
[ScreenTitleMenu]
|
||||
ChoicesX=320
|
||||
ChoicesStartY=60
|
||||
ChoicesSpacingY=48
|
||||
@@ -22,8 +32,15 @@ GoToCautionOrSelectPlayer=0
|
||||
SecondsBeforeDemonstration=30
|
||||
SecondsBetweenAttract=12
|
||||
HelpText=Use # $ to select, then press START
|
||||
NextScreen=ScreenCaution
|
||||
|
||||
[SelectStyle]
|
||||
[ScreenCaution]
|
||||
NextScreen=ScreenSelectStyle
|
||||
|
||||
[ScreenEz2SelectPlayer]
|
||||
NextScreen=ScreenSelectGroup
|
||||
|
||||
[ScreenSelectStyle]
|
||||
IconsStartX=60
|
||||
IconsSpacingX=76
|
||||
IconsStartY=100
|
||||
@@ -36,8 +53,12 @@ PreviewX=160
|
||||
PreviewY=240
|
||||
HelpText=Use ! " to select, then press START
|
||||
TimerSeconds=40
|
||||
NextScreen=ScreenSelectDifficulty
|
||||
|
||||
[SelectDifficulty]
|
||||
[ScreenEz2SelectStyle]
|
||||
NextScreen=ScreenSelectGroup
|
||||
|
||||
[ScreenSelectDifficulty]
|
||||
MorePage1X=580
|
||||
MorePage1Y=90
|
||||
MorePage2X=700
|
||||
@@ -56,16 +77,17 @@ OniX=860
|
||||
OniY=180
|
||||
EndlessX=1060
|
||||
EndlessY=180
|
||||
ArrowOffsetP1X=-40
|
||||
ArrowOffsetP1Y=200
|
||||
ArrowOffsetP2X=+40
|
||||
ArrowOffsetP2Y=200
|
||||
ArrowShadowLengthX=10
|
||||
ArrowShadowLengthY=10
|
||||
CursorOffsetP1X=-40
|
||||
CursorOffsetP1Y=200
|
||||
CursorOffsetP2X=+40
|
||||
CursorOffsetP2Y=200
|
||||
CursorShadowLengthX=10
|
||||
CursorShadowLengthY=10
|
||||
HelpText=Use ! " to select, then press START
|
||||
TimerSeconds=40
|
||||
NextScreen=ScreenSelectGroup
|
||||
|
||||
[SelectGroup]
|
||||
[ScreenSelectGroup]
|
||||
FrameX=180
|
||||
FrameY=160
|
||||
BannerX=180
|
||||
@@ -89,8 +111,16 @@ TitlesColumns=3
|
||||
TitlesRows=10
|
||||
HelpText=Use ! " to select, then press START
|
||||
TimerSeconds=40
|
||||
NextScreenArcade=ScreenHowToPlay
|
||||
NextScreenOni=ScreenHowToPlay
|
||||
|
||||
[SelectMusic]
|
||||
[ScreenHowToPlay]
|
||||
NextScreenArcade=ScreenSelectMusic
|
||||
NextScreenOni=ScreenSelectCourse
|
||||
HelpText=
|
||||
TimerSeconds=15
|
||||
|
||||
[ScreenSelectMusic]
|
||||
BannerFrameX=160
|
||||
BannerFrameY=118
|
||||
BannerX=150
|
||||
@@ -134,7 +164,7 @@ SongOptionsY=298
|
||||
HelpText=! or " change music Hold ! and " then press START to change sort::## easier difficulty $$ harder difficulty::#$#$ to change sort
|
||||
TimerSeconds=60
|
||||
|
||||
[SelectCourse]
|
||||
[ScreenSelectCourse]
|
||||
BannerFrameX=160
|
||||
BannerFrameY=118
|
||||
BannerX=150
|
||||
@@ -156,7 +186,10 @@ ScoreP2Y=286
|
||||
HelpText=Use ! " to select, then press START
|
||||
TimerSeconds=60
|
||||
|
||||
[Gameplay]
|
||||
[ScreenStage]
|
||||
StageType=0 // 0 for MAX, 1 for Pump, 2 for EZ2
|
||||
|
||||
[ScreenGameplay]
|
||||
TopFrameX=320
|
||||
TopFrameY=36
|
||||
TopFrameExtraY=442
|
||||
@@ -214,7 +247,7 @@ AutoPlayY=360
|
||||
SecondsBetweenComments=10
|
||||
DemonstrationSeconds=30
|
||||
|
||||
[Evaluation]
|
||||
[ScreenEvaluation]
|
||||
BannerX=320
|
||||
BannerY=100
|
||||
StageX=320
|
||||
@@ -274,7 +307,7 @@ HelpText=Press START to continue
|
||||
TimerSeconds=40
|
||||
SpinGrades=1
|
||||
|
||||
[Other]
|
||||
[ScreenManager]
|
||||
StatsX=632
|
||||
StatsY=10
|
||||
CreditsP1X=100
|
||||
@@ -282,7 +315,7 @@ CreditsP1Y=470
|
||||
CreditsP2X=540
|
||||
CreditsP2Y=470
|
||||
|
||||
[WheelItem]
|
||||
[WheelItemDisplay]
|
||||
IconX=-136
|
||||
SongNameX=-30
|
||||
SectionNameX=-30
|
||||
|
||||
@@ -11,8 +11,12 @@
|
||||
*/
|
||||
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "ThemeManager.h"
|
||||
|
||||
|
||||
#define COLOR_P1 THEME->GetMetricC("Common","ColorP1")
|
||||
#define COLOR_P2 THEME->GetMetricC("Common","ColorP2")
|
||||
|
||||
|
||||
D3DXCOLOR DifficultyClassToColor( DifficultyClass dc )
|
||||
{
|
||||
@@ -51,9 +55,9 @@ D3DXCOLOR PlayerToColor( const PlayerNumber p )
|
||||
{
|
||||
switch( p )
|
||||
{
|
||||
case PLAYER_1: return D3DXCOLOR(0.4f,1.0f,0.8f,1); // sea green
|
||||
case PLAYER_2: return D3DXCOLOR(1.0f,0.5f,0.2f,1); // orange
|
||||
default: ASSERT( false ); return D3DXCOLOR(1,1,1,1);
|
||||
case PLAYER_1: return COLOR_P1;
|
||||
case PLAYER_2: return COLOR_P2;
|
||||
default: ASSERT(0); return D3DXCOLOR(0.5f,0.5f,0.5f,1);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ const float GRADES_TO_SCROLL = NUM_GRADE_FRAMES*4;
|
||||
|
||||
GradeDisplay::GradeDisplay()
|
||||
{
|
||||
Load( THEME->GetPathTo("Graphics","evaluation grades") );
|
||||
Load( THEME->GetPathTo("Graphics","evaluation grades 1x7") );
|
||||
StopAnimating();
|
||||
|
||||
m_fTimeLeftInScroll = 0;
|
||||
@@ -85,13 +85,8 @@ void GradeDisplay::SetGrade( PlayerNumber p, Grade g )
|
||||
case GRADE_C: SetState( 4*iNumCols+p ); break;
|
||||
case GRADE_D: SetState( 5*iNumCols+p ); break;
|
||||
case GRADE_E: SetState( 6*iNumCols+p ); break;
|
||||
case GRADE_NO_DATA:
|
||||
if( this->GetNumStates()%8 == 0 )
|
||||
SetState( 7*iNumCols+p );
|
||||
else
|
||||
SetDiffuseColor( D3DXCOLOR(1,1,1,0) ); // don't show anything
|
||||
break;
|
||||
default: ASSERT( false );
|
||||
case GRADE_NO_DATA: SetDiffuseColor( D3DXCOLOR(1,1,1,0) ); break;
|
||||
default: ASSERT(0);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
/* If this actor is used anywhere other than SelectGroup, we
|
||||
* can add a setting that changes which metric group we pull
|
||||
* settings out of, so it can be configured separately. */
|
||||
#define BUTTON_X THEME->GetMetricF("SelectGroup","ButtonX")
|
||||
#define BUTTON_START_Y THEME->GetMetricF("SelectGroup","ButtonStartY")
|
||||
#define BUTTON_SPACING_Y THEME->GetMetricF("SelectGroup","ButtonSpacingY")
|
||||
#define BUTTON_SELECTED_X THEME->GetMetricF("SelectGroup","ButtonSelectedX")
|
||||
#define BUTTON_X THEME->GetMetricF("ScreenSelectGroup","ButtonX")
|
||||
#define BUTTON_START_Y THEME->GetMetricF("ScreenSelectGroup","ButtonStartY")
|
||||
#define BUTTON_SPACING_Y THEME->GetMetricF("ScreenSelectGroup","ButtonSpacingY")
|
||||
#define BUTTON_SELECTED_X THEME->GetMetricF("ScreenSelectGroup","ButtonSelectedX")
|
||||
|
||||
GroupList::GroupList()
|
||||
{
|
||||
|
||||
@@ -50,10 +50,10 @@ LifeMeterBar::LifeMeterBar()
|
||||
m_quadBlackBackground.SetZoomY( (float)m_iMeterHeight );
|
||||
m_frame.AddSubActor( &m_quadBlackBackground );
|
||||
|
||||
m_sprStreamNormal.Load( THEME->GetPathTo("Graphics","gameplay lifemeter stream normal") );
|
||||
m_sprStreamNormal.Load( THEME->GetPathTo("Graphics",(GAMESTATE->IsExtraStage()||GAMESTATE->IsExtraStage2())?"gameplay extra lifemeter stream normal":"gameplay lifemeter stream normal") );
|
||||
m_frame.AddSubActor( &m_sprStreamNormal );
|
||||
|
||||
m_sprStreamHot.Load( THEME->GetPathTo("Graphics","gameplay lifemeter stream hot") );
|
||||
m_sprStreamHot.Load( THEME->GetPathTo("Graphics",(GAMESTATE->IsExtraStage()||GAMESTATE->IsExtraStage2())?"gameplay extra lifemeter stream hot":"gameplay lifemeter stream hot") );
|
||||
m_frame.AddSubActor( &m_sprStreamHot );
|
||||
|
||||
m_sprFrame.Load( THEME->GetPathTo("Graphics","gameplay lifemeter bar") );
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageLog.h"
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
/* If this actor is used anywhere other than SelectGroup, we
|
||||
* can add a setting that changes which metric group we pull
|
||||
* settings out of, so it can be configured separately. */
|
||||
#define TITLES_START_X THEME->GetMetricF("SelectGroup","TitlesStartX")
|
||||
#define TITLES_SPACING_X THEME->GetMetricF("SelectGroup","TitlesSpacingX")
|
||||
#define TITLES_START_Y THEME->GetMetricF("SelectGroup","TitlesStartY")
|
||||
#define TITLES_COLUMNS THEME->GetMetricI("SelectGroup","TitlesColumns")
|
||||
#define TITLES_ROWS THEME->GetMetricI("SelectGroup","TitlesRows")
|
||||
#define TITLES_START_X THEME->GetMetricF("ScreenSelectGroup","TitlesStartX")
|
||||
#define TITLES_SPACING_X THEME->GetMetricF("ScreenSelectGroup","TitlesSpacingX")
|
||||
#define TITLES_START_Y THEME->GetMetricF("ScreenSelectGroup","TitlesStartY")
|
||||
#define TITLES_COLUMNS THEME->GetMetricI("ScreenSelectGroup","TitlesColumns")
|
||||
#define TITLES_ROWS THEME->GetMetricI("ScreenSelectGroup","TitlesRows")
|
||||
|
||||
MusicList::MusicList()
|
||||
{
|
||||
|
||||
@@ -22,16 +22,16 @@
|
||||
#include "GameState.h"
|
||||
|
||||
// WheelItem stuff
|
||||
#define ICON_X THEME->GetMetricF("WheelItem","IconX")
|
||||
#define SONG_NAME_X THEME->GetMetricF("WheelItem","SongNameX")
|
||||
#define SECTION_NAME_X THEME->GetMetricF("WheelItem","SectionNameX")
|
||||
#define SECTION_ZOOM THEME->GetMetricF("WheelItem","SectionZoom")
|
||||
#define ROULETTE_X THEME->GetMetricF("WheelItem","RouletteX")
|
||||
#define ROULETTE_ZOOM THEME->GetMetricF("WheelItem","RouletteZoom")
|
||||
#define COURSE_X THEME->GetMetricF("WheelItem","CourseX")
|
||||
#define COURSE_ZOOM THEME->GetMetricF("WheelItem","CourseZoom")
|
||||
#define GRADE_P1_X THEME->GetMetricF("WheelItem","GradeP1X")
|
||||
#define GRADE_P2_X THEME->GetMetricF("WheelItem","GradeP2Y")
|
||||
#define ICON_X THEME->GetMetricF("WheelItemDisplay","IconX")
|
||||
#define SONG_NAME_X THEME->GetMetricF("WheelItemDisplay","SongNameX")
|
||||
#define SECTION_NAME_X THEME->GetMetricF("WheelItemDisplay","SectionNameX")
|
||||
#define SECTION_ZOOM THEME->GetMetricF("WheelItemDisplay","SectionZoom")
|
||||
#define ROULETTE_X THEME->GetMetricF("WheelItemDisplay","RouletteX")
|
||||
#define ROULETTE_ZOOM THEME->GetMetricF("WheelItemDisplay","RouletteZoom")
|
||||
#define COURSE_X THEME->GetMetricF("WheelItemDisplay","CourseX")
|
||||
#define COURSE_ZOOM THEME->GetMetricF("WheelItemDisplay","CourseZoom")
|
||||
#define GRADE_P1_X THEME->GetMetricF("WheelItemDisplay","GradeP1X")
|
||||
#define GRADE_P2_X THEME->GetMetricF("WheelItemDisplay","GradeP2Y")
|
||||
|
||||
|
||||
// MusicWheel stuff
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
#include "Quad.h"
|
||||
#include "TextBanner.h"
|
||||
#include "RandomSample.h"
|
||||
#include "GradeDisplay.h"
|
||||
#include "SmallGradeDisplay.h"
|
||||
#include "RageSoundStream.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "MusicSortDisplay.h"
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
Sprite m_sprSongBar;
|
||||
MusicStatusDisplay m_MusicStatusDisplay;
|
||||
TextBanner m_TextBanner;
|
||||
GradeDisplay m_GradeDisplay[NUM_PLAYERS];
|
||||
SmallGradeDisplay m_GradeDisplay[NUM_PLAYERS];
|
||||
|
||||
// for TYPE_COURSE
|
||||
BitmapText m_textCourse;
|
||||
|
||||
@@ -542,7 +542,7 @@ void NoteDisplay::DrawHold( const HoldNote& hn, const bool bActive, const float
|
||||
const float fBottomDistFromTailTop = fYBottom - fYTailTop;
|
||||
const float fTexCoordTop = SCALE( fTopDistFromTailTop, 0, fFrameHeight, 0.5f, 1.0f );
|
||||
const float fTexCoordBottom = SCALE( fBottomDistFromTailTop, 0, fFrameHeight, 0.5f, 1.0f );
|
||||
ASSERT( fBottomDistFromTailTop <= fFrameHeight );
|
||||
ASSERT( fBottomDistFromTailTop-0.0001 <= fFrameHeight );
|
||||
const float fTexCoordLeft = bActive ? 0.25f : 0.00f;
|
||||
const float fTexCoordRight = bActive ? 0.50f : 0.25f;
|
||||
const float fAlphaTop = ArrowGetAlpha( m_PlayerNumber, fYTop );
|
||||
|
||||
@@ -110,6 +110,17 @@ void RageBitmapTexture::Create(
|
||||
if( -1 != m_sFilePath.Find("dither") )
|
||||
bDither = true;
|
||||
|
||||
|
||||
/////////////////////
|
||||
// Figure out whether the texture can fit into texture memory unscaled
|
||||
/////////////////////
|
||||
D3DXIMAGE_INFO ddii;
|
||||
if( FAILED( hr = D3DXGetImageInfoFromFile(m_sFilePath,&ddii) ) )
|
||||
{
|
||||
throw RageException( hr, "D3DXGetImageInfoFromFile() failed for file '%s'.", m_sFilePath );
|
||||
}
|
||||
|
||||
|
||||
///////////////////////
|
||||
// Figure out which texture format to use
|
||||
///////////////////////
|
||||
@@ -117,11 +128,18 @@ void RageBitmapTexture::Create(
|
||||
switch( dwTextureColorDepth )
|
||||
{
|
||||
case 16:
|
||||
switch( iAlphaBits )
|
||||
// switch( iAlphaBits )
|
||||
// {
|
||||
// case 0: fmtTexture = D3DFMT_R5G6B5; break;
|
||||
// case 1: fmtTexture = D3DFMT_A1R5G5B5; break;
|
||||
// default: fmtTexture = D3DFMT_A4R4G4B4; break;
|
||||
// }
|
||||
|
||||
// Ignore dwTextureColorDepth, and infer based on image format
|
||||
switch( ddii.Format )
|
||||
{
|
||||
case 0: fmtTexture = D3DFMT_R5G6B5; break;
|
||||
case 1: fmtTexture = D3DFMT_A1R5G5B5; break;
|
||||
default: fmtTexture = D3DFMT_A4R4G4B4; break;
|
||||
case D3DFMT_P8: fmtTexture = D3DFMT_A1R5G5B5; break;
|
||||
default: fmtTexture = D3DFMT_A4R4G4B4; break;
|
||||
}
|
||||
break;
|
||||
case 32:
|
||||
@@ -131,25 +149,14 @@ void RageBitmapTexture::Create(
|
||||
throw RageException( "Invalid color depth: %d bits", dwTextureColorDepth );
|
||||
}
|
||||
|
||||
|
||||
/////////////////////
|
||||
// Figure out whether the texture can fit into texture memory unscaled
|
||||
/////////////////////
|
||||
D3DXIMAGE_INFO ddii;
|
||||
if( FAILED( hr = D3DXGetImageInfoFromFile(
|
||||
m_sFilePath,
|
||||
&ddii ) ) )
|
||||
{
|
||||
throw RageException( hr, "D3DXGetImageInfoFromFile() failed for file '%s'.", m_sFilePath );
|
||||
}
|
||||
|
||||
// find out what the min texture size is
|
||||
dwMaxSize = min( dwMaxSize, DISPLAY->GetDeviceCaps().MaxTextureWidth );
|
||||
|
||||
bStretch |= ddii.Width > dwMaxSize || ddii.Height > dwMaxSize;
|
||||
|
||||
// HACK: On a Voodoo3 and Win98, D3DXCreateTextureFromFileEx sometimes fails for no good reason.
|
||||
// So, we'll try the call 2x in a row in case the first one fails
|
||||
// HACK: On a Voodoo3 and Win98, D3DXCreateTextureFromFileEx fail randomly on rare occasions.
|
||||
// So, we'll try the call 2x in a row in case the first one fails.
|
||||
for( int i=0; i<2; i++ )
|
||||
{
|
||||
if( FAILED( hr = D3DXCreateTextureFromFileEx(
|
||||
|
||||
@@ -11,14 +11,11 @@
|
||||
*/
|
||||
|
||||
#include "ScreenAppearanceOptions.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenOptions.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "StepMania.h"
|
||||
#include "PrefsManager.h"
|
||||
@@ -166,7 +163,7 @@ void ScreenAppearanceOptions::GoToPrevState()
|
||||
void ScreenAppearanceOptions::GoToNextState()
|
||||
{
|
||||
PREFSMAN->SaveGamePrefsToDisk();
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -12,30 +12,19 @@
|
||||
|
||||
|
||||
#include "ScreenCaution.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "ScreenSelectStyle.h"
|
||||
#include "ScreenEZ2SelectStyle.h"
|
||||
#include "ScreenSelectStyle5th.h"
|
||||
#include "RageTextureManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
|
||||
|
||||
#define SELECT_STYLE_TYPE THEME->GetMetricI("General","SelectStyleType")
|
||||
enum SelectStyleType // for use with the metric above
|
||||
{
|
||||
SELECT_STYLE_TYPE_MAX = 0,
|
||||
SELECT_STYLE_TYPE_5TH,
|
||||
SELECT_STYLE_TYPE_EZ2,
|
||||
};
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenCaution","NextScreen")
|
||||
|
||||
|
||||
const ScreenMessage SM_GoToPrevState = ScreenMessage(SM_User-6);
|
||||
const ScreenMessage SM_DoneOpening = ScreenMessage(SM_User-7);
|
||||
const ScreenMessage SM_StartClosing = ScreenMessage(SM_User-8);
|
||||
const ScreenMessage SM_GoToSelectMusic = ScreenMessage(SM_User-9);
|
||||
const ScreenMessage SM_GoToNextScreen = ScreenMessage(SM_User-9);
|
||||
|
||||
|
||||
ScreenCaution::ScreenCaution()
|
||||
@@ -71,30 +60,16 @@ void ScreenCaution::HandleScreenMessage( const ScreenMessage SM )
|
||||
{
|
||||
case SM_StartClosing:
|
||||
if( !m_Wipe.IsClosing() )
|
||||
m_Wipe.CloseWipingRight( SM_GoToSelectMusic );
|
||||
m_Wipe.CloseWipingRight( SM_GoToNextScreen );
|
||||
break;
|
||||
case SM_DoneOpening:
|
||||
SOUND->PlayOnceStreamedFromDir( ANNOUNCER->GetPathTo(ANNOUNCER_CAUTION) );
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToSelectMusic:
|
||||
switch( SELECT_STYLE_TYPE )
|
||||
{
|
||||
case SELECT_STYLE_TYPE_MAX:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectStyle );
|
||||
break;
|
||||
case SELECT_STYLE_TYPE_5TH:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectStyle5th );
|
||||
break;
|
||||
case SELECT_STYLE_TYPE_EZ2:
|
||||
SCREENMAN->SetNewScreen( new ScreenEz2SelectStyle );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
break;
|
||||
}
|
||||
case SM_GoToNextScreen:
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -110,7 +85,7 @@ void ScreenCaution::MenuStart( const PlayerNumber p )
|
||||
}
|
||||
|
||||
if( !m_Wipe.IsOpening() && !m_Wipe.IsClosing() )
|
||||
m_Wipe.CloseWipingRight( SM_GoToSelectMusic );
|
||||
m_Wipe.CloseWipingRight( SM_GoToNextScreen );
|
||||
}
|
||||
|
||||
void ScreenCaution::MenuBack( const PlayerNumber p )
|
||||
|
||||
@@ -14,16 +14,12 @@
|
||||
#include "PrefsManager.h"
|
||||
#include "SongManager.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenEvaluation.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "GameManager.h"
|
||||
#include "ScreenEditMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
#include "ScreenTextEntry.h"
|
||||
|
||||
|
||||
//
|
||||
@@ -573,7 +569,7 @@ void ScreenEdit::InputEdit( const DeviceInput& DeviceI, const InputEventType typ
|
||||
}
|
||||
break;
|
||||
case DIK_Q:
|
||||
SCREENMAN->SetNewScreen( new ScreenEditMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenEditMenu" );
|
||||
break;
|
||||
case DIK_S:
|
||||
case DIK_W:
|
||||
@@ -897,7 +893,7 @@ void ScreenEdit::InputEdit( const DeviceInput& DeviceI, const InputEventType typ
|
||||
if( i != m_pSong->m_BackgroundChanges.GetSize() ) // there is already a BGChange here
|
||||
sOldBackground = m_pSong->m_BackgroundChanges[i].m_sBGName;
|
||||
|
||||
SCREENMAN->AddScreenToTop( new ScreenTextEntry(SM_None, "Type a background name.\nPress Enter to keep,\nEscape to cancel.\nEnter an empty string to remove\nthe Background Change.", sOldBackground, AddBGChange, NULL) );
|
||||
SCREENMAN->TextEntry( SM_None, "Type a background name.\nPress Enter to keep,\nEscape to cancel.\nEnter an empty string to remove\nthe Background Change.", sOldBackground, AddBGChange, NULL );
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1186,10 +1182,10 @@ void ScreenEdit::HandleScreenMessage( const ScreenMessage SM )
|
||||
switch( SM )
|
||||
{
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenEditMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenEditMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( new ScreenEditMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenEditMenu" );
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -13,21 +13,18 @@
|
||||
#include "ScreenEditMenu.h"
|
||||
#include "SongManager.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenEdit.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageUtil.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "GameManager.h"
|
||||
#include "ScreenPrompt.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
#include "RageMusic.h"
|
||||
|
||||
|
||||
//
|
||||
// Defines specific to ScreenEditMenu
|
||||
//
|
||||
|
||||
const float EXPLANATION_X = CENTER_X;
|
||||
const float EXPLANATION_Y = SCREEN_BOTTOM - 70;
|
||||
const CString EXPLANATION_TEXT =
|
||||
@@ -55,8 +52,8 @@ ScreenEditMenu::ScreenEditMenu()
|
||||
m_Fade.SetOpened();
|
||||
this->AddSubActor( &m_Fade);
|
||||
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","edit menu music") );
|
||||
MUSIC->Play( true );
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","edit menu music") );
|
||||
|
||||
m_soundSelect.Load( THEME->GetPathTo("Sounds","menu start") );
|
||||
}
|
||||
|
||||
@@ -79,7 +76,7 @@ void ScreenEditMenu::HandleScreenMessage( const ScreenMessage SM )
|
||||
switch( SM )
|
||||
{
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
// set the current style based on the notes type
|
||||
@@ -97,7 +94,7 @@ void ScreenEditMenu::HandleScreenMessage( const ScreenMessage SM )
|
||||
GAMESTATE->m_CurStyle = style;
|
||||
GAMESTATE->m_CurGame = GAMEMAN->GetStyleDefForStyle(style)->m_Game;
|
||||
|
||||
SCREENMAN->SetNewScreen( new ScreenEdit );
|
||||
SCREENMAN->SetNewScreen( "ScreenEdit" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
*/
|
||||
|
||||
#include "ScreenEvaluation.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "SongManager.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "GameManager.h"
|
||||
@@ -21,69 +20,68 @@
|
||||
#include "PrefsManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenMusicScroll.h"
|
||||
#include "GameState.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
#include "GrooveRadar.h"
|
||||
|
||||
|
||||
#define BANNER_X THEME->GetMetricF("Evaluation","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("Evaluation","BannerY")
|
||||
#define STAGE_X THEME->GetMetricF("Evaluation","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("Evaluation","StageY")
|
||||
#define GRADE_P1_X THEME->GetMetricF("Evaluation","GradeP1X")
|
||||
#define GRADE_P2_X THEME->GetMetricF("Evaluation","GradeP2X")
|
||||
#define GRADE_Y THEME->GetMetricF("Evaluation","GradeY")
|
||||
#define PERCENT_BASE_P1_X THEME->GetMetricF("Evaluation","PercentBaseP1X")
|
||||
#define PERCENT_BASE_P2_X THEME->GetMetricF("Evaluation","PercentBaseP2X")
|
||||
#define PERCENT_BASE_Y THEME->GetMetricF("Evaluation","PercentBaseY")
|
||||
#define JUDGE_LABELS_X THEME->GetMetricF("Evaluation","JudgeLabelsX")
|
||||
#define PERFECT_P1_X THEME->GetMetricF("Evaluation","PerfectP1X")
|
||||
#define PERFECT_P2_X THEME->GetMetricF("Evaluation","PerfectP2X")
|
||||
#define PERFECT_Y THEME->GetMetricF("Evaluation","PerfectY")
|
||||
#define GREAT_P1_X THEME->GetMetricF("Evaluation","GreatP1X")
|
||||
#define GREAT_P2_X THEME->GetMetricF("Evaluation","GreatP2X")
|
||||
#define GREAT_Y THEME->GetMetricF("Evaluation","GreatY")
|
||||
#define GOOD_P1_X THEME->GetMetricF("Evaluation","GoodP1X")
|
||||
#define GOOD_P2_X THEME->GetMetricF("Evaluation","GoodP2X")
|
||||
#define GOOD_Y THEME->GetMetricF("Evaluation","GoodY")
|
||||
#define BOO_P1_X THEME->GetMetricF("Evaluation","BooP1X")
|
||||
#define BOO_P2_X THEME->GetMetricF("Evaluation","BooP2X")
|
||||
#define BOO_Y THEME->GetMetricF("Evaluation","BooY")
|
||||
#define MISS_P1_X THEME->GetMetricF("Evaluation","MissP1X")
|
||||
#define MISS_P2_X THEME->GetMetricF("Evaluation","MissP2X")
|
||||
#define MISS_Y THEME->GetMetricF("Evaluation","MissY")
|
||||
#define OK_P1_X THEME->GetMetricF("Evaluation","OKP1X")
|
||||
#define OK_P2_X THEME->GetMetricF("Evaluation","OKP2X")
|
||||
#define OK_Y THEME->GetMetricF("Evaluation","OKY")
|
||||
#define MAX_COMBO_P1_X THEME->GetMetricF("Evaluation","MaxComboP1X")
|
||||
#define MAX_COMBO_P2_X THEME->GetMetricF("Evaluation","MaxComboP2X")
|
||||
#define MAX_COMBO_Y THEME->GetMetricF("Evaluation","MaxComboY")
|
||||
#define SCORE_LABELS_X THEME->GetMetricF("Evaluation","ScoreLabelsX")
|
||||
#define SCORE_NUMBERS_P1_X THEME->GetMetricF("Evaluation","ScoreNumbersP1X")
|
||||
#define SCORE_NUMBERS_P2_X THEME->GetMetricF("Evaluation","ScoreNumbersP2X")
|
||||
#define SCORE_Y THEME->GetMetricF("Evaluation","ScoreY")
|
||||
#define BONUS_P1_X THEME->GetMetricF("Evaluation","BonusP1X")
|
||||
#define BONUS_P2_X THEME->GetMetricF("Evaluation","BonusP2X")
|
||||
#define BONUS_Y THEME->GetMetricF("Evaluation","BonusY")
|
||||
#define BAR_P1_BASE_X THEME->GetMetricF("Evaluation","BarP1BaseX")
|
||||
#define BAR_P2_BASE_X THEME->GetMetricF("Evaluation","BarP2BaseX")
|
||||
#define BAR_P1_ROTATION THEME->GetMetricF("Evaluation","BarP1Rotation")
|
||||
#define BAR_P2_ROTATION THEME->GetMetricF("Evaluation","BarP2Rotation")
|
||||
#define BAR_START_Y THEME->GetMetricF("Evaluation","BarStartY")
|
||||
#define BAR_SPACING_Y THEME->GetMetricF("Evaluation","BarSpacingY")
|
||||
#define BAR_WIDTH THEME->GetMetricF("Evaluation","BarWidth")
|
||||
#define BAR_HEIGHT THEME->GetMetricF("Evaluation","BarHeight")
|
||||
#define SONGS_SURVIVED_P1_X THEME->GetMetricF("Evaluation","SongsSurvivedP1X")
|
||||
#define SONGS_SURVIVED_P2_X THEME->GetMetricF("Evaluation","SongsSurvivedP2X")
|
||||
#define SONGS_SURVIVED_Y THEME->GetMetricF("Evaluation","SongsSurvivedY")
|
||||
#define NEW_RECORD_P1_X THEME->GetMetricF("Evaluation","NewRecordP1X")
|
||||
#define NEW_RECORD_P2_X THEME->GetMetricF("Evaluation","NewRecordP2X")
|
||||
#define NEW_RECORD_Y THEME->GetMetricF("Evaluation","NewRecordY")
|
||||
#define TRY_EXTRA_STAGE_X THEME->GetMetricF("Evaluation","TryExtraStageX")
|
||||
#define TRY_EXTRA_STAGE_Y THEME->GetMetricF("Evaluation","TryExtraStageY")
|
||||
#define HELP_TEXT THEME->GetMetric("Evaluation","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("Evaluation","TimerSeconds")
|
||||
#define SPIN_GRADES THEME->GetMetricB("Evaluation","SpinGrades")
|
||||
#define BANNER_X THEME->GetMetricF("ScreenEvaluation","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("ScreenEvaluation","BannerY")
|
||||
#define STAGE_X THEME->GetMetricF("ScreenEvaluation","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("ScreenEvaluation","StageY")
|
||||
#define GRADE_P1_X THEME->GetMetricF("ScreenEvaluation","GradeP1X")
|
||||
#define GRADE_P2_X THEME->GetMetricF("ScreenEvaluation","GradeP2X")
|
||||
#define GRADE_Y THEME->GetMetricF("ScreenEvaluation","GradeY")
|
||||
#define PERCENT_BASE_P1_X THEME->GetMetricF("ScreenEvaluation","PercentBaseP1X")
|
||||
#define PERCENT_BASE_P2_X THEME->GetMetricF("ScreenEvaluation","PercentBaseP2X")
|
||||
#define PERCENT_BASE_Y THEME->GetMetricF("ScreenEvaluation","PercentBaseY")
|
||||
#define JUDGE_LABELS_X THEME->GetMetricF("ScreenEvaluation","JudgeLabelsX")
|
||||
#define PERFECT_P1_X THEME->GetMetricF("ScreenEvaluation","PerfectP1X")
|
||||
#define PERFECT_P2_X THEME->GetMetricF("ScreenEvaluation","PerfectP2X")
|
||||
#define PERFECT_Y THEME->GetMetricF("ScreenEvaluation","PerfectY")
|
||||
#define GREAT_P1_X THEME->GetMetricF("ScreenEvaluation","GreatP1X")
|
||||
#define GREAT_P2_X THEME->GetMetricF("ScreenEvaluation","GreatP2X")
|
||||
#define GREAT_Y THEME->GetMetricF("ScreenEvaluation","GreatY")
|
||||
#define GOOD_P1_X THEME->GetMetricF("ScreenEvaluation","GoodP1X")
|
||||
#define GOOD_P2_X THEME->GetMetricF("ScreenEvaluation","GoodP2X")
|
||||
#define GOOD_Y THEME->GetMetricF("ScreenEvaluation","GoodY")
|
||||
#define BOO_P1_X THEME->GetMetricF("ScreenEvaluation","BooP1X")
|
||||
#define BOO_P2_X THEME->GetMetricF("ScreenEvaluation","BooP2X")
|
||||
#define BOO_Y THEME->GetMetricF("ScreenEvaluation","BooY")
|
||||
#define MISS_P1_X THEME->GetMetricF("ScreenEvaluation","MissP1X")
|
||||
#define MISS_P2_X THEME->GetMetricF("ScreenEvaluation","MissP2X")
|
||||
#define MISS_Y THEME->GetMetricF("ScreenEvaluation","MissY")
|
||||
#define OK_P1_X THEME->GetMetricF("ScreenEvaluation","OKP1X")
|
||||
#define OK_P2_X THEME->GetMetricF("ScreenEvaluation","OKP2X")
|
||||
#define OK_Y THEME->GetMetricF("ScreenEvaluation","OKY")
|
||||
#define MAX_COMBO_P1_X THEME->GetMetricF("ScreenEvaluation","MaxComboP1X")
|
||||
#define MAX_COMBO_P2_X THEME->GetMetricF("ScreenEvaluation","MaxComboP2X")
|
||||
#define MAX_COMBO_Y THEME->GetMetricF("ScreenEvaluation","MaxComboY")
|
||||
#define SCORE_LABELS_X THEME->GetMetricF("ScreenEvaluation","ScoreLabelsX")
|
||||
#define SCORE_NUMBERS_P1_X THEME->GetMetricF("ScreenEvaluation","ScoreNumbersP1X")
|
||||
#define SCORE_NUMBERS_P2_X THEME->GetMetricF("ScreenEvaluation","ScoreNumbersP2X")
|
||||
#define SCORE_Y THEME->GetMetricF("ScreenEvaluation","ScoreY")
|
||||
#define BONUS_P1_X THEME->GetMetricF("ScreenEvaluation","BonusP1X")
|
||||
#define BONUS_P2_X THEME->GetMetricF("ScreenEvaluation","BonusP2X")
|
||||
#define BONUS_Y THEME->GetMetricF("ScreenEvaluation","BonusY")
|
||||
#define BAR_P1_BASE_X THEME->GetMetricF("ScreenEvaluation","BarP1BaseX")
|
||||
#define BAR_P2_BASE_X THEME->GetMetricF("ScreenEvaluation","BarP2BaseX")
|
||||
#define BAR_P1_ROTATION THEME->GetMetricF("ScreenEvaluation","BarP1Rotation")
|
||||
#define BAR_P2_ROTATION THEME->GetMetricF("ScreenEvaluation","BarP2Rotation")
|
||||
#define BAR_START_Y THEME->GetMetricF("ScreenEvaluation","BarStartY")
|
||||
#define BAR_SPACING_Y THEME->GetMetricF("ScreenEvaluation","BarSpacingY")
|
||||
#define BAR_WIDTH THEME->GetMetricF("ScreenEvaluation","BarWidth")
|
||||
#define BAR_HEIGHT THEME->GetMetricF("ScreenEvaluation","BarHeight")
|
||||
#define SONGS_SURVIVED_P1_X THEME->GetMetricF("ScreenEvaluation","SongsSurvivedP1X")
|
||||
#define SONGS_SURVIVED_P2_X THEME->GetMetricF("ScreenEvaluation","SongsSurvivedP2X")
|
||||
#define SONGS_SURVIVED_Y THEME->GetMetricF("ScreenEvaluation","SongsSurvivedY")
|
||||
#define NEW_RECORD_P1_X THEME->GetMetricF("ScreenEvaluation","NewRecordP1X")
|
||||
#define NEW_RECORD_P2_X THEME->GetMetricF("ScreenEvaluation","NewRecordP2X")
|
||||
#define NEW_RECORD_Y THEME->GetMetricF("ScreenEvaluation","NewRecordY")
|
||||
#define TRY_EXTRA_STAGE_X THEME->GetMetricF("ScreenEvaluation","TryExtraStageX")
|
||||
#define TRY_EXTRA_STAGE_Y THEME->GetMetricF("ScreenEvaluation","TryExtraStageY")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenEvaluation","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenEvaluation","TimerSeconds")
|
||||
#define SPIN_GRADES THEME->GetMetricB("ScreenEvaluation","SpinGrades")
|
||||
|
||||
float GRADE_X( int p ) {
|
||||
switch( p ) {
|
||||
@@ -873,16 +871,16 @@ void ScreenEvaluation::HandleScreenMessage( const ScreenMessage SM )
|
||||
MenuStart( PLAYER_INVALID );
|
||||
break;
|
||||
case SM_GoToSelectMusic:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectMusic" );
|
||||
break;
|
||||
case SM_GoToSelectCourse:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectCourse );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
||||
break;
|
||||
case SM_GoToMusicScroll:
|
||||
SCREENMAN->SetNewScreen( new ScreenMusicScroll );
|
||||
SCREENMAN->SetNewScreen( "ScreenMusicScroll" );
|
||||
break;
|
||||
case SM_GoToFinalEvaluation:
|
||||
SCREENMAN->SetNewScreen( new ScreenEvaluation(true) );
|
||||
SCREENMAN->SetNewScreen( "ScreenFinalEvaluation" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,10 +25,11 @@
|
||||
const int NUM_JUDGE_LINES = 7; // perfect, great, good, boo, miss, ok, max_combo
|
||||
const int STAGES_TO_SHOW_IN_SUMMARY = 3; // only show the latest three stages in a summary
|
||||
|
||||
|
||||
class ScreenEvaluation : public Screen
|
||||
{
|
||||
public:
|
||||
ScreenEvaluation( bool bSummary );
|
||||
ScreenEvaluation( bool bFinalEval = false );
|
||||
virtual void Update( float fDeltaTime );
|
||||
virtual void DrawPrimitives();
|
||||
virtual void Input( const DeviceInput& DeviceI, const InputEventType type, const GameInput &GameI, const MenuInput &MenuI, const StyleInput &StyleI );
|
||||
@@ -79,5 +80,10 @@ protected:
|
||||
BitmapText m_textTryExtraStage;
|
||||
};
|
||||
|
||||
class ScreenFinalEvaluation : public ScreenEvaluation
|
||||
{
|
||||
public:
|
||||
ScreenFinalEvaluation() : ScreenEvaluation(true) {};
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -12,17 +12,11 @@ Andrew Livy
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenSandbox.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenSelectStyle.h"
|
||||
#include "ScreenEz2SelectStyle.h"
|
||||
#include "GameState.h"
|
||||
#include "RageException.h"
|
||||
#include "RageTimer.h"
|
||||
@@ -33,7 +27,9 @@ const ScreenMessage SM_GoToPrevState = ScreenMessage(SM_User + 1);
|
||||
const ScreenMessage SM_GoToNextState = ScreenMessage(SM_User + 2);
|
||||
const ScreenMessage SM_PlayersChosen = ScreenMessage(SM_User + 3);
|
||||
|
||||
#define USE_NORMAL_OR_EZ2_SELECT_STYLE THEME->GetMetricB("General","UseNormalOrEZ2SelectStyle")
|
||||
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenEz2SelectPlayer","NextScreen")
|
||||
|
||||
|
||||
const float TWEEN_TIME = 0.35f;
|
||||
const D3DXCOLOR OPT_NOT_SELECTED = D3DXCOLOR(0.3f,0.3f,0.3f,1);
|
||||
@@ -100,11 +96,7 @@ ScreenEz2SelectPlayer::ScreenEz2SelectPlayer()
|
||||
SOUND->PlayOnceStreamedFromDir( ANNOUNCER->GetPathTo(ANNOUNCER_SELECT_STYLE_INTRO) );
|
||||
|
||||
|
||||
if( !MUSIC->IsPlaying() )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select player music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select player music") );
|
||||
|
||||
// GAMESTATE->m_bPlayersCanJoin = true;
|
||||
// GAMESTATE->m_bIsJoined[PLAYER_1] = false;
|
||||
@@ -135,10 +127,10 @@ void ScreenEz2SelectPlayer::Update( float fDeltaTime )
|
||||
|
||||
fDeltaTime /= .01f;
|
||||
|
||||
ez2_bounce = fmod((ez2_bounce+fDeltaTime), 20);
|
||||
ez2_bounce = fmodf((ez2_bounce+fDeltaTime), 20);
|
||||
|
||||
/* 0..10..19 -> 10..0..9 */
|
||||
int offset = abs(10-ez2_bounce);
|
||||
int offset = roundf( fabsf(10-ez2_bounce) );
|
||||
m_sprOpt[2].SetXY( OPT_X[2], OPT_Y[2] - offset);
|
||||
m_sprOpt[3].SetXY( OPT_X[3], OPT_Y[3] - offset);
|
||||
}
|
||||
@@ -218,13 +210,10 @@ void ScreenEz2SelectPlayer::HandleScreenMessage( const ScreenMessage SM )
|
||||
|
||||
case SM_GoToPrevState:
|
||||
MUSIC->Stop();
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
if( USE_NORMAL_OR_EZ2_SELECT_STYLE )
|
||||
SCREENMAN->SetNewScreen( new ScreenEz2SelectStyle );
|
||||
else
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectStyle );
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include "stdafx.h"
|
||||
/****************************************
|
||||
ScreenEzSelectPlayer,cpp
|
||||
Desc: See Header
|
||||
@@ -10,32 +11,30 @@ a polish :)
|
||||
|
||||
/* Includes */
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "ScreenEz2SelectStyle.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenSandbox.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "Background.h"
|
||||
#include "ScreenSelectGroup.h"
|
||||
#include "GameState.h"
|
||||
#include "RageException.h"
|
||||
#include "RageTimer.h"
|
||||
|
||||
/* Constants */
|
||||
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenEz2SelectStyle","NextScreen")
|
||||
|
||||
|
||||
const ScreenMessage SM_GoToPrevState = ScreenMessage(SM_User + 1);
|
||||
const ScreenMessage SM_GoToNextState = ScreenMessage(SM_User + 2);
|
||||
|
||||
|
||||
enum DStyles {
|
||||
DS_EASY,
|
||||
DS_HARD,
|
||||
@@ -45,8 +44,6 @@ enum DStyles {
|
||||
|
||||
const float TWEEN_TIME = 0.35f;
|
||||
|
||||
#define SKIP_SELECT_DIFFICULTY THEME->GetMetricB("General","SkipSelectDifficulty")
|
||||
|
||||
|
||||
float ez2p_lasttimercheck[2];
|
||||
int ez2p_bounce=0; // used for the bouncing of the '1p' and '2p' images
|
||||
@@ -164,18 +161,14 @@ void ScreenEz2SelectStyle::HandleScreenMessage( const ScreenMessage SM )
|
||||
case SM_MenuTimer:
|
||||
m_soundSelect.PlayRandom();
|
||||
GAMESTATE->m_PlayMode = PLAY_MODE_ARCADE;
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectGroup );
|
||||
|
||||
this->SendScreenMessage( SM_GoToNextState, 0 );
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
MUSIC->Stop();
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
if( SKIP_SELECT_DIFFICULTY )
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectGroup );
|
||||
else
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectDifficulty );
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
#include "Sprite.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
|
||||
@@ -70,7 +69,7 @@ void ScreenGameOver::HandleScreenMessage( const ScreenMessage SM )
|
||||
this->SendScreenMessage( SM_GoToNextState, 0.8f );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,85 +13,80 @@
|
||||
#include "ScreenGameplay.h"
|
||||
#include "SongManager.h"
|
||||
#include "ScreenManager.h"
|
||||
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
#include "ScreenEvaluation.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "GameManager.h"
|
||||
#include "SongManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenGameOver.h"
|
||||
#include "LifeMeterBar.h"
|
||||
#include "LifeMeterBattery.h"
|
||||
#include "GameState.h"
|
||||
#include "ScoreDisplayNormal.h"
|
||||
#include "ScoreDisplayOni.h"
|
||||
#include "ScreenPrompt.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GrooveRadar.h"
|
||||
|
||||
//
|
||||
// Defines
|
||||
//
|
||||
|
||||
#define TOP_FRAME_X THEME->GetMetricF("Gameplay","TopFrameX")
|
||||
#define TOP_FRAME_Y THEME->GetMetricF("Gameplay","TopFrameY")
|
||||
#define TOP_FRAME_EXTRA_Y THEME->GetMetricF("Gameplay","TopFrameExtraY")
|
||||
#define BOTTOM_FRAME_X THEME->GetMetricF("Gameplay","BottomFrameX")
|
||||
#define BOTTOM_FRAME_Y THEME->GetMetricF("Gameplay","BottomFrameY")
|
||||
#define BOTTOM_FRAME_EXTRA_Y THEME->GetMetricF("Gameplay","BottomFrameExtraY")
|
||||
#define MIDDLE_FRAME_X THEME->GetMetricF("Gameplay","MiddleFrameX")
|
||||
#define MIDDLE_FRAME_Y THEME->GetMetricF("Gameplay","MiddleFrameY")
|
||||
#define LIFE_P1_X THEME->GetMetricF("Gameplay","LifeP1X")
|
||||
#define LIFE_P1_Y THEME->GetMetricF("Gameplay","LifeP1Y")
|
||||
#define LIFE_P1_EXTRA_Y THEME->GetMetricF("Gameplay","LifeP1ExtraY")
|
||||
#define LIFE_P2_X THEME->GetMetricF("Gameplay","LifeP2X")
|
||||
#define LIFE_P2_Y THEME->GetMetricF("Gameplay","LifeP2Y")
|
||||
#define LIFE_P2_EXTRA_Y THEME->GetMetricF("Gameplay","LifeP2ExtraY")
|
||||
#define STAGE_X THEME->GetMetricF("Gameplay","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("Gameplay","StageY")
|
||||
#define STAGE_EXTRA_Y THEME->GetMetricF("Gameplay","StageExtraY")
|
||||
#define SONG_NUMBER_P1_X THEME->GetMetricF("Gameplay","SongNumberP1X")
|
||||
#define SONG_NUMBER_P1_Y THEME->GetMetricF("Gameplay","SongNumberP1Y")
|
||||
#define SONG_NUMBER_P1_EXTRA_Y THEME->GetMetricF("Gameplay","SongNumberP1ExtraY")
|
||||
#define SONG_NUMBER_P2_X THEME->GetMetricF("Gameplay","SongNumberP2X")
|
||||
#define SONG_NUMBER_P2_Y THEME->GetMetricF("Gameplay","SongNumberP2Y")
|
||||
#define SONG_NUMBER_P2_EXTRA_Y THEME->GetMetricF("Gameplay","SongNumberP2ExtraY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("Gameplay","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("Gameplay","ScoreP1Y")
|
||||
#define SCORE_P1_EXTRA_Y THEME->GetMetricF("Gameplay","ScoreP1ExtraY")
|
||||
#define SCORE_P2_X THEME->GetMetricF("Gameplay","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("Gameplay","ScoreP2Y")
|
||||
#define SCORE_P2_EXTRA_Y THEME->GetMetricF("Gameplay","ScoreP2ExtraY")
|
||||
#define PLAYER_OPTIONS_P1_X THEME->GetMetricF("Gameplay","PlayerOptionsP1X")
|
||||
#define PLAYER_OPTIONS_P1_Y THEME->GetMetricF("Gameplay","PlayerOptionsP1Y")
|
||||
#define PLAYER_OPTIONS_P1_EXTRA_Y THEME->GetMetricF("Gameplay","PlayerOptionsP1ExtraY")
|
||||
#define PLAYER_OPTIONS_P2_X THEME->GetMetricF("Gameplay","PlayerOptionsP2X")
|
||||
#define PLAYER_OPTIONS_P2_Y THEME->GetMetricF("Gameplay","PlayerOptionsP2Y")
|
||||
#define PLAYER_OPTIONS_P2_EXTRA_Y THEME->GetMetricF("Gameplay","PlayerOptionsP2ExtraY")
|
||||
#define SONG_OPTIONS_X THEME->GetMetricF("Gameplay","SongOptionsX")
|
||||
#define SONG_OPTIONS_Y THEME->GetMetricF("Gameplay","SongOptionsY")
|
||||
#define SONG_OPTIONS_EXTRA_Y THEME->GetMetricF("Gameplay","SongOptionsExtraY")
|
||||
#define DIFFICULTY_P1_X THEME->GetMetricF("Gameplay","DifficultyP1X")
|
||||
#define DIFFICULTY_P1_Y THEME->GetMetricF("Gameplay","DifficultyP1Y")
|
||||
#define DIFFICULTY_P1_REVERSE_Y THEME->GetMetricF("Gameplay","DifficultyP1ReverseY")
|
||||
#define DIFFICULTY_P1_EXTRA_Y THEME->GetMetricF("Gameplay","DifficultyP1ExtraY")
|
||||
#define DIFFICULTY_P1_EXTRA_REVERSE_Y THEME->GetMetricF("Gameplay","DifficultyP1ExtraReverseY")
|
||||
#define DIFFICULTY_P2_X THEME->GetMetricF("Gameplay","DifficultyP2X")
|
||||
#define DIFFICULTY_P2_Y THEME->GetMetricF("Gameplay","DifficultyP2Y")
|
||||
#define DIFFICULTY_P2_REVERSE_Y THEME->GetMetricF("Gameplay","DifficultyP2ReverseY")
|
||||
#define DIFFICULTY_P2_EXTRA_Y THEME->GetMetricF("Gameplay","DifficultyP2ExtraY")
|
||||
#define DIFFICULTY_P2_EXTRA_REVERSE_Y THEME->GetMetricF("Gameplay","DifficultyP2ExtraReverseY")
|
||||
#define DEBUG_X THEME->GetMetricF("Gameplay","DebugX")
|
||||
#define DEBUG_Y THEME->GetMetricF("Gameplay","DebugY")
|
||||
#define AUTOPLAY_X THEME->GetMetricF("Gameplay","AutoPlayX")
|
||||
#define AUTOPLAY_Y THEME->GetMetricF("Gameplay","AutoPlayY")
|
||||
#define SURVIVE_TIME_X THEME->GetMetricF("Gameplay","SurviveTimeX")
|
||||
#define SURVIVE_TIME_Y THEME->GetMetricF("Gameplay","SurviveTimeY")
|
||||
#define SECONDS_BETWEEN_COMMENTS THEME->GetMetricF("Gameplay","SecondsBetweenComments")
|
||||
#define DEMONSTRATION_SECONDS THEME->GetMetricF("Gameplay","DemonstrationSeconds")
|
||||
#define TOP_FRAME_X THEME->GetMetricF("ScreenGameplay","TopFrameX")
|
||||
#define TOP_FRAME_Y THEME->GetMetricF("ScreenGameplay","TopFrameY")
|
||||
#define TOP_FRAME_EXTRA_Y THEME->GetMetricF("ScreenGameplay","TopFrameExtraY")
|
||||
#define BOTTOM_FRAME_X THEME->GetMetricF("ScreenGameplay","BottomFrameX")
|
||||
#define BOTTOM_FRAME_Y THEME->GetMetricF("ScreenGameplay","BottomFrameY")
|
||||
#define BOTTOM_FRAME_EXTRA_Y THEME->GetMetricF("ScreenGameplay","BottomFrameExtraY")
|
||||
#define MIDDLE_FRAME_X THEME->GetMetricF("ScreenGameplay","MiddleFrameX")
|
||||
#define MIDDLE_FRAME_Y THEME->GetMetricF("ScreenGameplay","MiddleFrameY")
|
||||
#define LIFE_P1_X THEME->GetMetricF("ScreenGameplay","LifeP1X")
|
||||
#define LIFE_P1_Y THEME->GetMetricF("ScreenGameplay","LifeP1Y")
|
||||
#define LIFE_P1_EXTRA_Y THEME->GetMetricF("ScreenGameplay","LifeP1ExtraY")
|
||||
#define LIFE_P2_X THEME->GetMetricF("ScreenGameplay","LifeP2X")
|
||||
#define LIFE_P2_Y THEME->GetMetricF("ScreenGameplay","LifeP2Y")
|
||||
#define LIFE_P2_EXTRA_Y THEME->GetMetricF("ScreenGameplay","LifeP2ExtraY")
|
||||
#define STAGE_X THEME->GetMetricF("ScreenGameplay","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("ScreenGameplay","StageY")
|
||||
#define STAGE_EXTRA_Y THEME->GetMetricF("ScreenGameplay","StageExtraY")
|
||||
#define SONG_NUMBER_P1_X THEME->GetMetricF("ScreenGameplay","SongNumberP1X")
|
||||
#define SONG_NUMBER_P1_Y THEME->GetMetricF("ScreenGameplay","SongNumberP1Y")
|
||||
#define SONG_NUMBER_P1_EXTRA_Y THEME->GetMetricF("ScreenGameplay","SongNumberP1ExtraY")
|
||||
#define SONG_NUMBER_P2_X THEME->GetMetricF("ScreenGameplay","SongNumberP2X")
|
||||
#define SONG_NUMBER_P2_Y THEME->GetMetricF("ScreenGameplay","SongNumberP2Y")
|
||||
#define SONG_NUMBER_P2_EXTRA_Y THEME->GetMetricF("ScreenGameplay","SongNumberP2ExtraY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("ScreenGameplay","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("ScreenGameplay","ScoreP1Y")
|
||||
#define SCORE_P1_EXTRA_Y THEME->GetMetricF("ScreenGameplay","ScoreP1ExtraY")
|
||||
#define SCORE_P2_X THEME->GetMetricF("ScreenGameplay","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("ScreenGameplay","ScoreP2Y")
|
||||
#define SCORE_P2_EXTRA_Y THEME->GetMetricF("ScreenGameplay","ScoreP2ExtraY")
|
||||
#define PLAYER_OPTIONS_P1_X THEME->GetMetricF("ScreenGameplay","PlayerOptionsP1X")
|
||||
#define PLAYER_OPTIONS_P1_Y THEME->GetMetricF("ScreenGameplay","PlayerOptionsP1Y")
|
||||
#define PLAYER_OPTIONS_P1_EXTRA_Y THEME->GetMetricF("ScreenGameplay","PlayerOptionsP1ExtraY")
|
||||
#define PLAYER_OPTIONS_P2_X THEME->GetMetricF("ScreenGameplay","PlayerOptionsP2X")
|
||||
#define PLAYER_OPTIONS_P2_Y THEME->GetMetricF("ScreenGameplay","PlayerOptionsP2Y")
|
||||
#define PLAYER_OPTIONS_P2_EXTRA_Y THEME->GetMetricF("ScreenGameplay","PlayerOptionsP2ExtraY")
|
||||
#define SONG_OPTIONS_X THEME->GetMetricF("ScreenGameplay","SongOptionsX")
|
||||
#define SONG_OPTIONS_Y THEME->GetMetricF("ScreenGameplay","SongOptionsY")
|
||||
#define SONG_OPTIONS_EXTRA_Y THEME->GetMetricF("ScreenGameplay","SongOptionsExtraY")
|
||||
#define DIFFICULTY_P1_X THEME->GetMetricF("ScreenGameplay","DifficultyP1X")
|
||||
#define DIFFICULTY_P1_Y THEME->GetMetricF("ScreenGameplay","DifficultyP1Y")
|
||||
#define DIFFICULTY_P1_REVERSE_Y THEME->GetMetricF("ScreenGameplay","DifficultyP1ReverseY")
|
||||
#define DIFFICULTY_P1_EXTRA_Y THEME->GetMetricF("ScreenGameplay","DifficultyP1ExtraY")
|
||||
#define DIFFICULTY_P1_EXTRA_REVERSE_Y THEME->GetMetricF("ScreenGameplay","DifficultyP1ExtraReverseY")
|
||||
#define DIFFICULTY_P2_X THEME->GetMetricF("ScreenGameplay","DifficultyP2X")
|
||||
#define DIFFICULTY_P2_Y THEME->GetMetricF("ScreenGameplay","DifficultyP2Y")
|
||||
#define DIFFICULTY_P2_REVERSE_Y THEME->GetMetricF("ScreenGameplay","DifficultyP2ReverseY")
|
||||
#define DIFFICULTY_P2_EXTRA_Y THEME->GetMetricF("ScreenGameplay","DifficultyP2ExtraY")
|
||||
#define DIFFICULTY_P2_EXTRA_REVERSE_Y THEME->GetMetricF("ScreenGameplay","DifficultyP2ExtraReverseY")
|
||||
#define DEBUG_X THEME->GetMetricF("ScreenGameplay","DebugX")
|
||||
#define DEBUG_Y THEME->GetMetricF("ScreenGameplay","DebugY")
|
||||
#define AUTOPLAY_X THEME->GetMetricF("ScreenGameplay","AutoPlayX")
|
||||
#define AUTOPLAY_Y THEME->GetMetricF("ScreenGameplay","AutoPlayY")
|
||||
#define SURVIVE_TIME_X THEME->GetMetricF("ScreenGameplay","SurviveTimeX")
|
||||
#define SURVIVE_TIME_Y THEME->GetMetricF("ScreenGameplay","SurviveTimeY")
|
||||
#define SECONDS_BETWEEN_COMMENTS THEME->GetMetricF("ScreenGameplay","SecondsBetweenComments")
|
||||
#define DEMONSTRATION_SECONDS THEME->GetMetricF("ScreenGameplay","DemonstrationSeconds")
|
||||
|
||||
float LIFE_X( int p ) {
|
||||
switch( p ) {
|
||||
@@ -1145,15 +1140,7 @@ void ShowSavePrompt( ScreenMessage SM_SendWhenDone )
|
||||
ASSERT(0);
|
||||
}
|
||||
|
||||
SCREENMAN->AddScreenToTop( new ScreenPrompt(
|
||||
SM_SendWhenDone,
|
||||
sMessage,
|
||||
PROMPT_YES_NO,
|
||||
true,
|
||||
SaveChanges,
|
||||
DontSaveChanges
|
||||
)
|
||||
);
|
||||
SCREENMAN->Prompt( SM_SendWhenDone, sMessage, true, true, SaveChanges, DontSaveChanges );
|
||||
}
|
||||
|
||||
void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
@@ -1263,6 +1250,7 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
this->SendScreenMessage( SM_PlayToastySound, 0.3f );
|
||||
|
||||
// set off screen
|
||||
m_sprToasty.StopTweening();
|
||||
m_sprToasty.SetDiffuseColor( D3DXCOLOR(1,1,1,1) );
|
||||
m_sprToasty.SetX( SCREEN_RIGHT+m_sprToasty.GetUnzoomedWidth()/2 );
|
||||
m_sprToasty.SetY( SCREEN_BOTTOM-m_sprToasty.GetUnzoomedHeight()/2 );
|
||||
@@ -1383,11 +1371,11 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
switch( GAMESTATE->m_PlayMode )
|
||||
{
|
||||
case PLAY_MODE_ARCADE:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectMusic" );
|
||||
break;
|
||||
case PLAY_MODE_ONI:
|
||||
case PLAY_MODE_ENDLESS:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectCourse );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
||||
break;
|
||||
default: ASSERT(0);
|
||||
}
|
||||
@@ -1399,7 +1387,7 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
ShowSavePrompt( SM_GoToStateAfterCleared );
|
||||
break;
|
||||
}
|
||||
SCREENMAN->SetNewScreen( new ScreenEvaluation(false) );
|
||||
SCREENMAN->SetNewScreen( "ScreenEvaluation" );
|
||||
break;
|
||||
|
||||
|
||||
@@ -1472,16 +1460,16 @@ void ScreenGameplay::HandleScreenMessage( const ScreenMessage SM )
|
||||
break;
|
||||
}
|
||||
if( GAMESTATE->m_PlayMode == PLAY_MODE_ONI || GAMESTATE->m_PlayMode == PLAY_MODE_ENDLESS )
|
||||
SCREENMAN->SetNewScreen( new ScreenEvaluation(false) );
|
||||
SCREENMAN->SetNewScreen( "ScreenEvaluation" );
|
||||
else if( PREFSMAN->m_bEventMode )
|
||||
this->SendScreenMessage( SM_GoToScreenAfterBack, 0 );
|
||||
else if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() )
|
||||
SCREENMAN->SetNewScreen( new ScreenEvaluation(true) );
|
||||
SCREENMAN->SetNewScreen( "ScreenFinalEvaluation" );
|
||||
else
|
||||
SCREENMAN->SetNewScreen( new ScreenGameOver );
|
||||
SCREENMAN->SetNewScreen( "ScreenGameOver" );
|
||||
break;
|
||||
case SM_GoToTitleMenu:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,14 +11,11 @@
|
||||
*/
|
||||
|
||||
#include "ScreenGraphicOptions.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenOptions.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "StepMania.h"
|
||||
#include "PrefsManager.h"
|
||||
@@ -233,7 +230,7 @@ void ScreenGraphicOptions::ExportOptions()
|
||||
|
||||
void ScreenGraphicOptions::GoToPrevState()
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
PREFSMAN->SaveGlobalPrefsToDisk();
|
||||
ApplyGraphicOptions();
|
||||
}
|
||||
|
||||
@@ -11,18 +11,21 @@
|
||||
*/
|
||||
|
||||
#include "ScreenHowToPlay.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
|
||||
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenHowToPlay","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenHowToPlay","TimerSeconds")
|
||||
#define NEXT_SCREEN_ARCADE THEME->GetMetric("ScreenHowToPlay","NextScreenArcade")
|
||||
#define NEXT_SCREEN_ONI THEME->GetMetric("ScreenHowToPlay","NextScreenOni")
|
||||
|
||||
|
||||
const ScreenMessage SM_GoToNextState = ScreenMessage(SM_User + 1);
|
||||
|
||||
|
||||
@@ -33,9 +36,9 @@ ScreenHowToPlay::ScreenHowToPlay()
|
||||
m_Menu.Load(
|
||||
THEME->GetPathTo("Graphics","How To Play Background"),
|
||||
THEME->GetPathTo("Graphics","How To Play Top Edge"),
|
||||
ssprintf("%s %s to change line %s %s to select between options then press START", CString(char(3)), CString(char(4)), CString(char(1)), CString(char(2)) ),
|
||||
false, true, 20
|
||||
HELP_TEXT, false, true, TIMER_SECONDS
|
||||
);
|
||||
m_Menu.TweenOnScreenFromMenu( SM_None );
|
||||
this->AddSubActor( &m_Menu );
|
||||
|
||||
CString sHowToPlayPath;
|
||||
@@ -57,14 +60,14 @@ ScreenHowToPlay::ScreenHowToPlay()
|
||||
this->AddSubActor( &m_sprHowToPlay );
|
||||
|
||||
m_sprHowToPlay.SetX( SCREEN_LEFT-SCREEN_WIDTH );
|
||||
m_sprHowToPlay.BeginTweening( 0.3f, Actor::TWEEN_BIAS_BEGIN );
|
||||
m_sprHowToPlay.SetTweenX( 0 );
|
||||
m_sprHowToPlay.BeginTweeningQueued( 0.4f ); // sleep
|
||||
m_sprHowToPlay.BeginTweeningQueued( 0.6f, Actor::TWEEN_BIAS_BEGIN );
|
||||
m_sprHowToPlay.SetTweenX( CENTER_X );
|
||||
}
|
||||
|
||||
ScreenHowToPlay::~ScreenHowToPlay()
|
||||
{
|
||||
LOG->Trace( "ScreenHowToPlay::~ScreenHowToPlay()" );
|
||||
|
||||
}
|
||||
|
||||
void ScreenHowToPlay::Update( float fDeltaTime )
|
||||
@@ -101,11 +104,11 @@ void ScreenHowToPlay::HandleScreenMessage( const ScreenMessage SM )
|
||||
switch( GAMESTATE->m_PlayMode )
|
||||
{
|
||||
case PLAY_MODE_ARCADE:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN_ARCADE );
|
||||
break;
|
||||
case PLAY_MODE_ONI:
|
||||
case PLAY_MODE_ENDLESS:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectCourse );
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN_ONI );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
@@ -123,5 +126,5 @@ void ScreenHowToPlay::MenuStart( const PlayerNumber p )
|
||||
m_Menu.TweenOffScreenToMenu( SM_GoToNextState );
|
||||
|
||||
m_sprHowToPlay.BeginTweening( 0.3f, Actor::TWEEN_BIAS_END );
|
||||
m_sprHowToPlay.SetTweenX( SCREEN_RIGHT );
|
||||
m_sprHowToPlay.SetTweenX( SCREEN_RIGHT+m_sprHowToPlay.GetUnzoomedWidth()/2 );
|
||||
}
|
||||
|
||||
@@ -16,17 +16,18 @@
|
||||
#include "PrefsManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
#include "RageException.h"
|
||||
|
||||
|
||||
ScreenManager* SCREENMAN = NULL; // global and accessable from anywhere in our program
|
||||
|
||||
|
||||
#define STATS_X THEME->GetMetricF("Other","StatsX")
|
||||
#define STATS_Y THEME->GetMetricF("Other","StatsY")
|
||||
#define CREDITS_P1_X THEME->GetMetricF("Other","CreditsP1X")
|
||||
#define CREDITS_P1_Y THEME->GetMetricF("Other","CreditsP1Y")
|
||||
#define CREDITS_P2_X THEME->GetMetricF("Other","CreditsP2X")
|
||||
#define CREDITS_P2_Y THEME->GetMetricF("Other","CreditsP2Y")
|
||||
#define STATS_X THEME->GetMetricF("ScreenManager","StatsX")
|
||||
#define STATS_Y THEME->GetMetricF("ScreenManager","StatsY")
|
||||
#define CREDITS_P1_X THEME->GetMetricF("ScreenManager","CreditsP1X")
|
||||
#define CREDITS_P1_Y THEME->GetMetricF("ScreenManager","CreditsP1Y")
|
||||
#define CREDITS_P2_X THEME->GetMetricF("ScreenManager","CreditsP2X")
|
||||
#define CREDITS_P2_Y THEME->GetMetricF("ScreenManager","CreditsP2Y")
|
||||
|
||||
float CREDITS_X( int p ) {
|
||||
switch( p ) {
|
||||
@@ -152,9 +153,77 @@ void ScreenManager::Input( const DeviceInput& DeviceI, const InputEventType type
|
||||
m_ScreenStack[m_ScreenStack.GetSize()-1]->Input( DeviceI, type, GameI, MenuI, StyleI );
|
||||
}
|
||||
|
||||
void ScreenManager::SetNewScreen( Screen *pNewScreen )
|
||||
|
||||
// Screen classes
|
||||
#include "ScreenAppearanceOptions.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "ScreenEdit.h"
|
||||
#include "ScreenEditMenu.h"
|
||||
#include "ScreenEvaluation.h"
|
||||
#include "ScreenEz2SelectPlayer.h"
|
||||
#include "ScreenEz2SelectStyle.h"
|
||||
#include "ScreenGameOptions.h"
|
||||
#include "ScreenGameOver.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "ScreenGraphicOptions.h"
|
||||
#include "ScreenHowToPlay.h"
|
||||
#include "ScreenMapInstruments.h"
|
||||
#include "ScreenMusicScroll.h"
|
||||
#include "ScreenPlayerOptions.h"
|
||||
#include "ScreenSandbox.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenSelectGame.h"
|
||||
#include "ScreenSelectGroup.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenSelectStyle5th.h"
|
||||
#include "ScreenSelectStyle.h"
|
||||
#include "ScreenSongOptions.h"
|
||||
#include "ScreenStage.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
|
||||
#include "ScreenPrompt.h"
|
||||
#include "ScreenTextEntry.h"
|
||||
|
||||
void ScreenManager::SetNewScreen( CString sClassName )
|
||||
{
|
||||
// move CurrentScreen to ScreenToDelete
|
||||
// It makes sense that ScreenManager should allocate memory for a new screen since it
|
||||
// deletes it later on. This also convention will reduce includes because screens won't
|
||||
// have to include each other's headers of other screens.
|
||||
|
||||
Screen* pNewScreen;
|
||||
|
||||
if( 0==stricmp(sClassName, "ScreenAppearanceOptions") )pNewScreen = new ScreenAppearanceOptions;
|
||||
else if( 0==stricmp(sClassName, "ScreenCaution") ) pNewScreen = new ScreenCaution;
|
||||
else if( 0==stricmp(sClassName, "ScreenEdit") ) pNewScreen = new ScreenEdit;
|
||||
else if( 0==stricmp(sClassName, "ScreenEditMenu") ) pNewScreen = new ScreenEditMenu;
|
||||
else if( 0==stricmp(sClassName, "ScreenEvaluation") ) pNewScreen = new ScreenEvaluation;
|
||||
else if( 0==stricmp(sClassName, "ScreenFinalEvaluation") ) pNewScreen = new ScreenFinalEvaluation;
|
||||
else if( 0==stricmp(sClassName, "ScreenEz2SelectPlayer") ) pNewScreen = new ScreenEz2SelectPlayer;
|
||||
else if( 0==stricmp(sClassName, "ScreenEz2SelectStyle") ) pNewScreen = new ScreenEz2SelectStyle;
|
||||
else if( 0==stricmp(sClassName, "ScreenGameOptions") ) pNewScreen = new ScreenGameOptions;
|
||||
else if( 0==stricmp(sClassName, "ScreenGameOver") ) pNewScreen = new ScreenGameOver;
|
||||
else if( 0==stricmp(sClassName, "ScreenGameplay") ) pNewScreen = new ScreenGameplay;
|
||||
else if( 0==stricmp(sClassName, "ScreenGraphicOptions") ) pNewScreen = new ScreenGraphicOptions;
|
||||
else if( 0==stricmp(sClassName, "ScreenHowToPlay") ) pNewScreen = new ScreenHowToPlay;
|
||||
else if( 0==stricmp(sClassName, "ScreenMapInstruments") ) pNewScreen = new ScreenMapInstruments;
|
||||
else if( 0==stricmp(sClassName, "ScreenMusicScroll") ) pNewScreen = new ScreenMusicScroll;
|
||||
else if( 0==stricmp(sClassName, "ScreenPlayerOptions") ) pNewScreen = new ScreenPlayerOptions;
|
||||
else if( 0==stricmp(sClassName, "ScreenSandbox") ) pNewScreen = new ScreenSandbox;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectCourse") ) pNewScreen = new ScreenSelectCourse;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectDifficulty") ) pNewScreen = new ScreenSelectDifficulty;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectGame") ) pNewScreen = new ScreenSelectGame;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectGroup") ) pNewScreen = new ScreenSelectGroup;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectMusic") ) pNewScreen = new ScreenSelectMusic;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectStyle5th") ) pNewScreen = new ScreenSelectStyle5th;
|
||||
else if( 0==stricmp(sClassName, "ScreenSelectStyle") ) pNewScreen = new ScreenSelectStyle;
|
||||
else if( 0==stricmp(sClassName, "ScreenSongOptions") ) pNewScreen = new ScreenSongOptions;
|
||||
else if( 0==stricmp(sClassName, "ScreenStage") ) pNewScreen = new ScreenStage;
|
||||
else if( 0==stricmp(sClassName, "ScreenTitleMenu") ) pNewScreen = new ScreenTitleMenu;
|
||||
else
|
||||
throw RageException( "Invalid Screen class name '%s'", sClassName );
|
||||
|
||||
// move current screen to ScreenToDelete
|
||||
RefreshCreditsMessages();
|
||||
m_ScreensToDelete.Copy( m_ScreenStack );
|
||||
|
||||
@@ -162,13 +231,16 @@ void ScreenManager::SetNewScreen( Screen *pNewScreen )
|
||||
m_ScreenStack.Add( pNewScreen );
|
||||
}
|
||||
|
||||
void ScreenManager::AddScreenToTop( Screen *pNewScreen )
|
||||
void ScreenManager::Prompt( ScreenMessage SM_SendWhenDone, CString sText, bool bYesNo, bool bDefaultAnswer, void(*OnYes)(), void(*OnNo)() )
|
||||
{
|
||||
// our responsibility to tell the old state that it's losing focus
|
||||
// m_ScreenStack[m_ScreenStack.GetSize()-1]->HandleScreenMessage( SM_LosingInputFocus );
|
||||
|
||||
// add the new state onto the back of the array
|
||||
m_ScreenStack.Add( pNewScreen );
|
||||
m_ScreenStack.Add( new ScreenPrompt(SM_SendWhenDone, sText, bYesNo, bDefaultAnswer, OnYes, OnNo) );
|
||||
}
|
||||
|
||||
void ScreenManager::TextEntry( ScreenMessage SM_SendWhenDone, CString sQuestion, CString sInitialAnswer, void(*OnOK)(CString sAnswer), void(*OnCanel)() )
|
||||
{
|
||||
// add the new state onto the back of the array
|
||||
m_ScreenStack.Add( new ScreenTextEntry(SM_SendWhenDone, sQuestion, sInitialAnswer, OnOK, OnCanel) );
|
||||
}
|
||||
|
||||
void ScreenManager::PopTopScreen( ScreenMessage SM )
|
||||
|
||||
@@ -32,20 +32,19 @@ public:
|
||||
void Draw();
|
||||
void Input( const DeviceInput& DeviceI, const InputEventType type, const GameInput &GameI, const MenuInput &MenuI, const StyleInput &StyleI );
|
||||
|
||||
void SetNewScreen( Screen *pNewScreen );
|
||||
void AddScreenToTop( Screen *pNewScreen );
|
||||
void PopTopScreen( ScreenMessage SM_SendToNewTopScreen );
|
||||
|
||||
void SetNewScreen( CString sClassName );
|
||||
void Prompt( ScreenMessage SM_SendWhenDone, CString sText, bool bYesNo = false, bool bDefaultAnswer = false, void(*OnYes)() = NULL, void(*OnNo)() = NULL );
|
||||
void TextEntry( ScreenMessage SM_SendWhenDone, CString sQuestion, CString sInitialAnswer, void(*OnOK)(CString sAnswer) = NULL, void(*OnCanel)() = NULL );
|
||||
void PopTopScreen( ScreenMessage SM );
|
||||
void SystemMessage( CString sMessage );
|
||||
|
||||
void SendMessageToTopScreen( ScreenMessage SM, float fDelay );
|
||||
|
||||
// void OverrideCreditsMessage( PlayerNumber p, CString sNewString );
|
||||
void RefreshCreditsMessages();
|
||||
|
||||
private:
|
||||
CArray<Screen*, Screen*&> m_ScreenStack;
|
||||
CArray<Screen*, Screen*&> m_ScreensToDelete;
|
||||
CArray<Screen*, Screen*> m_ScreenStack;
|
||||
CArray<Screen*, Screen*> m_ScreensToDelete;
|
||||
|
||||
BitmapText m_textStats;
|
||||
BitmapText m_textSystemMessage;
|
||||
|
||||
@@ -14,9 +14,6 @@
|
||||
#include "ScreenMusicScroll.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
@@ -227,7 +224,7 @@ void ScreenMusicScroll::HandleScreenMessage( const ScreenMessage SM )
|
||||
m_Fade.CloseWipingRight( SM_GoToNextState );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,14 +11,11 @@
|
||||
*/
|
||||
|
||||
#include "ScreenOptions.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
|
||||
@@ -1,30 +1,26 @@
|
||||
#include "stdafx.h"
|
||||
/*
|
||||
-----------------------------------------------------------------------------
|
||||
File: ScreenPlayerOptions.h
|
||||
Class: ScreenPlayerOptions
|
||||
|
||||
Desc: Select a song.
|
||||
|
||||
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
||||
Chris Danford
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "ScreenPlayerOptions.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "ScreenSongOptions.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameManager.h"
|
||||
#include "GameState.h"
|
||||
#include "RageSound.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
|
||||
|
||||
enum {
|
||||
@@ -134,14 +130,14 @@ void ScreenPlayerOptions::GoToPrevState()
|
||||
{
|
||||
if(GAMESTATE->m_PlayMode == PLAY_MODE_ONI ||
|
||||
GAMESTATE->m_PlayMode == PLAY_MODE_ENDLESS)
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectCourse );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
||||
else
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectMusic" );
|
||||
}
|
||||
|
||||
void ScreenPlayerOptions::GoToNextState()
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenSongOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenSongOptions" );
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
|
||||
@@ -26,14 +25,14 @@ const float PROMPT_X = CENTER_X;
|
||||
const float PROMPT_Y = CENTER_Y + 120;
|
||||
|
||||
|
||||
ScreenPrompt::ScreenPrompt( ScreenMessage SM_SendWhenDone, CString sText, PromptType pt, bool bDefaultAnswer, void(*OnYes)(), void(*OnNo)() )
|
||||
ScreenPrompt::ScreenPrompt( ScreenMessage SM_SendWhenDone, CString sText, bool bYesNoPrompt, bool bDefaultAnswer, void(*OnYes)(), void(*OnNo)() )
|
||||
{
|
||||
m_SMSendWhenDone = SM_SendWhenDone;
|
||||
m_bYesNoPrompt = bYesNoPrompt;
|
||||
m_bAnswer = bDefaultAnswer;
|
||||
m_pOnYes = OnYes;
|
||||
m_pOnNo = OnNo;
|
||||
|
||||
m_PromptType = pt;
|
||||
m_bAnswer = bDefaultAnswer;
|
||||
|
||||
m_Fade.SetTransitionTime( 0.5f );
|
||||
m_Fade.SetDiffuseColor( D3DXCOLOR(0,0,0,0.7f) );
|
||||
@@ -58,18 +57,17 @@ ScreenPrompt::ScreenPrompt( ScreenMessage SM_SendWhenDone, CString sText, Prompt
|
||||
|
||||
|
||||
|
||||
switch( m_PromptType )
|
||||
if( m_bYesNoPrompt )
|
||||
{
|
||||
case PROMPT_OK:
|
||||
m_textAnswer[0].SetText( "OK" );
|
||||
m_textAnswer[0].SetX( PROMPT_X );
|
||||
break;
|
||||
case PROMPT_YES_NO:
|
||||
}
|
||||
else
|
||||
{
|
||||
m_textAnswer[0].SetText( "NO" );
|
||||
m_textAnswer[1].SetText( "YES" );
|
||||
m_textAnswer[0].SetX( PROMPT_X+50 );
|
||||
m_textAnswer[1].SetX( PROMPT_X-50 );
|
||||
break;
|
||||
}
|
||||
|
||||
m_rectAnswerBox.SetXY( m_textAnswer[m_bAnswer].GetX(), m_textAnswer[m_bAnswer].GetY() );
|
||||
@@ -117,7 +115,7 @@ void ScreenPrompt::HandleScreenMessage( const ScreenMessage SM )
|
||||
|
||||
void ScreenPrompt::MenuLeft( const PlayerNumber p )
|
||||
{
|
||||
if( m_PromptType == PROMPT_OK )
|
||||
if( !m_bYesNoPrompt )
|
||||
return;
|
||||
|
||||
MenuRight( p );
|
||||
@@ -125,7 +123,7 @@ void ScreenPrompt::MenuLeft( const PlayerNumber p )
|
||||
|
||||
void ScreenPrompt::MenuRight( const PlayerNumber p )
|
||||
{
|
||||
if( m_PromptType == PROMPT_OK )
|
||||
if( !m_bYesNoPrompt )
|
||||
return;
|
||||
|
||||
m_textAnswer[m_bAnswer].SetEffectNone();
|
||||
|
||||
@@ -17,15 +17,11 @@
|
||||
#include "RandomSample.h"
|
||||
|
||||
|
||||
enum PromptType{ PROMPT_OK, PROMPT_YES_NO };
|
||||
|
||||
|
||||
|
||||
class ScreenPrompt : public Screen
|
||||
{
|
||||
public:
|
||||
ScreenPrompt();
|
||||
ScreenPrompt( ScreenMessage SM_SendWhenDone, CString sText, PromptType pt, bool bDefaultAnswer = false, void(*OnYes)() = NULL, void(*OnNo)() = NULL );
|
||||
ScreenPrompt( ScreenMessage SM_SendWhenDone, CString sText, bool bYesNoPrompt=false, bool bDefaultAnswer = false, void(*OnYes)() = NULL, void(*OnNo)() = NULL );
|
||||
|
||||
virtual void Update( float fDeltaTime );
|
||||
virtual void DrawPrimitives();
|
||||
@@ -43,7 +39,7 @@ protected:
|
||||
BitmapText m_textQuestion;
|
||||
Quad m_rectAnswerBox;
|
||||
BitmapText m_textAnswer[2]; // "YES" or "NO"
|
||||
PromptType m_PromptType;
|
||||
bool m_bYesNoPrompt; // false = OK prompt, true = YES/NO prompt
|
||||
bool m_bAnswer; // true = "YES", false = "NO";
|
||||
ScreenMessage m_SMSendWhenDone;
|
||||
void(*m_pOnYes)();
|
||||
|
||||
@@ -13,8 +13,6 @@
|
||||
#include "ScreenSandbox.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "Quad.h"
|
||||
@@ -60,7 +58,7 @@ void ScreenSandbox::Input( const DeviceInput& DeviceI, const InputEventType type
|
||||
case MENU_BUTTON_RIGHT:
|
||||
break;
|
||||
case MENU_BUTTON_BACK:
|
||||
//SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
//SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,41 +17,36 @@
|
||||
#include "SongManager.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "ScreenPrompt.h"
|
||||
#include "ScreenPlayerOptions.h"
|
||||
#include "RageLog.h"
|
||||
#include "InputMapper.h"
|
||||
#include "InputQueue.h"
|
||||
#include "ScreenStage.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
#include "RageMusic.h"
|
||||
|
||||
|
||||
#define BANNER_FRAME_X THEME->GetMetricF("SelectCourse","BannerFrameX")
|
||||
#define BANNER_FRAME_Y THEME->GetMetricF("SelectCourse","BannerFrameY")
|
||||
#define BANNER_X THEME->GetMetricF("SelectCourse","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("SelectCourse","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("SelectCourse","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("SelectCourse","BannerHeight")
|
||||
#define STAGES_X THEME->GetMetricF("SelectCourse","StagesX")
|
||||
#define STAGES_Y THEME->GetMetricF("SelectCourse","StagesY")
|
||||
#define TIME_X THEME->GetMetricF("SelectCourse","TimeX")
|
||||
#define TIME_Y THEME->GetMetricF("SelectCourse","TimeY")
|
||||
#define CONTENTS_X THEME->GetMetricF("SelectCourse","ContentsX")
|
||||
#define CONTENTS_Y THEME->GetMetricF("SelectCourse","ContentsY")
|
||||
#define WHEEL_X THEME->GetMetricF("SelectCourse","WheelX")
|
||||
#define WHEEL_Y THEME->GetMetricF("SelectCourse","WheelY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("SelectCourse","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("SelectCourse","ScoreP1Y")
|
||||
#define SCORE_P2_X THEME->GetMetricF("SelectCourse","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("SelectCourse","ScoreP2Y")
|
||||
#define HELP_TEXT THEME->GetMetric("SelectCourse","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("SelectCourse","TimerSeconds")
|
||||
#define BANNER_FRAME_X THEME->GetMetricF("ScreenSelectCourse","BannerFrameX")
|
||||
#define BANNER_FRAME_Y THEME->GetMetricF("ScreenSelectCourse","BannerFrameY")
|
||||
#define BANNER_X THEME->GetMetricF("ScreenSelectCourse","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("ScreenSelectCourse","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("ScreenSelectCourse","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("ScreenSelectCourse","BannerHeight")
|
||||
#define STAGES_X THEME->GetMetricF("ScreenSelectCourse","StagesX")
|
||||
#define STAGES_Y THEME->GetMetricF("ScreenSelectCourse","StagesY")
|
||||
#define TIME_X THEME->GetMetricF("ScreenSelectCourse","TimeX")
|
||||
#define TIME_Y THEME->GetMetricF("ScreenSelectCourse","TimeY")
|
||||
#define CONTENTS_X THEME->GetMetricF("ScreenSelectCourse","ContentsX")
|
||||
#define CONTENTS_Y THEME->GetMetricF("ScreenSelectCourse","ContentsY")
|
||||
#define WHEEL_X THEME->GetMetricF("ScreenSelectCourse","WheelX")
|
||||
#define WHEEL_Y THEME->GetMetricF("ScreenSelectCourse","WheelY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("ScreenSelectCourse","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("ScreenSelectCourse","ScoreP1Y")
|
||||
#define SCORE_P2_X THEME->GetMetricF("ScreenSelectCourse","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("ScreenSelectCourse","ScoreP2Y")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenSelectCourse","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectCourse","TimerSeconds")
|
||||
|
||||
float BEST_TIME_X( int p ) {
|
||||
switch( p ) {
|
||||
@@ -79,11 +74,7 @@ ScreenSelectCourse::ScreenSelectCourse()
|
||||
{
|
||||
LOG->Trace( "ScreenSelectCourse::ScreenSelectCourse()" );
|
||||
|
||||
if( !MUSIC->IsPlaying() || MUSIC->GetLoadedFilePath() != THEME->GetPathTo("Sounds","select course music") )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select course music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select course music") );
|
||||
|
||||
m_bMadeChoice = false;
|
||||
m_bGoToOptions = false;
|
||||
@@ -260,7 +251,7 @@ void ScreenSelectCourse::HandleScreenMessage( const ScreenMessage SM )
|
||||
MenuStart(PLAYER_1);
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
|
||||
@@ -276,13 +267,10 @@ void ScreenSelectCourse::HandleScreenMessage( const ScreenMessage SM )
|
||||
}
|
||||
|
||||
if( bIsHoldingNext || m_bGoToOptions )
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenPlayerOptions );
|
||||
}
|
||||
SCREENMAN->SetNewScreen( "ScreenPlayerOptions" );
|
||||
else
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenStage );
|
||||
}
|
||||
SCREENMAN->SetNewScreen( "ScreenStage" );
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,57 +1,56 @@
|
||||
#include "stdafx.h"
|
||||
/*
|
||||
-----------------------------------------------------------------------------
|
||||
File: ScreenSelectDifficulty.cpp
|
||||
Class: ScreenSelectDifficulty
|
||||
|
||||
Desc: Testing the Screen class.
|
||||
|
||||
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
||||
Chris Danford
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectGroup.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenSelectCourse.h"
|
||||
#include "GameState.h"
|
||||
#include "RageMusic.h"
|
||||
|
||||
|
||||
const float LOCK_INPUT_TIME = 0.30f; // lock input while waiting for tweening to complete
|
||||
|
||||
|
||||
#define MORE_PAGE1_X THEME->GetMetricF("SelectDifficulty","MorePage1X")
|
||||
#define MORE_PAGE1_Y THEME->GetMetricF("SelectDifficulty","MorePage1Y")
|
||||
#define MORE_PAGE2_X THEME->GetMetricF("SelectDifficulty","MorePage2X")
|
||||
#define MORE_PAGE2_Y THEME->GetMetricF("SelectDifficulty","MorePage2Y")
|
||||
#define EXPLANATION_PAGE1_X THEME->GetMetricF("SelectDifficulty","ExplanationPage1X")
|
||||
#define EXPLANATION_PAGE1_Y THEME->GetMetricF("SelectDifficulty","ExplanationPage1Y")
|
||||
#define EXPLANATION_PAGE2_X THEME->GetMetricF("SelectDifficulty","ExplanationPage2X")
|
||||
#define EXPLANATION_PAGE2_Y THEME->GetMetricF("SelectDifficulty","ExplanationPage2Y")
|
||||
#define EASY_X THEME->GetMetricF("SelectDifficulty","EasyX")
|
||||
#define EASY_Y THEME->GetMetricF("SelectDifficulty","EasyY")
|
||||
#define MEDIUM_X THEME->GetMetricF("SelectDifficulty","MediumX")
|
||||
#define MEDIUM_Y THEME->GetMetricF("SelectDifficulty","MediumY")
|
||||
#define HARD_X THEME->GetMetricF("SelectDifficulty","HardX")
|
||||
#define HARD_Y THEME->GetMetricF("SelectDifficulty","HardY")
|
||||
#define ONI_X THEME->GetMetricF("SelectDifficulty","OniX")
|
||||
#define ONI_Y THEME->GetMetricF("SelectDifficulty","OniY")
|
||||
#define ENDLESS_X THEME->GetMetricF("SelectDifficulty","EndlessX")
|
||||
#define ENDLESS_Y THEME->GetMetricF("SelectDifficulty","EndlessY")
|
||||
#define ARROW_OFFSET_P1_X THEME->GetMetricF("SelectDifficulty","ArrowOffsetP1X")
|
||||
#define ARROW_OFFSET_P1_Y THEME->GetMetricF("SelectDifficulty","ArrowOffsetP1Y")
|
||||
#define ARROW_OFFSET_P2_X THEME->GetMetricF("SelectDifficulty","ArrowOffsetP2X")
|
||||
#define ARROW_OFFSET_P2_Y THEME->GetMetricF("SelectDifficulty","ArrowOffsetP2Y")
|
||||
#define ARROW_SHADOW_LENGTH_X THEME->GetMetricF("SelectDifficulty","ArrowShadowLengthX")
|
||||
#define ARROW_SHADOW_LENGTH_Y THEME->GetMetricF("SelectDifficulty","ArrowShadowLengthY")
|
||||
#define HELP_TEXT THEME->GetMetric("SelectDifficulty","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("SelectDifficulty","TimerSeconds")
|
||||
#define MORE_PAGE1_X THEME->GetMetricF("ScreenSelectDifficulty","MorePage1X")
|
||||
#define MORE_PAGE1_Y THEME->GetMetricF("ScreenSelectDifficulty","MorePage1Y")
|
||||
#define MORE_PAGE2_X THEME->GetMetricF("ScreenSelectDifficulty","MorePage2X")
|
||||
#define MORE_PAGE2_Y THEME->GetMetricF("ScreenSelectDifficulty","MorePage2Y")
|
||||
#define EXPLANATION_PAGE1_X THEME->GetMetricF("ScreenSelectDifficulty","ExplanationPage1X")
|
||||
#define EXPLANATION_PAGE1_Y THEME->GetMetricF("ScreenSelectDifficulty","ExplanationPage1Y")
|
||||
#define EXPLANATION_PAGE2_X THEME->GetMetricF("ScreenSelectDifficulty","ExplanationPage2X")
|
||||
#define EXPLANATION_PAGE2_Y THEME->GetMetricF("ScreenSelectDifficulty","ExplanationPage2Y")
|
||||
#define EASY_X THEME->GetMetricF("ScreenSelectDifficulty","EasyX")
|
||||
#define EASY_Y THEME->GetMetricF("ScreenSelectDifficulty","EasyY")
|
||||
#define MEDIUM_X THEME->GetMetricF("ScreenSelectDifficulty","MediumX")
|
||||
#define MEDIUM_Y THEME->GetMetricF("ScreenSelectDifficulty","MediumY")
|
||||
#define HARD_X THEME->GetMetricF("ScreenSelectDifficulty","HardX")
|
||||
#define HARD_Y THEME->GetMetricF("ScreenSelectDifficulty","HardY")
|
||||
#define ONI_X THEME->GetMetricF("ScreenSelectDifficulty","OniX")
|
||||
#define ONI_Y THEME->GetMetricF("ScreenSelectDifficulty","OniY")
|
||||
#define ENDLESS_X THEME->GetMetricF("ScreenSelectDifficulty","EndlessX")
|
||||
#define ENDLESS_Y THEME->GetMetricF("ScreenSelectDifficulty","EndlessY")
|
||||
#define CURSOR_OFFSET_P1_X THEME->GetMetricF("ScreenSelectDifficulty","CursorOffsetP1X")
|
||||
#define CURSOR_OFFSET_P1_Y THEME->GetMetricF("ScreenSelectDifficulty","CursorOffsetP1Y")
|
||||
#define CURSOR_OFFSET_P2_X THEME->GetMetricF("ScreenSelectDifficulty","CursorOffsetP2X")
|
||||
#define CURSOR_OFFSET_P2_Y THEME->GetMetricF("ScreenSelectDifficulty","CursorOffsetP2Y")
|
||||
#define CURSOR_SHADOW_LENGTH_X THEME->GetMetricF("ScreenSelectDifficulty","CursorShadowLengthX")
|
||||
#define CURSOR_SHADOW_LENGTH_Y THEME->GetMetricF("ScreenSelectDifficulty","CursorShadowLengthY")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenSelectDifficulty","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectDifficulty","TimerSeconds")
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenSelectDifficulty","NextScreen")
|
||||
|
||||
|
||||
float MORE_X( int iIndex ) {
|
||||
@@ -102,17 +101,17 @@ float ITEM_Y( int iItemIndex ) {
|
||||
default: ASSERT(0); return 0;
|
||||
}
|
||||
}
|
||||
float ARROW_X( int iItemIndex, int p ) {
|
||||
float CURSOR_X( int iItemIndex, int p ) {
|
||||
switch( p ) {
|
||||
case PLAYER_1: return ITEM_X(iItemIndex) + ARROW_OFFSET_P1_X;
|
||||
case PLAYER_2: return ITEM_X(iItemIndex) + ARROW_OFFSET_P2_X;
|
||||
case PLAYER_1: return ITEM_X(iItemIndex) + CURSOR_OFFSET_P1_X;
|
||||
case PLAYER_2: return ITEM_X(iItemIndex) + CURSOR_OFFSET_P2_X;
|
||||
default: ASSERT(0); return 0;
|
||||
}
|
||||
}
|
||||
float ARROW_Y( int iItemIndex, int p ) {
|
||||
float CURSOR_Y( int iItemIndex, int p ) {
|
||||
switch( p ) {
|
||||
case PLAYER_1: return ITEM_Y(iItemIndex) + ARROW_OFFSET_P1_Y;
|
||||
case PLAYER_2: return ITEM_Y(iItemIndex) + ARROW_OFFSET_P2_Y;
|
||||
case PLAYER_1: return ITEM_Y(iItemIndex) + CURSOR_OFFSET_P1_Y;
|
||||
case PLAYER_2: return ITEM_Y(iItemIndex) + CURSOR_OFFSET_P2_Y;
|
||||
default: ASSERT(0); return 0;
|
||||
}
|
||||
}
|
||||
@@ -190,22 +189,21 @@ ScreenSelectDifficulty::ScreenSelectDifficulty()
|
||||
if( !GAMESTATE->IsPlayerEnabled((PlayerNumber)p) )
|
||||
continue;
|
||||
|
||||
m_sprArrowShadow[p].Load( THEME->GetPathTo("Graphics", "select difficulty arrows") );
|
||||
m_sprArrowShadow[p].StopAnimating();
|
||||
m_sprArrowShadow[p].SetState( p );
|
||||
m_sprArrowShadow[p].TurnShadowOff();
|
||||
m_sprArrowShadow[p].SetDiffuseColor( D3DXCOLOR(0,0,0,0.6f) );
|
||||
m_framePages.AddSubActor( &m_sprArrowShadow[p] );
|
||||
m_sprCursorShadow[p].Load( THEME->GetPathTo("Graphics", "select difficulty cursor 2x1") );
|
||||
m_sprCursorShadow[p].StopAnimating();
|
||||
m_sprCursorShadow[p].SetState( p );
|
||||
m_sprCursorShadow[p].TurnShadowOff();
|
||||
m_sprCursorShadow[p].SetDiffuseColor( D3DXCOLOR(0,0,0,0.6f) );
|
||||
m_framePages.AddSubActor( &m_sprCursorShadow[p] );
|
||||
|
||||
m_sprArrow[p].Load( THEME->GetPathTo("Graphics", "select difficulty arrows") );
|
||||
m_sprArrow[p].StopAnimating();
|
||||
m_sprArrow[p].SetState( p );
|
||||
m_sprArrow[p].TurnShadowOff();
|
||||
m_sprArrow[p].SetDiffuseColor( PlayerToColor((PlayerNumber)p) );
|
||||
m_sprArrow[p].SetEffectGlowing();
|
||||
m_framePages.AddSubActor( &m_sprArrow[p] );
|
||||
m_sprCursor[p].Load( THEME->GetPathTo("Graphics", "select difficulty cursor 2x1") );
|
||||
m_sprCursor[p].StopAnimating();
|
||||
m_sprCursor[p].SetState( p );
|
||||
m_sprCursor[p].TurnShadowOff();
|
||||
m_sprCursor[p].SetEffectGlowing();
|
||||
m_framePages.AddSubActor( &m_sprCursor[p] );
|
||||
|
||||
m_sprOK[p].Load( THEME->GetPathTo("Graphics", "select difficulty ok") );
|
||||
m_sprOK[p].Load( THEME->GetPathTo("Graphics", "select difficulty ok 2x1") );
|
||||
m_framePages.AddSubActor( &m_sprOK[p] );
|
||||
}
|
||||
|
||||
@@ -221,11 +219,7 @@ ScreenSelectDifficulty::ScreenSelectDifficulty()
|
||||
m_Menu.TweenOnScreenFromMenu( SM_None );
|
||||
TweenOnScreen();
|
||||
|
||||
if( !MUSIC->IsPlaying() || MUSIC->GetLoadedFilePath() != THEME->GetPathTo("Sounds","select difficulty music") )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select difficulty music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select difficulty music") );
|
||||
|
||||
m_fLockInputTime = LOCK_INPUT_TIME;
|
||||
}
|
||||
@@ -276,7 +270,7 @@ void ScreenSelectDifficulty::HandleScreenMessage( const ScreenMessage SM )
|
||||
}
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
{
|
||||
@@ -308,9 +302,9 @@ void ScreenSelectDifficulty::HandleScreenMessage( const ScreenMessage SM )
|
||||
|
||||
if(GAMESTATE->m_PlayMode == PLAY_MODE_ONI ||
|
||||
GAMESTATE->m_PlayMode == PLAY_MODE_ENDLESS)
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectCourse );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectCourse" );
|
||||
else
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectGroup );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectGroup" );
|
||||
|
||||
break;
|
||||
case SM_StartTweeningOffScreen:
|
||||
@@ -405,13 +399,13 @@ void ScreenSelectDifficulty::ChangeTo( const PlayerNumber pn, int iSelectionWas,
|
||||
{
|
||||
if( bSelectedSomethingOnPage2 || bChangedPagesFrom2To1 || p==pn )
|
||||
{
|
||||
m_sprArrow[p].BeginTweening( 0.2f, bChangedPages ? TWEEN_LINEAR : TWEEN_BIAS_BEGIN );
|
||||
m_sprArrow[p].SetTweenX( ARROW_X(m_iSelection[p],(PlayerNumber)p) - ARROW_SHADOW_LENGTH_X );
|
||||
m_sprArrow[p].SetTweenY( ARROW_Y(m_iSelection[p],(PlayerNumber)p) - ARROW_SHADOW_LENGTH_Y );
|
||||
m_sprCursor[p].BeginTweening( 0.2f, bChangedPages ? TWEEN_LINEAR : TWEEN_BIAS_BEGIN );
|
||||
m_sprCursor[p].SetTweenX( CURSOR_X(m_iSelection[p],(PlayerNumber)p) - CURSOR_SHADOW_LENGTH_X );
|
||||
m_sprCursor[p].SetTweenY( CURSOR_Y(m_iSelection[p],(PlayerNumber)p) - CURSOR_SHADOW_LENGTH_Y );
|
||||
|
||||
m_sprArrowShadow[p].BeginTweening( 0.2f, bChangedPages ? TWEEN_LINEAR : TWEEN_BIAS_BEGIN );
|
||||
m_sprArrowShadow[p].SetTweenX( ARROW_X(m_iSelection[p],(PlayerNumber)p) );
|
||||
m_sprArrowShadow[p].SetTweenY( ARROW_Y(m_iSelection[p],(PlayerNumber)p) );
|
||||
m_sprCursorShadow[p].BeginTweening( 0.2f, bChangedPages ? TWEEN_LINEAR : TWEEN_BIAS_BEGIN );
|
||||
m_sprCursorShadow[p].SetTweenX( CURSOR_X(m_iSelection[p],(PlayerNumber)p) );
|
||||
m_sprCursorShadow[p].SetTweenY( CURSOR_Y(m_iSelection[p],(PlayerNumber)p) );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -448,13 +442,13 @@ void ScreenSelectDifficulty::MenuStart( PlayerNumber pn )
|
||||
}
|
||||
}
|
||||
|
||||
m_sprArrow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprArrow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprArrow[pn].SetTweenX( ARROW_X(iSelection, pn) );
|
||||
m_sprArrow[pn].SetTweenY( ARROW_Y(iSelection, pn) );
|
||||
m_sprCursor[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprCursor[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprCursor[pn].SetTweenX( CURSOR_X(iSelection, pn) );
|
||||
m_sprCursor[pn].SetTweenY( CURSOR_Y(iSelection, pn) );
|
||||
|
||||
m_sprOK[pn].SetX( ARROW_X(iSelection, pn) );
|
||||
m_sprOK[pn].SetY( ARROW_Y(iSelection, pn) );
|
||||
m_sprOK[pn].SetX( CURSOR_X(iSelection, pn) );
|
||||
m_sprOK[pn].SetY( CURSOR_Y(iSelection, pn) );
|
||||
m_sprOK[pn].SetDiffuseColor( D3DXCOLOR(1,1,1,0) );
|
||||
m_sprOK[pn].SetZoom( 2 );
|
||||
|
||||
@@ -462,9 +456,9 @@ void ScreenSelectDifficulty::MenuStart( PlayerNumber pn )
|
||||
m_sprOK[pn].SetTweenZoom( 1 );
|
||||
m_sprOK[pn].SetTweenDiffuseColor( D3DXCOLOR(1,1,1,1) );
|
||||
|
||||
m_sprArrowShadow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprArrowShadow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprArrowShadow[pn].SetDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
m_sprCursorShadow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprCursorShadow[pn].BeginTweeningQueued( 0.2f );
|
||||
m_sprCursorShadow[pn].SetDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
|
||||
|
||||
// check to see if everyone has chosen
|
||||
@@ -504,14 +498,14 @@ void ScreenSelectDifficulty::TweenOffScreen()
|
||||
if( !GAMESTATE->IsPlayerEnabled((PlayerNumber)p) )
|
||||
continue;
|
||||
|
||||
m_sprArrow[p].BeginTweening( 0.3f );
|
||||
m_sprArrow[p].SetTweenZoom( 0 );
|
||||
m_sprCursor[p].BeginTweening( 0.3f );
|
||||
m_sprCursor[p].SetTweenZoom( 0 );
|
||||
|
||||
m_sprOK[p].BeginTweening( 0.3f );
|
||||
m_sprOK[p].SetTweenZoom( 0 );
|
||||
|
||||
m_sprArrowShadow[p].BeginTweeningQueued( 0.3f );
|
||||
m_sprArrowShadow[p].SetTweenDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
m_sprCursorShadow[p].BeginTweeningQueued( 0.3f );
|
||||
m_sprCursorShadow[p].SetTweenDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
}
|
||||
|
||||
for( int d=0; d<NUM_DIFFICULTY_ITEMS; d++ )
|
||||
@@ -563,20 +557,20 @@ void ScreenSelectDifficulty::TweenOnScreen()
|
||||
|
||||
int iSelection = m_iSelection[p];
|
||||
|
||||
m_sprArrow[p].SetXY( ARROW_X(iSelection,(PlayerNumber)p), ARROW_Y(iSelection,(PlayerNumber)p) );
|
||||
m_sprArrow[p].SetDiffuseColor( D3DXCOLOR(1,1,1,0) );
|
||||
m_sprArrow[p].SetRotation( D3DX_PI );
|
||||
m_sprArrow[p].SetZoom( 2 );
|
||||
m_sprArrow[p].BeginTweening( 0.3f );
|
||||
m_sprArrow[p].SetTweenDiffuseColor( D3DXCOLOR(1,1,1,1) );
|
||||
m_sprArrow[p].SetTweenRotationZ( 0 );
|
||||
m_sprArrow[p].SetTweenZoom( 1 );
|
||||
m_sprCursor[p].SetXY( CURSOR_X(iSelection,(PlayerNumber)p), CURSOR_Y(iSelection,(PlayerNumber)p) );
|
||||
m_sprCursor[p].SetDiffuseColor( D3DXCOLOR(1,1,1,0) );
|
||||
m_sprCursor[p].SetRotation( D3DX_PI );
|
||||
m_sprCursor[p].SetZoom( 2 );
|
||||
m_sprCursor[p].BeginTweening( 0.3f );
|
||||
m_sprCursor[p].SetTweenDiffuseColor( D3DXCOLOR(1,1,1,1) );
|
||||
m_sprCursor[p].SetTweenRotationZ( 0 );
|
||||
m_sprCursor[p].SetTweenZoom( 1 );
|
||||
|
||||
m_sprArrowShadow[p].SetXY( ARROW_X(iSelection,(PlayerNumber)p), ARROW_Y(iSelection,(PlayerNumber)p) );
|
||||
D3DXCOLOR colorOriginal = m_sprArrowShadow[p].GetDiffuseColor();
|
||||
m_sprArrowShadow[p].SetDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
m_sprArrowShadow[p].BeginTweening( 0.3f );
|
||||
m_sprArrowShadow[p].SetTweenDiffuseColor( colorOriginal );
|
||||
m_sprCursorShadow[p].SetXY( CURSOR_X(iSelection,(PlayerNumber)p), CURSOR_Y(iSelection,(PlayerNumber)p) );
|
||||
D3DXCOLOR colorOriginal = m_sprCursorShadow[p].GetDiffuseColor();
|
||||
m_sprCursorShadow[p].SetDiffuseColor( D3DXCOLOR(0,0,0,0) );
|
||||
m_sprCursorShadow[p].BeginTweening( 0.3f );
|
||||
m_sprCursorShadow[p].SetTweenDiffuseColor( colorOriginal );
|
||||
}
|
||||
|
||||
for( int d=0; d<NUM_DIFFICULTY_ITEMS; d++ )
|
||||
|
||||
@@ -54,8 +54,8 @@ private:
|
||||
Sprite m_sprExplanation[NUM_PAGES];
|
||||
Sprite m_sprMoreArrows[NUM_PAGES];
|
||||
|
||||
Sprite m_sprArrow[NUM_PLAYERS];
|
||||
Sprite m_sprArrowShadow[NUM_PLAYERS];
|
||||
Sprite m_sprCursor[NUM_PLAYERS];
|
||||
Sprite m_sprCursorShadow[NUM_PLAYERS];
|
||||
Sprite m_sprOK[NUM_PLAYERS];
|
||||
|
||||
RageSoundSample m_soundChange;
|
||||
|
||||
@@ -99,12 +99,12 @@ void ScreenSelectGame::ExportOptions()
|
||||
|
||||
void ScreenSelectGame::GoToPrevState()
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
}
|
||||
|
||||
void ScreenSelectGame::GoToNextState()
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -14,31 +14,31 @@
|
||||
#include "ScreenSelectGroup.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "SongManager.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
#include "RageMusic.h"
|
||||
|
||||
|
||||
#define FRAME_X THEME->GetMetricF("SelectGroup","FrameX")
|
||||
#define FRAME_Y THEME->GetMetricF("SelectGroup","FrameY")
|
||||
#define BANNER_X THEME->GetMetricF("SelectGroup","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("SelectGroup","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("SelectGroup","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("SelectGroup","BannerHeight")
|
||||
#define NUMBER_X THEME->GetMetricF("SelectGroup","NumberX")
|
||||
#define NUMBER_Y THEME->GetMetricF("SelectGroup","NumberY")
|
||||
#define EXPLANATION_X THEME->GetMetricF("SelectGroup","ExplanationX")
|
||||
#define EXPLANATION_Y THEME->GetMetricF("SelectGroup","ExplanationY")
|
||||
#define CONTENTS_X THEME->GetMetricF("SelectGroup","ContentsX")
|
||||
#define CONTENTS_Y THEME->GetMetricF("SelectGroup","ContentsY")
|
||||
|
||||
#define HELP_TEXT THEME->GetMetric("SelectGroup","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("SelectGroup","TimerSeconds")
|
||||
#define FRAME_X THEME->GetMetricF("ScreenSelectGroup","FrameX")
|
||||
#define FRAME_Y THEME->GetMetricF("ScreenSelectGroup","FrameY")
|
||||
#define BANNER_X THEME->GetMetricF("ScreenSelectGroup","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("ScreenSelectGroup","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("ScreenSelectGroup","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("ScreenSelectGroup","BannerHeight")
|
||||
#define NUMBER_X THEME->GetMetricF("ScreenSelectGroup","NumberX")
|
||||
#define NUMBER_Y THEME->GetMetricF("ScreenSelectGroup","NumberY")
|
||||
#define EXPLANATION_X THEME->GetMetricF("ScreenSelectGroup","ExplanationX")
|
||||
#define EXPLANATION_Y THEME->GetMetricF("ScreenSelectGroup","ExplanationY")
|
||||
#define CONTENTS_X THEME->GetMetricF("ScreenSelectGroup","ContentsX")
|
||||
#define CONTENTS_Y THEME->GetMetricF("ScreenSelectGroup","ContentsY")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenSelectGroup","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectGroup","TimerSeconds")
|
||||
#define NEXT_SCREEN_ARCADE THEME->GetMetric("ScreenSelectGroup","NextScreenArcade")
|
||||
#define NEXT_SCREEN_ONI THEME->GetMetric("ScreenSelectGroup","NextScreenOni")
|
||||
|
||||
|
||||
const ScreenMessage SM_GoToPrevState = ScreenMessage(SM_User + 1);
|
||||
@@ -163,12 +163,7 @@ ScreenSelectGroup::ScreenSelectGroup()
|
||||
|
||||
SOUND->PlayOnceStreamedFromDir( ANNOUNCER->GetPathTo(ANNOUNCER_SELECT_GROUP_INTRO) );
|
||||
|
||||
|
||||
if( !MUSIC->IsPlaying() || MUSIC->GetLoadedFilePath() != THEME->GetPathTo("Sounds","select group music") )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select group music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select group music") );
|
||||
|
||||
m_Menu.TweenOnScreenFromMenu( SM_None );
|
||||
TweenOnScreen();
|
||||
@@ -209,10 +204,21 @@ void ScreenSelectGroup::HandleScreenMessage( const ScreenMessage SM )
|
||||
MenuStart(PLAYER_1);
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
switch( GAMESTATE->m_PlayMode )
|
||||
{
|
||||
case PLAY_MODE_ARCADE:
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN_ARCADE );
|
||||
break;
|
||||
case PLAY_MODE_ONI:
|
||||
case PLAY_MODE_ENDLESS:
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN_ONI );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
break;
|
||||
case SM_StartFadingOut:
|
||||
m_Menu.TweenOffScreenToMenu( SM_GoToNextState );
|
||||
|
||||
@@ -17,63 +17,58 @@
|
||||
#include "SongManager.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "ScreenPrompt.h"
|
||||
#include "ScreenPlayerOptions.h"
|
||||
#include "RageLog.h"
|
||||
#include "InputMapper.h"
|
||||
#include "InputQueue.h"
|
||||
#include "ScreenStage.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "InputMapper.h"
|
||||
#include "GameState.h"
|
||||
|
||||
|
||||
#define BANNER_FRAME_X THEME->GetMetricF("SelectMusic","BannerFrameX")
|
||||
#define BANNER_FRAME_Y THEME->GetMetricF("SelectMusic","BannerFrameY")
|
||||
#define BANNER_X THEME->GetMetricF("SelectMusic","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("SelectMusic","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("SelectMusic","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("SelectMusic","BannerHeight")
|
||||
#define BPM_X THEME->GetMetricF("SelectMusic","BPMX")
|
||||
#define BPM_Y THEME->GetMetricF("SelectMusic","BPMY")
|
||||
#define STAGE_X THEME->GetMetricF("SelectMusic","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("SelectMusic","StageY")
|
||||
#define CD_TITLE_X THEME->GetMetricF("SelectMusic","CDTitleX")
|
||||
#define CD_TITLE_Y THEME->GetMetricF("SelectMusic","CDTitleY")
|
||||
#define DIFFICULTY_X THEME->GetMetricF("SelectMusic","DifficultyX")
|
||||
#define DIFFICULTY_Y THEME->GetMetricF("SelectMusic","DifficultyY")
|
||||
#define ICON_P1_X THEME->GetMetricF("SelectMusic","IconP1X")
|
||||
#define ICON_P1_Y THEME->GetMetricF("SelectMusic","IconP1Y")
|
||||
#define ICON_P2_X THEME->GetMetricF("SelectMusic","IconP2X")
|
||||
#define ICON_P2_Y THEME->GetMetricF("SelectMusic","IconP2Y")
|
||||
#define RADAR_X THEME->GetMetricF("SelectMusic","RadarX")
|
||||
#define RADAR_Y THEME->GetMetricF("SelectMusic","RadarY")
|
||||
#define SORT_ICON_X THEME->GetMetricF("SelectMusic","SortIconX")
|
||||
#define SORT_ICON_Y THEME->GetMetricF("SelectMusic","SortIconY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("SelectMusic","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("SelectMusic","ScoreP1Y")
|
||||
#define SCORE_P2_X THEME->GetMetricF("SelectMusic","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("SelectMusic","ScoreP2Y")
|
||||
#define METER_FRAME_X THEME->GetMetricF("SelectMusic","MeterFrameX")
|
||||
#define METER_FRAME_Y THEME->GetMetricF("SelectMusic","MeterFrameY")
|
||||
#define METER_P1_X THEME->GetMetricF("SelectMusic","MeterP1X")
|
||||
#define METER_P1_Y THEME->GetMetricF("SelectMusic","MeterP1Y")
|
||||
#define METER_P2_X THEME->GetMetricF("SelectMusic","MeterP2X")
|
||||
#define METER_P2_Y THEME->GetMetricF("SelectMusic","MeterP2Y")
|
||||
#define WHEEL_X THEME->GetMetricF("SelectMusic","WheelX")
|
||||
#define WHEEL_Y THEME->GetMetricF("SelectMusic","WheelY")
|
||||
#define PLAYER_OPTIONS_P1_X THEME->GetMetricF("SelectMusic","PlayerOptionsP1X")
|
||||
#define PLAYER_OPTIONS_P1_Y THEME->GetMetricF("SelectMusic","PlayerOptionsP1Y")
|
||||
#define PLAYER_OPTIONS_P2_X THEME->GetMetricF("SelectMusic","PlayerOptionsP2X")
|
||||
#define PLAYER_OPTIONS_P2_Y THEME->GetMetricF("SelectMusic","PlayerOptionsP2Y")
|
||||
#define SONG_OPTIONS_X THEME->GetMetricF("SelectMusic","SongOptionsX")
|
||||
#define SONG_OPTIONS_Y THEME->GetMetricF("SelectMusic","SongOptionsY")
|
||||
#define HELP_TEXT THEME->GetMetric("SelectMusic","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("SelectMusic","TimerSeconds")
|
||||
#define BANNER_FRAME_X THEME->GetMetricF("ScreenSelectMusic","BannerFrameX")
|
||||
#define BANNER_FRAME_Y THEME->GetMetricF("ScreenSelectMusic","BannerFrameY")
|
||||
#define BANNER_X THEME->GetMetricF("ScreenSelectMusic","BannerX")
|
||||
#define BANNER_Y THEME->GetMetricF("ScreenSelectMusic","BannerY")
|
||||
#define BANNER_WIDTH THEME->GetMetricF("ScreenSelectMusic","BannerWidth")
|
||||
#define BANNER_HEIGHT THEME->GetMetricF("ScreenSelectMusic","BannerHeight")
|
||||
#define BPM_X THEME->GetMetricF("ScreenSelectMusic","BPMX")
|
||||
#define BPM_Y THEME->GetMetricF("ScreenSelectMusic","BPMY")
|
||||
#define STAGE_X THEME->GetMetricF("ScreenSelectMusic","StageX")
|
||||
#define STAGE_Y THEME->GetMetricF("ScreenSelectMusic","StageY")
|
||||
#define CD_TITLE_X THEME->GetMetricF("ScreenSelectMusic","CDTitleX")
|
||||
#define CD_TITLE_Y THEME->GetMetricF("ScreenSelectMusic","CDTitleY")
|
||||
#define DIFFICULTY_X THEME->GetMetricF("ScreenSelectMusic","DifficultyX")
|
||||
#define DIFFICULTY_Y THEME->GetMetricF("ScreenSelectMusic","DifficultyY")
|
||||
#define ICON_P1_X THEME->GetMetricF("ScreenSelectMusic","IconP1X")
|
||||
#define ICON_P1_Y THEME->GetMetricF("ScreenSelectMusic","IconP1Y")
|
||||
#define ICON_P2_X THEME->GetMetricF("ScreenSelectMusic","IconP2X")
|
||||
#define ICON_P2_Y THEME->GetMetricF("ScreenSelectMusic","IconP2Y")
|
||||
#define RADAR_X THEME->GetMetricF("ScreenSelectMusic","RadarX")
|
||||
#define RADAR_Y THEME->GetMetricF("ScreenSelectMusic","RadarY")
|
||||
#define SORT_ICON_X THEME->GetMetricF("ScreenSelectMusic","SortIconX")
|
||||
#define SORT_ICON_Y THEME->GetMetricF("ScreenSelectMusic","SortIconY")
|
||||
#define SCORE_P1_X THEME->GetMetricF("ScreenSelectMusic","ScoreP1X")
|
||||
#define SCORE_P1_Y THEME->GetMetricF("ScreenSelectMusic","ScoreP1Y")
|
||||
#define SCORE_P2_X THEME->GetMetricF("ScreenSelectMusic","ScoreP2X")
|
||||
#define SCORE_P2_Y THEME->GetMetricF("ScreenSelectMusic","ScoreP2Y")
|
||||
#define METER_FRAME_X THEME->GetMetricF("ScreenSelectMusic","MeterFrameX")
|
||||
#define METER_FRAME_Y THEME->GetMetricF("ScreenSelectMusic","MeterFrameY")
|
||||
#define METER_P1_X THEME->GetMetricF("ScreenSelectMusic","MeterP1X")
|
||||
#define METER_P1_Y THEME->GetMetricF("ScreenSelectMusic","MeterP1Y")
|
||||
#define METER_P2_X THEME->GetMetricF("ScreenSelectMusic","MeterP2X")
|
||||
#define METER_P2_Y THEME->GetMetricF("ScreenSelectMusic","MeterP2Y")
|
||||
#define WHEEL_X THEME->GetMetricF("ScreenSelectMusic","WheelX")
|
||||
#define WHEEL_Y THEME->GetMetricF("ScreenSelectMusic","WheelY")
|
||||
#define PLAYER_OPTIONS_P1_X THEME->GetMetricF("ScreenSelectMusic","PlayerOptionsP1X")
|
||||
#define PLAYER_OPTIONS_P1_Y THEME->GetMetricF("ScreenSelectMusic","PlayerOptionsP1Y")
|
||||
#define PLAYER_OPTIONS_P2_X THEME->GetMetricF("ScreenSelectMusic","PlayerOptionsP2X")
|
||||
#define PLAYER_OPTIONS_P2_Y THEME->GetMetricF("ScreenSelectMusic","PlayerOptionsP2Y")
|
||||
#define SONG_OPTIONS_X THEME->GetMetricF("ScreenSelectMusic","SongOptionsX")
|
||||
#define SONG_OPTIONS_Y THEME->GetMetricF("ScreenSelectMusic","SongOptionsY")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenSelectMusic","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectMusic","TimerSeconds")
|
||||
|
||||
const float TWEEN_TIME = 0.5f;
|
||||
|
||||
@@ -574,17 +569,17 @@ void ScreenSelectMusic::HandleScreenMessage( const ScreenMessage SM )
|
||||
}
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
if( m_bGoToOptions )
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenPlayerOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenPlayerOptions" );
|
||||
}
|
||||
else
|
||||
{
|
||||
MUSIC->Stop();
|
||||
SCREENMAN->SetNewScreen( new ScreenStage );
|
||||
SCREENMAN->SetNewScreen( "ScreenStage" );
|
||||
}
|
||||
break;
|
||||
case SM_PlaySongSample:
|
||||
@@ -664,7 +659,7 @@ void ScreenSelectMusic::MenuStart( const PlayerNumber p )
|
||||
{
|
||||
if( !m_MusicWheel.GetSelectedSong()->HasMusic() )
|
||||
{
|
||||
SCREENMAN->AddScreenToTop( new ScreenPrompt( SM_None, "ERROR:\n \nThis song does not have a music file\n and cannot be played.", PROMPT_OK) );
|
||||
SCREENMAN->Prompt( SM_None, "ERROR:\n \nThis song does not have a music file\n and cannot be played." );
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -828,19 +823,11 @@ void ScreenSelectMusic::PlayMusicSample()
|
||||
{
|
||||
//LOG->Trace( "ScreenSelectSong::PlaySONGample()" );
|
||||
|
||||
MUSIC->Stop();
|
||||
|
||||
Song* pSong = m_MusicWheel.GetSelectedSong();
|
||||
if( pSong == NULL )
|
||||
return;
|
||||
|
||||
CString sSongToPlay = pSong->GetMusicPath();
|
||||
|
||||
if( pSong->HasMusic() )
|
||||
{
|
||||
MUSIC->Load( sSongToPlay );
|
||||
MUSIC->Play( true, pSong->m_fMusicSampleStartSeconds, pSong->m_fMusicSampleLengthSeconds );
|
||||
}
|
||||
if( pSong )
|
||||
MUSIC->LoadAndPlayIfNotAlready( pSong->GetMusicPath() );
|
||||
else
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select music music") );
|
||||
}
|
||||
|
||||
void ScreenSelectMusic::UpdateOptionsDisplays()
|
||||
|
||||
@@ -15,38 +15,28 @@
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectGroup.h"
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenSandbox.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
|
||||
|
||||
#define ICONS_START_X THEME->GetMetricF("SelectStyle","IconsStartX")
|
||||
#define ICONS_SPACING_X THEME->GetMetricF("SelectStyle","IconsSpacingX")
|
||||
#define ICONS_START_Y THEME->GetMetricF("SelectStyle","IconsStartY")
|
||||
#define ICONS_SPACING_Y THEME->GetMetricF("SelectStyle","IconsSpacingY")
|
||||
#define EXPLANATION_X THEME->GetMetricF("SelectStyle","ExplanationX")
|
||||
#define EXPLANATION_Y THEME->GetMetricF("SelectStyle","ExplanationY")
|
||||
#define INFO_X THEME->GetMetricF("SelectStyle","InfoX")
|
||||
#define INFO_Y THEME->GetMetricF("SelectStyle","InfoY")
|
||||
#define PREVIEW_X THEME->GetMetricF("SelectStyle","PreviewX")
|
||||
#define PREVIEW_Y THEME->GetMetricF("SelectStyle","PreviewY")
|
||||
#define HELP_TEXT THEME->GetMetric("SelectStyle","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("SelectStyle","TimerSeconds")
|
||||
#define ICONS_START_X THEME->GetMetricF("ScreenSelectStyle","IconsStartX")
|
||||
#define ICONS_SPACING_X THEME->GetMetricF("ScreenSelectStyle","IconsSpacingX")
|
||||
#define ICONS_START_Y THEME->GetMetricF("ScreenSelectStyle","IconsStartY")
|
||||
#define ICONS_SPACING_Y THEME->GetMetricF("ScreenSelectStyle","IconsSpacingY")
|
||||
#define EXPLANATION_X THEME->GetMetricF("ScreenSelectStyle","ExplanationX")
|
||||
#define EXPLANATION_Y THEME->GetMetricF("ScreenSelectStyle","ExplanationY")
|
||||
#define INFO_X THEME->GetMetricF("ScreenSelectStyle","InfoX")
|
||||
#define INFO_Y THEME->GetMetricF("ScreenSelectStyle","InfoY")
|
||||
#define PREVIEW_X THEME->GetMetricF("ScreenSelectStyle","PreviewX")
|
||||
#define PREVIEW_Y THEME->GetMetricF("ScreenSelectStyle","PreviewY")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenSelectStyle","HelpText")
|
||||
#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectStyle","TimerSeconds")
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenSelectStyle","NextScreen")
|
||||
|
||||
#define SELECT_DIFFICULTY_TYPE THEME->GetMetricI("General","SelectDifficultyType")
|
||||
enum SelectDifficultyType // for use with the metric above
|
||||
{
|
||||
SELECT_DIFFICULTY_TYPE_SKIP = 0,
|
||||
SELECT_DIFFICULTY_TYPE_MAX,
|
||||
};
|
||||
|
||||
const ScreenMessage SM_GoToPrevState = ScreenMessage(SM_User + 1);
|
||||
const ScreenMessage SM_GoToNextState = ScreenMessage(SM_User + 2);
|
||||
@@ -108,12 +98,7 @@ ScreenSelectStyle::ScreenSelectStyle()
|
||||
|
||||
SOUND->PlayOnceStreamedFromDir( ANNOUNCER->GetPathTo(ANNOUNCER_SELECT_STYLE_INTRO) );
|
||||
|
||||
|
||||
if( !MUSIC->IsPlaying() || MUSIC->GetLoadedFilePath() != THEME->GetPathTo("Sounds","select style music") )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select style music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select style music") );
|
||||
|
||||
AfterChange();
|
||||
TweenOnScreen();
|
||||
@@ -154,20 +139,10 @@ void ScreenSelectStyle::HandleScreenMessage( const ScreenMessage SM )
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
MUSIC->Stop();
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
switch( SELECT_DIFFICULTY_TYPE )
|
||||
{
|
||||
case SELECT_DIFFICULTY_TYPE_SKIP:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectGroup );
|
||||
break;
|
||||
case SELECT_DIFFICULTY_TYPE_MAX:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectDifficulty );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,12 +15,8 @@
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenSelectDifficulty.h"
|
||||
#include "ScreenSandbox.h"
|
||||
#include "GameManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
@@ -177,15 +173,9 @@ ScreenSelectStyle5th::ScreenSelectStyle5th()
|
||||
m_soundChange.Load( THEME->GetPathTo("Graphics","select style change") );
|
||||
m_soundSelect.Load( THEME->GetPathTo("Sounds","menu start") );
|
||||
|
||||
|
||||
SOUND->PlayOnceStreamedFromDir( ANNOUNCER->GetPathTo(ANNOUNCER_SELECT_STYLE_INTRO) );
|
||||
|
||||
|
||||
if( !MUSIC->IsPlaying() )
|
||||
{
|
||||
MUSIC->Load( THEME->GetPathTo("Sounds","select style music") );
|
||||
MUSIC->Play( true );
|
||||
}
|
||||
MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","select style music") );
|
||||
|
||||
m_soundChange.PlayRandom();
|
||||
TweenOnScreen();
|
||||
@@ -227,10 +217,10 @@ void ScreenSelectStyle5th::HandleScreenMessage( const ScreenMessage SM )
|
||||
break;
|
||||
case SM_GoToPrevState:
|
||||
MUSIC->Stop();
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectDifficulty );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectDifficulty" );
|
||||
break;
|
||||
case SM_TweenExplanation2:
|
||||
m_textExplanation2.BeginTweening( 0.7f );
|
||||
|
||||
@@ -11,18 +11,12 @@
|
||||
*/
|
||||
|
||||
#include "ScreenSongOptions.h"
|
||||
#include <assert.h>
|
||||
#include "RageTextureManager.h"
|
||||
#include "RageUtil.h"
|
||||
#include "RageMusic.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "ScreenPlayerOptions.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameState.h"
|
||||
#include "ScreenStage.h"
|
||||
|
||||
|
||||
enum {
|
||||
@@ -108,14 +102,14 @@ void ScreenSongOptions::ExportOptions()
|
||||
|
||||
void ScreenSongOptions::GoToPrevState()
|
||||
{
|
||||
SCREENMAN->SetNewScreen( new ScreenPlayerOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenPlayerOptions" );
|
||||
}
|
||||
|
||||
void ScreenSongOptions::GoToNextState()
|
||||
{
|
||||
MUSIC->Stop();
|
||||
|
||||
SCREENMAN->SetNewScreen( new ScreenStage );
|
||||
SCREENMAN->SetNewScreen( "ScreenStage" );
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -13,21 +13,21 @@
|
||||
#include "ScreenStage.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "RageLog.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "BitmapText.h"
|
||||
#include "TransitionFadeWipe.h"
|
||||
#include "TransitionFade.h"
|
||||
#include "ScreenSelectMusic.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "SongManager.h"
|
||||
#include "Sprite.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "GameState.h"
|
||||
#include "RageMusic.h"
|
||||
|
||||
#define STAGE_TYPE THEME->GetMetricI("General","StageType")
|
||||
enum StageType // for use with the metric above
|
||||
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenStage","NextScreen")
|
||||
#define STAGE_TYPE THEME->GetMetricI("ScreenStage","StageType")
|
||||
enum StageType // for use with the metric above
|
||||
{
|
||||
STAGE_TYPE_MAX = 0,
|
||||
STAGE_TYPE_PUMP,
|
||||
@@ -53,9 +53,6 @@ ScreenStage::ScreenStage()
|
||||
{
|
||||
MUSIC->Stop();
|
||||
|
||||
m_pNextScreen = NULL;
|
||||
|
||||
|
||||
for( int i=0; i<4; i++ )
|
||||
{
|
||||
m_sprNumbers[i].Load( THEME->GetPathTo("Graphics","stage numbers") );
|
||||
@@ -463,7 +460,7 @@ ScreenStage::ScreenStage()
|
||||
m_Fade.SetOpened();
|
||||
|
||||
this->SendScreenMessage( SM_DoneFadingIn, 1.0f );
|
||||
this->SendScreenMessage( SM_StartFadingOut, 1.2f );
|
||||
this->SendScreenMessage( SM_StartFadingOut, 4.0f );
|
||||
}
|
||||
|
||||
void ScreenStage::Update( float fDeltaTime )
|
||||
@@ -481,7 +478,7 @@ void ScreenStage::DrawPrimitives()
|
||||
{
|
||||
DISPLAY->EnableZBuffer();
|
||||
|
||||
if ( STAGE_TYPE == STAGE_TYPE_MAX) // only DANCE uses the quadmask
|
||||
if ( STAGE_TYPE == STAGE_TYPE_MAX) // only DANCE uses the Z mask
|
||||
m_quadMask.Draw();
|
||||
m_frameStage.Draw();
|
||||
|
||||
@@ -501,10 +498,9 @@ void ScreenStage::HandleScreenMessage( const ScreenMessage SM )
|
||||
m_Fade.CloseWipingRight( SM_GoToNextState );
|
||||
break;
|
||||
case SM_DoneFadingIn:
|
||||
m_pNextScreen = new ScreenGameplay;
|
||||
break;
|
||||
case SM_GoToNextState:
|
||||
SCREENMAN->SetNewScreen( m_pNextScreen );
|
||||
SCREENMAN->SetNewScreen( "ScreenGameplay" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,7 +49,6 @@ private:
|
||||
|
||||
TransitionFade m_Fade;
|
||||
|
||||
Screen* m_pNextScreen;
|
||||
protected:
|
||||
Song* m_pSong;
|
||||
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
class ScreenTextEntry : public Screen
|
||||
{
|
||||
public:
|
||||
ScreenTextEntry();
|
||||
ScreenTextEntry( ScreenMessage SM_SendWhenDone, CString sQuestion, CString sInitialAnswer, void(*OnOK)(CString sAnswer) = NULL, void(*OnCanel)() = NULL );
|
||||
|
||||
virtual void Update( float fDeltaTime );
|
||||
|
||||
@@ -12,27 +12,16 @@
|
||||
|
||||
#include "ScreenTitleMenu.h"
|
||||
#include "ScreenManager.h"
|
||||
#include "ScreenCaution.h"
|
||||
#include "ScreenMapInstruments.h"
|
||||
#include "ScreenGraphicOptions.h"
|
||||
#include "ScreenGameOptions.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageUtil.h"
|
||||
#include "StepMania.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "ScreenEditMenu.h"
|
||||
#include "ScreenSelectStyle.h"
|
||||
#include "ScreenSelectGame.h"
|
||||
#include "ScreenAppearanceOptions.h"
|
||||
#include "RageLog.h"
|
||||
#include "SongManager.h"
|
||||
#include "AnnouncerManager.h"
|
||||
#include "ScreenEz2SelectPlayer.h"
|
||||
#include "GameState.h"
|
||||
#include "GameManager.h"
|
||||
#include "ScreenGameplay.h"
|
||||
#include "ScreenSelectStyle5th.h"
|
||||
#include "ScreenEz2SelectStyle.h"
|
||||
#include "InputMapper.h"
|
||||
|
||||
const CString CHOICE_TEXT[ScreenTitleMenu::NUM_TITLE_MENU_CHOICES] = {
|
||||
"GAME START",
|
||||
@@ -45,37 +34,23 @@ const CString CHOICE_TEXT[ScreenTitleMenu::NUM_TITLE_MENU_CHOICES] = {
|
||||
"EXIT",
|
||||
};
|
||||
|
||||
#define CHOICES_X THEME->GetMetricF("TitleMenu","ChoicesX")
|
||||
#define CHOICES_START_Y THEME->GetMetricF("TitleMenu","ChoicesStartY")
|
||||
#define CHOICES_SPACING_Y THEME->GetMetricF("TitleMenu","ChoicesSpacingY")
|
||||
#define HELP_X THEME->GetMetricF("TitleMenu","HelpX")
|
||||
#define HELP_Y THEME->GetMetricF("TitleMenu","HelpY")
|
||||
#define LOGO_X THEME->GetMetricF("TitleMenu","LogoX")
|
||||
#define LOGO_Y THEME->GetMetricF("TitleMenu","LogoY")
|
||||
#define VERSION_X THEME->GetMetricF("TitleMenu","VersionX")
|
||||
#define VERSION_Y THEME->GetMetricF("TitleMenu","VersionY")
|
||||
#define SONGS_X THEME->GetMetricF("TitleMenu","SongsX")
|
||||
#define SONGS_Y THEME->GetMetricF("TitleMenu","SongsY")
|
||||
#define COLOR_NOT_SELECTED THEME->GetMetricC("TitleMenu","ColorNotSelected")
|
||||
#define COLOR_SELECTED THEME->GetMetricC("TitleMenu","ColorSelected")
|
||||
#define SECONDS_BEFORE_DEMONSTRATION THEME->GetMetricF("TitleMenu","SecondsBeforeDemonstration")
|
||||
#define SECONDS_BETWEEN_ATTRACT THEME->GetMetricF("TitleMenu","SecondsBetweenAttract")
|
||||
#define HELP_TEXT THEME->GetMetric("TitleMenu","HelpText")
|
||||
|
||||
#define CAUTION_TYPE THEME->GetMetricI("General","CautionType")
|
||||
enum CautionType // for use with the metric above
|
||||
{
|
||||
CAUTION_TYPE_SKIP = 0,
|
||||
CAUTION_TYPE_DDR,
|
||||
CAUTION_TYPE_EZ2_SELECT_PLAYER,
|
||||
};
|
||||
#define SELECT_STYLE_TYPE THEME->GetMetricI("General","SelectStyleType")
|
||||
enum SelectStyleType // for use with the metric above
|
||||
{
|
||||
SELECT_STYLE_TYPE_MAX = 0,
|
||||
SELECT_STYLE_TYPE_5TH,
|
||||
SELECT_STYLE_TYPE_EZ2,
|
||||
};
|
||||
#define CHOICES_X THEME->GetMetricF("ScreenTitleMenu","ChoicesX")
|
||||
#define CHOICES_START_Y THEME->GetMetricF("ScreenTitleMenu","ChoicesStartY")
|
||||
#define CHOICES_SPACING_Y THEME->GetMetricF("ScreenTitleMenu","ChoicesSpacingY")
|
||||
#define HELP_X THEME->GetMetricF("ScreenTitleMenu","HelpX")
|
||||
#define HELP_Y THEME->GetMetricF("ScreenTitleMenu","HelpY")
|
||||
#define LOGO_X THEME->GetMetricF("ScreenTitleMenu","LogoX")
|
||||
#define LOGO_Y THEME->GetMetricF("ScreenTitleMenu","LogoY")
|
||||
#define VERSION_X THEME->GetMetricF("ScreenTitleMenu","VersionX")
|
||||
#define VERSION_Y THEME->GetMetricF("ScreenTitleMenu","VersionY")
|
||||
#define SONGS_X THEME->GetMetricF("ScreenTitleMenu","SongsX")
|
||||
#define SONGS_Y THEME->GetMetricF("ScreenTitleMenu","SongsY")
|
||||
#define COLOR_NOT_SELECTED THEME->GetMetricC("ScreenTitleMenu","ColorNotSelected")
|
||||
#define COLOR_SELECTED THEME->GetMetricC("ScreenTitleMenu","ColorSelected")
|
||||
#define SECONDS_BEFORE_DEMONSTRATION THEME->GetMetricF("ScreenTitleMenu","SecondsBeforeDemonstration")
|
||||
#define SECONDS_BETWEEN_ATTRACT THEME->GetMetricF("ScreenTitleMenu","SecondsBetweenAttract")
|
||||
#define HELP_TEXT THEME->GetMetric("ScreenTitleMenu","HelpText")
|
||||
#define NEXT_SCREEN THEME->GetMetric("ScreenTitleMenu","NextScreen")
|
||||
|
||||
const ScreenMessage SM_PlayAttract = ScreenMessage(SM_User+1);
|
||||
const ScreenMessage SM_GoToNextScreen = ScreenMessage(SM_User+12);
|
||||
@@ -224,51 +199,25 @@ void ScreenTitleMenu::HandleScreenMessage( const ScreenMessage SM )
|
||||
switch( m_TitleMenuChoice )
|
||||
{
|
||||
case CHOICE_GAME_START:
|
||||
switch( CAUTION_TYPE )
|
||||
{
|
||||
case CAUTION_TYPE_SKIP:
|
||||
switch( SELECT_STYLE_TYPE )
|
||||
{
|
||||
case SELECT_STYLE_TYPE_MAX:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectStyle );
|
||||
break;
|
||||
case SELECT_STYLE_TYPE_5TH:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectStyle5th );
|
||||
break;
|
||||
case SELECT_STYLE_TYPE_EZ2:
|
||||
SCREENMAN->SetNewScreen( new ScreenEz2SelectStyle );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
break;
|
||||
case CAUTION_TYPE_DDR:
|
||||
SCREENMAN->SetNewScreen( new ScreenCaution );
|
||||
break;
|
||||
case CAUTION_TYPE_EZ2_SELECT_PLAYER:
|
||||
SCREENMAN->SetNewScreen( new ScreenEz2SelectPlayer );
|
||||
break;
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
SCREENMAN->SetNewScreen( NEXT_SCREEN );
|
||||
break;
|
||||
case CHOICE_SELECT_GAME:
|
||||
SCREENMAN->SetNewScreen( new ScreenSelectGame );
|
||||
SCREENMAN->SetNewScreen( "ScreenSelectGame" );
|
||||
break;
|
||||
case CHOICE_MAP_INSTRUMENTS:
|
||||
SCREENMAN->SetNewScreen( new ScreenMapInstruments );
|
||||
SCREENMAN->SetNewScreen( "ScreenMapInstruments" );
|
||||
break;
|
||||
case CHOICE_GAME_OPTIONS:
|
||||
SCREENMAN->SetNewScreen( new ScreenGameOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenGameOptions" );
|
||||
break;
|
||||
case CHOICE_GRAPHIC_OPTIONS:
|
||||
SCREENMAN->SetNewScreen( new ScreenGraphicOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenGraphicOptions" );
|
||||
break;
|
||||
case CHOICE_APPEARANCE_OPTIONS:
|
||||
SCREENMAN->SetNewScreen( new ScreenAppearanceOptions );
|
||||
SCREENMAN->SetNewScreen( "ScreenAppearanceOptions" );
|
||||
break;
|
||||
case CHOICE_EDIT:
|
||||
SCREENMAN->SetNewScreen( new ScreenEditMenu );
|
||||
SCREENMAN->SetNewScreen( "ScreenEditMenu" );
|
||||
break;
|
||||
case CHOICE_EXIT:
|
||||
default:
|
||||
@@ -327,7 +276,7 @@ void ScreenTitleMenu::HandleScreenMessage( const ScreenMessage SM )
|
||||
case SM_GoToDemonstration:
|
||||
{
|
||||
ASSERT( GAMESTATE->m_pCurSong );
|
||||
SCREENMAN->SetNewScreen( new ScreenGameplay );
|
||||
SCREENMAN->SetNewScreen( "ScreenGameplay" );
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -17,27 +17,25 @@
|
||||
|
||||
ScrollBar::ScrollBar()
|
||||
{
|
||||
m_sprBackground.Load( THEME->GetPathTo("Graphics","select music scrollbar 2x2") );
|
||||
m_sprBackground.Load( THEME->GetPathTo("Graphics","select music scrollbar parts 1x3") );
|
||||
m_sprBackground.StopAnimating();
|
||||
m_sprBackground.SetState( 1 );
|
||||
this->AddSubActor( &m_sprBackground );
|
||||
|
||||
m_sprScrollThumbPart1.Load( THEME->GetPathTo("Graphics","select music scrollbar 2x2") );
|
||||
m_sprScrollThumbPart1.Load( THEME->GetPathTo("Graphics","select music scrollbar thumb") );
|
||||
m_sprScrollThumbPart1.StopAnimating();
|
||||
m_sprScrollThumbPart1.SetState( 3 );
|
||||
this->AddSubActor( &m_sprScrollThumbPart1 );
|
||||
|
||||
m_sprScrollThumbPart2.Load( THEME->GetPathTo("Graphics","select music scrollbar 2x2") );
|
||||
m_sprScrollThumbPart2.Load( THEME->GetPathTo("Graphics","select music scrollbar thumb") );
|
||||
m_sprScrollThumbPart2.StopAnimating();
|
||||
m_sprScrollThumbPart2.SetState( 3 );
|
||||
this->AddSubActor( &m_sprScrollThumbPart2 );
|
||||
|
||||
m_sprTopButton.Load( THEME->GetPathTo("Graphics","select music scrollbar 2x2") );
|
||||
m_sprTopButton.Load( THEME->GetPathTo("Graphics","select music scrollbar parts 1x3") );
|
||||
m_sprTopButton.StopAnimating();
|
||||
m_sprTopButton.SetState( 0 );
|
||||
this->AddSubActor( &m_sprTopButton );
|
||||
|
||||
m_sprBottomButton.Load( THEME->GetPathTo("Graphics","select music scrollbar 2x2") );
|
||||
m_sprBottomButton.Load( THEME->GetPathTo("Graphics","select music scrollbar parts 1x3") );
|
||||
m_sprBottomButton.StopAnimating();
|
||||
m_sprBottomButton.SetState( 2 );
|
||||
this->AddSubActor( &m_sprBottomButton );
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
#include "stdafx.h"
|
||||
/*
|
||||
-----------------------------------------------------------------------------
|
||||
Class: SmallGradeDisplay
|
||||
|
||||
Desc: See header.
|
||||
|
||||
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
||||
Chris Danford
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "SmallGradeDisplay.h"
|
||||
#include "RageUtil.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "PrefsManager.h"
|
||||
|
||||
|
||||
const float SCROLL_TIME = 5.0f;
|
||||
const int NUM_GRADE_FRAMES = 7;
|
||||
const float GRADE_FRAME_HEIGHT = 1/(float)NUM_GRADE_FRAMES;
|
||||
const float GRADES_TO_SCROLL = NUM_GRADE_FRAMES*4;
|
||||
|
||||
|
||||
SmallGradeDisplay::SmallGradeDisplay()
|
||||
{
|
||||
Load( THEME->GetPathTo("Graphics","select music small grades 2x8") );
|
||||
StopAnimating();
|
||||
|
||||
SetGrade( PLAYER_1, GRADE_NO_DATA );
|
||||
}
|
||||
|
||||
void SmallGradeDisplay::Update( float fDeltaTime )
|
||||
{
|
||||
Sprite::Update( fDeltaTime );
|
||||
}
|
||||
|
||||
void SmallGradeDisplay::DrawPrimitives()
|
||||
{
|
||||
Sprite::DrawPrimitives();
|
||||
}
|
||||
|
||||
void SmallGradeDisplay::SetGrade( PlayerNumber p, Grade g )
|
||||
{
|
||||
m_Grade = g;
|
||||
|
||||
SetDiffuseColor( D3DXCOLOR(1,1,1,1) );
|
||||
|
||||
int iNumCols = 2;
|
||||
switch( g )
|
||||
{
|
||||
case GRADE_AAA: SetState( 0*iNumCols+p ); break;
|
||||
case GRADE_AA: SetState( 1*iNumCols+p ); break;
|
||||
case GRADE_A: SetState( 2*iNumCols+p ); break;
|
||||
case GRADE_B: SetState( 3*iNumCols+p ); break;
|
||||
case GRADE_C: SetState( 4*iNumCols+p ); break;
|
||||
case GRADE_D: SetState( 5*iNumCols+p ); break;
|
||||
case GRADE_E: SetState( 6*iNumCols+p ); break;
|
||||
case GRADE_NO_DATA: SetState( 7*iNumCols+p ); break;
|
||||
default: ASSERT(0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
/*
|
||||
-----------------------------------------------------------------------------
|
||||
Class: SmallGradeDisplay
|
||||
|
||||
Desc: The grade shows on ScreenEvaluation
|
||||
|
||||
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
|
||||
Chris Danford
|
||||
-----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
|
||||
#include "Sprite.h"
|
||||
#include "PrefsManager.h"
|
||||
#include "Grade.h"
|
||||
|
||||
|
||||
|
||||
class SmallGradeDisplay : public Sprite
|
||||
{
|
||||
public:
|
||||
SmallGradeDisplay();
|
||||
|
||||
virtual void Update( float fDeltaTime );
|
||||
virtual void DrawPrimitives();
|
||||
|
||||
void SetGrade( PlayerNumber p, Grade g );
|
||||
|
||||
protected:
|
||||
|
||||
Grade m_Grade;
|
||||
};
|
||||
@@ -56,10 +56,6 @@
|
||||
#include "Notes.h"
|
||||
|
||||
|
||||
#include "ScreenSandbox.h"
|
||||
#include "ScreenTitleMenu.h"
|
||||
|
||||
|
||||
#include "dxerr8.h"
|
||||
//#include <Afxdisp.h>
|
||||
|
||||
@@ -691,17 +687,8 @@ HRESULT CreateObjects( HWND hWnd )
|
||||
BringWindowToTop( hWnd );
|
||||
SetForegroundWindow( hWnd );
|
||||
|
||||
//SCREENMAN->SetNewScreen( new ScreenAttractLogo );
|
||||
SCREENMAN->SetNewScreen( new ScreenTitleMenu );
|
||||
//SCREENMAN->SetNewScreen( new ScreenSandbox );
|
||||
//SCREENMAN->SetNewScreen( new ScreenEvaluation(true) );
|
||||
//SCREENMAN->SetNewScreen( new ScreenSelectDifficulty );
|
||||
//SCREENMAN->SetNewScreen( new ScreenPlayerOptions );
|
||||
//SCREENMAN->SetNewScreen( new ScreenGameplay );
|
||||
//SCREENMAN->SetNewScreen( new ScreenMusicScroll );
|
||||
//SCREENMAN->SetNewScreen( new ScreenSelectMusic );
|
||||
//SCREENMAN->SetNewScreen( new ScreenSelectGroup );
|
||||
|
||||
SCREENMAN->SetNewScreen( "ScreenTitleMenu" );
|
||||
// SCREENMAN->SetNewScreen( "ScreenSandbox" );
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@@ -712,6 +712,14 @@ SOURCE=.\ScrollingList.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SmallGradeDisplay.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SmallGradeDisplay.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SnapDisplay.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
@@ -1040,6 +1048,14 @@ SOURCE=.\ScreenGraphicOptions.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ScreenHowToPlay.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ScreenHowToPlay.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ScreenManager.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
@@ -191,12 +191,6 @@
|
||||
<File
|
||||
RelativePath="ScreenEz2SelectStyle.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="ScreenEz2Stage.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="ScreenEz2Stage.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="ScreenGameOptions.cpp">
|
||||
</File>
|
||||
@@ -694,6 +688,18 @@
|
||||
<File
|
||||
RelativePath="ScrollBar.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="ScrollingList.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="ScrollingList.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="SmallGradeDisplay.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="SmallGradeDisplay.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="SnapDisplay.cpp">
|
||||
</File>
|
||||
|
||||
@@ -489,7 +489,6 @@ try_element_again:
|
||||
CString sNewFilePath = sDir+"\\"+sNewFileName;
|
||||
if( sNewFileName == "" || !DoesFileExist(sNewFilePath) )
|
||||
{
|
||||
ASSERT(0);
|
||||
throw RageException( "The redirect '%s' points to the file '%s', which does not exist. Verify that this redirect is correct.", sRedirFilePath, sNewFilePath );
|
||||
}
|
||||
else
|
||||
|
||||
@@ -46,12 +46,15 @@ void TipDisplay::Update( float fDeltaTime )
|
||||
{
|
||||
ActorFrame::Update( fDeltaTime );
|
||||
|
||||
m_fSecsUntilSwitch -= fDeltaTime;
|
||||
if( m_fSecsUntilSwitch < 0 ) // time to switch states
|
||||
if( m_arrayTips.GetSize() > 0 )
|
||||
{
|
||||
m_iCurTipIndex++;
|
||||
m_iCurTipIndex = m_iCurTipIndex % m_arrayTips.GetSize();
|
||||
m_fSecsUntilSwitch = TIP_SHOW_TIME;
|
||||
m_textTip.SetText( m_arrayTips[m_iCurTipIndex] );
|
||||
m_fSecsUntilSwitch -= fDeltaTime;
|
||||
if( m_fSecsUntilSwitch < 0 ) // time to switch states
|
||||
{
|
||||
m_iCurTipIndex++;
|
||||
m_iCurTipIndex = m_iCurTipIndex % m_arrayTips.GetSize();
|
||||
m_fSecsUntilSwitch = TIP_SHOW_TIME;
|
||||
m_textTip.SetText( m_arrayTips[m_iCurTipIndex] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user