From ad68ba1bd4309d057884be6142f16e81b50f4eaa Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Tue, 10 Sep 2002 09:10:36 +0000 Subject: [PATCH] Broke GameOptions into Input and Machine Options. Added "OptionsNavigation" option. --- stepmania/Themes/default/metrics.ini | 4 +- stepmania/src/PrefsManager.cpp | 3 + stepmania/src/PrefsManager.h | 1 + stepmania/src/ScreenInputOptions.cpp | 91 +++++++++++++++ stepmania/src/ScreenInputOptions.h | 32 ++++++ stepmania/src/ScreenMachineOptions.cpp | 147 +++++++++++++++++++++++++ stepmania/src/ScreenMachineOptions.h | 32 ++++++ stepmania/src/ScreenManager.cpp | 9 +- stepmania/src/ScreenOptions.cpp | 21 ++-- stepmania/src/ScreenTitleMenu.cpp | 13 ++- stepmania/src/ScreenTitleMenu.h | 3 +- stepmania/src/StepMania.dsp | 28 +++-- stepmania/src/StepMania.vcproj | 18 ++- 13 files changed, 370 insertions(+), 32 deletions(-) create mode 100644 stepmania/src/ScreenInputOptions.cpp create mode 100644 stepmania/src/ScreenInputOptions.h create mode 100644 stepmania/src/ScreenMachineOptions.cpp create mode 100644 stepmania/src/ScreenMachineOptions.h diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 37d083742d..4a35edfd2d 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -19,8 +19,8 @@ ColorHard=0.2,1,0.2,1 // light green [ScreenTitleMenu] ChoicesX=320 -ChoicesStartY=60 -ChoicesSpacingY=48 +ChoicesStartY=54 +ChoicesSpacingY=42 HelpX=320 HelpY=440 LogoX=320 diff --git a/stepmania/src/PrefsManager.cpp b/stepmania/src/PrefsManager.cpp index eef289c3a1..b17d5461fa 100644 --- a/stepmania/src/PrefsManager.cpp +++ b/stepmania/src/PrefsManager.cpp @@ -51,6 +51,7 @@ PrefsManager::PrefsManager() m_bUseBGIfNoBanner = false; m_bDelayedEscape = true; m_bHowToPlay = true; + m_bArcadeOptionsNavigation = false; /* I'd rather get occasional people asking for support for this even though it's * already here than lots of people asking why songs aren't being displayed. */ @@ -95,6 +96,7 @@ void PrefsManager::ReadGlobalPrefsFromDisk( bool bSwitchToLastPlayedGame ) ini.GetValueB( "Options", "HiddenSongs", m_bHiddenSongs ); ini.GetValueB( "Options", "Vsync", m_bVsync ); ini.GetValueB( "Options", "HowToPlay", m_bHowToPlay ); + ini.GetValueB( "Options", "ArcadeOptionsNavigation",m_bArcadeOptionsNavigation ); ini.GetValue ( "Options", "DWIPath", m_DWIPath ); m_asAdditionalSongFolders.RemoveAll(); @@ -138,6 +140,7 @@ void PrefsManager::SaveGlobalPrefsToDisk() ini.SetValueB( "Options", "HiddenSongs", m_bHiddenSongs ); ini.SetValueB( "Options", "Vsync", m_bVsync ); ini.SetValueB( "Options", "HowToPlay", m_bHowToPlay ); + ini.SetValueB( "Options", "ArcadeOptionsNavigation",m_bArcadeOptionsNavigation ); ini.SetValue ( "Options", "DWIPath", m_DWIPath ); ini.SetValue( "Options", "AdditionalSongFolders", join(",", m_asAdditionalSongFolders) ); diff --git a/stepmania/src/PrefsManager.h b/stepmania/src/PrefsManager.h index e9da0f738a..449c387add 100644 --- a/stepmania/src/PrefsManager.h +++ b/stepmania/src/PrefsManager.h @@ -50,6 +50,7 @@ public: bool m_bAutoPlay; bool m_bDelayedEscape; bool m_bHowToPlay; + bool m_bArcadeOptionsNavigation; CStringArray m_asAdditionalSongFolders; CString m_DWIPath; diff --git a/stepmania/src/ScreenInputOptions.cpp b/stepmania/src/ScreenInputOptions.cpp new file mode 100644 index 0000000000..3fe2857873 --- /dev/null +++ b/stepmania/src/ScreenInputOptions.cpp @@ -0,0 +1,91 @@ +#include "stdafx.h" +/* +----------------------------------------------------------------------------- + Class: ScreenInputOptions + + Desc: See header. + + Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. + Chris Danford +----------------------------------------------------------------------------- +*/ + +#include "ScreenInputOptions.h" +#include "RageTextureManager.h" +#include "RageUtil.h" +#include "RageMusic.h" +#include "ScreenManager.h" +#include "PrefsManager.h" +#include "GameConstantsAndTypes.h" +#include "StepMania.h" +#include "PrefsManager.h" +#include "RageLog.h" + + + +enum { + IO_IGNORE_AXES = 0, + IO_DEDICATED_MENU_BUTTONS, + IO_AUTOPLAY, + IO_DELAYED_ESCAPE, + IO_OPTIONS_NAVIGATION, + NUM_INPUT_OPTIONS_LINES +}; +/* Hmm. Ignore JoyAxes and Back Delayed probably belong in "input options", + * preferably alongside button configuration. */ +OptionRowData g_InputOptionsLines[NUM_INPUT_OPTIONS_LINES] = { + { "Ignore\nJoyAxes", 2, {"OFF","ON (for NTPad or DirectPad)"} }, + { "Menu\nButtons", 2, {"USE GAMEPLAY BUTTONS","ONLY DEDICATED BUTTONS"} }, + { "AutoPlay", 2, {"OFF","ON"} }, + { "Back\nDelayed", 2, {"INSTANT","HOLD"} }, + { "Options\nNavigation",2, {"SM STYLE","ARCADE STYLE"} }, +}; + +ScreenInputOptions::ScreenInputOptions() : + ScreenOptions( + THEME->GetPathTo("Graphics","input options background"), + THEME->GetPathTo("Graphics","input options page"), + THEME->GetPathTo("Graphics","input options top edge") + ) +{ + LOG->Trace( "ScreenInputOptions::ScreenInputOptions()" ); + + Init( + INPUTMODE_BOTH, + g_InputOptionsLines, + NUM_INPUT_OPTIONS_LINES, + false ); + m_Menu.StopTimer(); + + MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","input options music") ); +} + +void ScreenInputOptions::ImportOptions() +{ + m_iSelectedOption[0][IO_IGNORE_AXES] = PREFSMAN->m_bIgnoreJoyAxes ? 1:0; + m_iSelectedOption[0][IO_DEDICATED_MENU_BUTTONS] = PREFSMAN->m_bOnlyDedicatedMenuButtons ? 1:0; + m_iSelectedOption[0][IO_AUTOPLAY] = PREFSMAN->m_bAutoPlay; + m_iSelectedOption[0][IO_DELAYED_ESCAPE] = PREFSMAN->m_bDelayedEscape ? 1:0; + m_iSelectedOption[0][IO_OPTIONS_NAVIGATION] = PREFSMAN->m_bArcadeOptionsNavigation ? 1:0; +} + +void ScreenInputOptions::ExportOptions() +{ + PREFSMAN->m_bIgnoreJoyAxes = m_iSelectedOption[0][IO_IGNORE_AXES] == 1; + PREFSMAN->m_bOnlyDedicatedMenuButtons= m_iSelectedOption[0][IO_DEDICATED_MENU_BUTTONS] == 1; + PREFSMAN->m_bDelayedEscape = m_iSelectedOption[0][IO_DELAYED_ESCAPE] == 1; + PREFSMAN->m_bAutoPlay = m_iSelectedOption[0][IO_AUTOPLAY] == 1; + PREFSMAN->m_bArcadeOptionsNavigation= m_iSelectedOption[0][IO_OPTIONS_NAVIGATION] == 1; +} + +void ScreenInputOptions::GoToPrevState() +{ + SCREENMAN->SetNewScreen( "ScreenTitleMenu" ); + PREFSMAN->SaveGlobalPrefsToDisk(); +} + +void ScreenInputOptions::GoToNextState() +{ + GoToPrevState(); +} + diff --git a/stepmania/src/ScreenInputOptions.h b/stepmania/src/ScreenInputOptions.h new file mode 100644 index 0000000000..16f986bc8c --- /dev/null +++ b/stepmania/src/ScreenInputOptions.h @@ -0,0 +1,32 @@ +/* +----------------------------------------------------------------------------- + Class: ScreenInputOptions + + Desc: Select a song. + + Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. + Chris Danford +----------------------------------------------------------------------------- +*/ + +#include "Screen.h" +#include "ScreenOptions.h" +#include "Sprite.h" +#include "BitmapText.h" +#include "RandomSample.h" +#include "TransitionFade.h" +#include "Quad.h" + + +class ScreenInputOptions : public ScreenOptions +{ +public: + ScreenInputOptions(); + +private: + void ImportOptions(); + void ExportOptions(); + + void GoToNextState(); + void GoToPrevState(); +}; diff --git a/stepmania/src/ScreenMachineOptions.cpp b/stepmania/src/ScreenMachineOptions.cpp new file mode 100644 index 0000000000..8480099986 --- /dev/null +++ b/stepmania/src/ScreenMachineOptions.cpp @@ -0,0 +1,147 @@ +#include "stdafx.h" +/* +----------------------------------------------------------------------------- + Class: ScreenMachineOptions + + Desc: See header. + + Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. + Chris Danford +----------------------------------------------------------------------------- +*/ + +#include "ScreenMachineOptions.h" +#include "RageTextureManager.h" +#include "RageUtil.h" +#include "RageMusic.h" +#include "ScreenManager.h" +#include "PrefsManager.h" +#include "GameConstantsAndTypes.h" +#include "StepMania.h" +#include "PrefsManager.h" +#include "RageLog.h" + + + +enum { + MO_MENU_TIMER, + MO_SHOW_DANGER, + MO_NUM_ARCADE_STAGES, + MO_JUDGE_DIFFICULTY, + MO_LIFE_DIFFICULTY, + MO_HIDDEN_SONGS, + NUM_MACHINE_OPTIONS_LINES +}; +/* Hmm. Ignore JoyAxes and Back Delayed probably belong in "input options", + * preferably alongside button configuration. */ +OptionRowData g_MachineOptionsLines[NUM_MACHINE_OPTIONS_LINES] = { + { "Menu\nTimer", 2, {"OFF","ON"} }, + { "Show\nDanger", 2, {"OFF","ON"} }, + { "Arcade\nStages", 8, {"1","2","3","4","5","6","7","UNLIMITED"} }, + { "Judge\nDifficulty", 8, {"1","2","3","4","5","6","7","8"} }, + { "Life\nDifficulty", 7, {"1","2","3","4","5","6","7"} }, + { "Hidden\nSongs", 2, {"OFF","ON"} }, +}; + +ScreenMachineOptions::ScreenMachineOptions() : + ScreenOptions( + THEME->GetPathTo("Graphics","machine options background"), + THEME->GetPathTo("Graphics","machine options page"), + THEME->GetPathTo("Graphics","machine options top edge") + ) +{ + LOG->Trace( "ScreenMachineOptions::ScreenMachineOptions()" ); + + Init( + INPUTMODE_BOTH, + g_MachineOptionsLines, + NUM_MACHINE_OPTIONS_LINES, + false ); + m_Menu.StopTimer(); + + MUSIC->LoadAndPlayIfNotAlready( THEME->GetPathTo("Sounds","machine options music") ); +} + +void ScreenMachineOptions::ImportOptions() +{ + m_iSelectedOption[0][MO_MENU_TIMER] = PREFSMAN->m_bMenuTimer ? 1:0; + m_iSelectedOption[0][MO_SHOW_DANGER] = PREFSMAN->m_bShowDanger ? 1:0; + m_iSelectedOption[0][MO_NUM_ARCADE_STAGES] = PREFSMAN->m_bEventMode ? 7 : PREFSMAN->m_iNumArcadeStages - 1; + m_iSelectedOption[0][MO_HIDDEN_SONGS] = PREFSMAN->m_bHiddenSongs ? 1:0; + + /* .02 difficulty is beyond our timing right now; even autoplay + * misses! At least fix autoplay before enabling this, or we'll + * probably get lots of bug reports about it. + * + * It's not *supposed* to be doable--it's supposed to be mostly + * impossible, and perhaps it *is* justice that even the CPU fails + * it. :) + */ + if( PREFSMAN->m_fJudgeWindow == 0.24f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 0; + else if( PREFSMAN->m_fJudgeWindow == 0.22f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 1; + else if( PREFSMAN->m_fJudgeWindow == 0.20f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 2; + else if( PREFSMAN->m_fJudgeWindow == 0.18f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 3; + else if( PREFSMAN->m_fJudgeWindow == 0.16f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 4; + else if( PREFSMAN->m_fJudgeWindow == 0.14f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 5; + else if( PREFSMAN->m_fJudgeWindow == 0.12f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 6; + else if( PREFSMAN->m_fJudgeWindow == 0.06f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 7; +// else if( PREFSMAN->m_fJudgeWindow == 0.02f ) m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 8; + else m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] = 3; + + if( PREFSMAN->m_fLifeDifficultyScale == 1.60f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 0; + else if( PREFSMAN->m_fLifeDifficultyScale == 1.40f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 1; + else if( PREFSMAN->m_fLifeDifficultyScale == 1.20f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 2; + else if( PREFSMAN->m_fLifeDifficultyScale == 1.00f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 3; + else if( PREFSMAN->m_fLifeDifficultyScale == 0.80f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 4; + else if( PREFSMAN->m_fLifeDifficultyScale == 0.60f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 5; + else if( PREFSMAN->m_fLifeDifficultyScale == 0.40f ) m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 6; + else m_iSelectedOption[0][MO_LIFE_DIFFICULTY] = 3; +} + +void ScreenMachineOptions::ExportOptions() +{ + PREFSMAN->m_bMenuTimer = m_iSelectedOption[0][MO_MENU_TIMER] == 1; + PREFSMAN->m_bShowDanger = m_iSelectedOption[0][MO_SHOW_DANGER] == 1; + PREFSMAN->m_bEventMode = m_iSelectedOption[0][MO_NUM_ARCADE_STAGES] == 7; + PREFSMAN->m_iNumArcadeStages = m_iSelectedOption[0][MO_NUM_ARCADE_STAGES] + 1; + PREFSMAN->m_bHiddenSongs = m_iSelectedOption[0][MO_HIDDEN_SONGS] == 1; + + switch( m_iSelectedOption[0][MO_JUDGE_DIFFICULTY] ) + { + case 0: PREFSMAN->m_fJudgeWindow = 0.24f; break; + case 1: PREFSMAN->m_fJudgeWindow = 0.22f; break; + case 2: PREFSMAN->m_fJudgeWindow = 0.20f; break; + case 3: PREFSMAN->m_fJudgeWindow = 0.18f; break; + case 4: PREFSMAN->m_fJudgeWindow = 0.16f; break; + case 5: PREFSMAN->m_fJudgeWindow = 0.14f; break; + case 6: PREFSMAN->m_fJudgeWindow = 0.12f; break; + case 7: PREFSMAN->m_fJudgeWindow = 0.06f; break; +// case 8: PREFSMAN->m_fJudgeWindow = 0.02f; break; + default: ASSERT(0); + } + + switch( m_iSelectedOption[0][MO_LIFE_DIFFICULTY] ) + { + case 0: PREFSMAN->m_fLifeDifficultyScale = 1.60f; break; + case 1: PREFSMAN->m_fLifeDifficultyScale = 1.40f; break; + case 2: PREFSMAN->m_fLifeDifficultyScale = 1.20f; break; + case 3: PREFSMAN->m_fLifeDifficultyScale = 1.00f; break; + case 4: PREFSMAN->m_fLifeDifficultyScale = 0.80f; break; + case 5: PREFSMAN->m_fLifeDifficultyScale = 0.60f; break; + case 6: PREFSMAN->m_fLifeDifficultyScale = 0.40f; break; + default: ASSERT(0); + } + +} + +void ScreenMachineOptions::GoToPrevState() +{ + SCREENMAN->SetNewScreen( "ScreenTitleMenu" ); + PREFSMAN->SaveGlobalPrefsToDisk(); +} + +void ScreenMachineOptions::GoToNextState() +{ + GoToPrevState(); +} + diff --git a/stepmania/src/ScreenMachineOptions.h b/stepmania/src/ScreenMachineOptions.h new file mode 100644 index 0000000000..bbfbcde0dd --- /dev/null +++ b/stepmania/src/ScreenMachineOptions.h @@ -0,0 +1,32 @@ +/* +----------------------------------------------------------------------------- + File: ScreenMachineOptions + + Desc: Select a song. + + Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. + Chris Danford +----------------------------------------------------------------------------- +*/ + +#include "Screen.h" +#include "ScreenOptions.h" +#include "Sprite.h" +#include "BitmapText.h" +#include "RandomSample.h" +#include "TransitionFade.h" +#include "Quad.h" + + +class ScreenMachineOptions : public ScreenOptions +{ +public: + ScreenMachineOptions(); + +private: + void ImportOptions(); + void ExportOptions(); + + void GoToNextState(); + void GoToPrevState(); +}; diff --git a/stepmania/src/ScreenManager.cpp b/stepmania/src/ScreenManager.cpp index 56d1280c68..b2699de028 100644 --- a/stepmania/src/ScreenManager.cpp +++ b/stepmania/src/ScreenManager.cpp @@ -183,11 +183,12 @@ void ScreenManager::Input( const DeviceInput& DeviceI, const InputEventType type #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 "ScreenInputOptions.h" +#include "ScreenMachineOptions.h" #include "ScreenMapInstruments.h" #include "ScreenMusicScroll.h" #include "ScreenPlayerOptions.h" @@ -209,6 +210,8 @@ void ScreenManager::Input( const DeviceInput& DeviceI, const InputEventType type Screen* ScreenManager::MakeNewScreen( CString sClassName ) { +#define RETURN_IF_MATCH(className) if(0==stricmp(sClassName,"##className##")) return new className + if( 0==stricmp(sClassName, "ScreenAppearanceOptions") )return new ScreenAppearanceOptions; else if( 0==stricmp(sClassName, "ScreenCaution") ) return new ScreenCaution; else if( 0==stricmp(sClassName, "ScreenEdit") ) return new ScreenEdit; @@ -217,12 +220,14 @@ Screen* ScreenManager::MakeNewScreen( CString sClassName ) else if( 0==stricmp(sClassName, "ScreenFinalEvaluation") ) return new ScreenFinalEvaluation; else if( 0==stricmp(sClassName, "ScreenEz2SelectPlayer") ) return new ScreenEz2SelectPlayer; else if( 0==stricmp(sClassName, "ScreenEz2SelectStyle") ) return new ScreenEz2SelectStyle; - else if( 0==stricmp(sClassName, "ScreenGameOptions") ) return new ScreenGameOptions; else if( 0==stricmp(sClassName, "ScreenGameOver") ) return new ScreenGameOver; else if( 0==stricmp(sClassName, "ScreenGameplay") ) return new ScreenGameplay; else if( 0==stricmp(sClassName, "ScreenGraphicOptions") ) return new ScreenGraphicOptions; else if( 0==stricmp(sClassName, "ScreenHowToPlay") ) return new ScreenHowToPlay; + else if( 0==stricmp(sClassName, "ScreenInputOptions") ) return new ScreenInputOptions; + else if( 0==stricmp(sClassName, "ScreenMachineOptions") ) return new ScreenMachineOptions; else if( 0==stricmp(sClassName, "ScreenMapInstruments") ) return new ScreenMapInstruments; + else if( 0==stricmp(sClassName, "ScreenInputOptions") ) return new ScreenInputOptions; else if( 0==stricmp(sClassName, "ScreenMusicScroll") ) return new ScreenMusicScroll; else if( 0==stricmp(sClassName, "ScreenPlayerOptions") ) return new ScreenPlayerOptions; else if( 0==stricmp(sClassName, "ScreenSandbox") ) return new ScreenSandbox; diff --git a/stepmania/src/ScreenOptions.cpp b/stepmania/src/ScreenOptions.cpp index c6c5e66148..7d3c56b39c 100644 --- a/stepmania/src/ScreenOptions.cpp +++ b/stepmania/src/ScreenOptions.cpp @@ -445,15 +445,22 @@ void ScreenOptions::MenuBack( PlayerNumber pn ) void ScreenOptions::MenuStart( PlayerNumber pn ) { - bool bAllOnExit = true; - for( int p=0; pIsPlayerEnabled(p) && m_iCurrentRow[p] != m_iNumOptionRows ) - bAllOnExit = false; + if( PREFSMAN->m_bArcadeOptionsNavigation ) + { + bool bAllOnExit = true; + for( int p=0; pIsPlayerEnabled(p) && m_iCurrentRow[p] != m_iNumOptionRows ) + bAllOnExit = false; - if( m_iCurrentRow[pn] != m_iNumOptionRows ) // not on exit - MenuDown( pn ); // can't go down any more - else if( bAllOnExit ) + if( m_iCurrentRow[pn] != m_iNumOptionRows ) // not on exit + MenuDown( pn ); // can't go down any more + else if( bAllOnExit ) + this->SendScreenMessage( SM_TweenOffScreen, 0 ); + } + else // !m_bArcadeOptionsNavigation + { this->SendScreenMessage( SM_TweenOffScreen, 0 ); + } } void ScreenOptions::MenuLeft( PlayerNumber pn ) diff --git a/stepmania/src/ScreenTitleMenu.cpp b/stepmania/src/ScreenTitleMenu.cpp index 691f805609..a9b07817a6 100644 --- a/stepmania/src/ScreenTitleMenu.cpp +++ b/stepmania/src/ScreenTitleMenu.cpp @@ -27,7 +27,8 @@ const CString CHOICE_TEXT[ScreenTitleMenu::NUM_TITLE_MENU_CHOICES] = { "GAME START", "SWITCH GAME", "CONFIG KEY/JOY", - "GAME OPTIONS", + "INPUT OPTIONS", + "MACHINE OPTIONS", "GRAPHIC OPTIONS", "APPEARANCE OPTIONS", "EDIT/RECORD/SYNCH", @@ -211,8 +212,11 @@ void ScreenTitleMenu::HandleScreenMessage( const ScreenMessage SM ) case CHOICE_MAP_INSTRUMENTS: SCREENMAN->SetNewScreen( "ScreenMapInstruments" ); break; - case CHOICE_GAME_OPTIONS: - SCREENMAN->SetNewScreen( "ScreenGameOptions" ); + case CHOICE_INPUT_OPTIONS: + SCREENMAN->SetNewScreen( "ScreenInputOptions" ); + break; + case CHOICE_MACHINE_OPTIONS: + SCREENMAN->SetNewScreen( "ScreenMachineOptions" ); break; case CHOICE_GRAPHIC_OPTIONS: SCREENMAN->SetNewScreen( "ScreenGraphicOptions" ); @@ -360,7 +364,8 @@ void ScreenTitleMenu::MenuStart( PlayerNumber pn ) case CHOICE_GAME_START: case CHOICE_SELECT_GAME: case CHOICE_MAP_INSTRUMENTS: - case CHOICE_GAME_OPTIONS: + case CHOICE_INPUT_OPTIONS: + case CHOICE_MACHINE_OPTIONS: case CHOICE_GRAPHIC_OPTIONS: case CHOICE_APPEARANCE_OPTIONS: m_soundSelect.PlayRandom(); diff --git a/stepmania/src/ScreenTitleMenu.h b/stepmania/src/ScreenTitleMenu.h index 2c6ea67c14..512289f3aa 100644 --- a/stepmania/src/ScreenTitleMenu.h +++ b/stepmania/src/ScreenTitleMenu.h @@ -31,7 +31,8 @@ public: CHOICE_GAME_START = 0, CHOICE_SELECT_GAME, CHOICE_MAP_INSTRUMENTS, - CHOICE_GAME_OPTIONS, + CHOICE_INPUT_OPTIONS, + CHOICE_MACHINE_OPTIONS, CHOICE_GRAPHIC_OPTIONS, CHOICE_APPEARANCE_OPTIONS, CHOICE_EDIT, diff --git a/stepmania/src/StepMania.dsp b/stepmania/src/StepMania.dsp index d86f281f0a..583aa2801c 100644 --- a/stepmania/src/StepMania.dsp +++ b/stepmania/src/StepMania.dsp @@ -59,7 +59,7 @@ IntDir=.\../Release6 TargetDir=\stepmania\stepmania TargetName=StepMania SOURCE="$(InputPath)" -PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ +PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ PostBuild_Cmds=disasm\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi ia32.vdi # End Special Build Tool @@ -94,7 +94,7 @@ IntDir=.\../Debug6 TargetDir=\stepmania\stepmania TargetName=StepMania-debug SOURCE="$(InputPath)" -PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ +PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ PostBuild_Cmds=disasm\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi ia32.vdi # End Special Build Tool @@ -1124,14 +1124,6 @@ SOURCE=.\ScreenEz2SelectStyle.h # End Source File # Begin Source File -SOURCE=.\ScreenGameOptions.cpp -# End Source File -# Begin Source File - -SOURCE=.\ScreenGameOptions.h -# End Source File -# Begin Source File - SOURCE=.\ScreenGameOver.cpp # End Source File # Begin Source File @@ -1164,6 +1156,22 @@ SOURCE=.\ScreenHowToPlay.h # End Source File # Begin Source File +SOURCE=.\ScreenInputOptions.cpp +# End Source File +# Begin Source File + +SOURCE=.\ScreenInputOptions.h +# End Source File +# Begin Source File + +SOURCE=.\ScreenMachineOptions.cpp +# End Source File +# Begin Source File + +SOURCE=.\ScreenMachineOptions.h +# End Source File +# Begin Source File + SOURCE=.\ScreenManager.cpp # End Source File # Begin Source File diff --git a/stepmania/src/StepMania.vcproj b/stepmania/src/StepMania.vcproj index 985d71c1da..6865a60db9 100644 --- a/stepmania/src/StepMania.vcproj +++ b/stepmania/src/StepMania.vcproj @@ -219,12 +219,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ - - - - @@ -249,6 +243,18 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\ + + + + + + + +