diff --git a/stepmania/Themes/default/Graphics/ScreenLogo ds3ddx.png b/stepmania/Themes/default/Graphics/ScreenLogo ds3ddx.png index 4d0c2eb871..a0f54482ed 100644 Binary files a/stepmania/Themes/default/Graphics/ScreenLogo ds3ddx.png and b/stepmania/Themes/default/Graphics/ScreenLogo ds3ddx.png differ diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 0c68de97d2..ea4a4ae218 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -1114,15 +1114,15 @@ NextScreen=ScreenLogo LogoOnCommand=x,320;y,240;zoomy,0;sleep,0.5;bounceend,0.5;zoomy,1;glowshift;effectperiod,2.5;effectcolor1,1,1,1,0.1;effectcolor2,1,1,1,0.3 VersionOnCommand=horizalign,right;x,620;y,20;diffuse,0.6,0.6,0.6,1;zoom,0.5;shadowlength,2 SongsOnCommand=horizalign,left;x,20;y,20;diffuse,0.6,0.6,0.6,1;zoom,0.5;shadowlength,2 -NextScreen=ScreenDemonstration +NextScreen=ScreenHowToPlay + +[ScreenHowToPlay] +NextScreen=ScreenHowToPlay [ScreenDemonstration] SecondsToShow=30 NextScreen=ScreenRanking -[ScreenHowToPlay] -NextScreen=ScreenUnlock - [ScreenNameEntry] TimerX=320 TimerY=30 @@ -1272,3 +1272,6 @@ TextsSpacingX=0 TextsSpacingY=30 TextsZoom=0.5 NextScreen=ScreenRanking + +[ScreenGameOver] +NextScreen=ScreenCompany \ No newline at end of file diff --git a/stepmania/src/OptionIcon.cpp b/stepmania/src/OptionIcon.cpp index a258db0dce..112f788cbd 100644 --- a/stepmania/src/OptionIcon.cpp +++ b/stepmania/src/OptionIcon.cpp @@ -40,7 +40,7 @@ OptionIcon::OptionIcon() void OptionIcon::Load( PlayerNumber pn, CString sText, bool bHeader ) { - static CString sStopWords[] = { "OFF", "VISIBLE", "VIVID", "STANDARD", "X1", "HOLDS", "DEFAULT" }; + static CString sStopWords[] = { "OFF", "VISIBLE", "VIVID", "STANDARD", "X1", "HOLDS", "DEFAULT", "OVERHEAD" }; const int iNumStopWords = sizeof(sStopWords)/sizeof(sStopWords[0]); for( int i=0; iGetMetric("ScreenGameOver","NextScreen") + + ScreenGameOver::ScreenGameOver() { GAMESTATE->Reset(); @@ -50,7 +53,7 @@ void ScreenGameOver::HandleScreenMessage( const ScreenMessage SM ) m_Fade.CloseWipingRight( SM_GoToNextScreen ); break; case SM_GoToNextScreen: - SCREENMAN->SetNewScreen( "ScreenTitleMenu" ); + SCREENMAN->SetNewScreen( NEXT_SCREEN ); break; } } diff --git a/stepmania/src/ScreenHowToPlay.cpp b/stepmania/src/ScreenHowToPlay.cpp new file mode 100644 index 0000000000..b84f0fe4a0 --- /dev/null +++ b/stepmania/src/ScreenHowToPlay.cpp @@ -0,0 +1,71 @@ +#include "global.h" +/* +----------------------------------------------------------------------------- + Class: ScreenHowToPlay + + Desc: See header. + + Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. + Chris Danford +----------------------------------------------------------------------------- +*/ + +#include "ScreenHowToPlay.h" +#include "ThemeManager.h" +#include "GameState.h" +#include "GameDef.h" +#include "RageLog.h" +#include "SongManager.h" +#include "NoteFieldPositioning.h" + + +ScreenHowToPlay::ScreenHowToPlay() : ScreenAttract("ScreenHowToPlay") +{ + GAMESTATE->m_CurStyle = STYLE_DANCE_SINGLE; + + m_LifeMeter.Load( PLAYER_1 ); + m_LifeMeter.SetXY( 480, 40 ); + this->AddChild( &m_LifeMeter ); + + NoteData* pND = new NoteData; + pND->SetNumTracks( 4 ); + pND->SetTapNote( 0, ROWS_PER_BEAT*12, TAP_TAP ); + pND->SetTapNote( 1, ROWS_PER_BEAT*16, TAP_TAP ); + pND->SetTapNote( 2, ROWS_PER_BEAT*20, TAP_TAP ); + pND->SetTapNote( 0, ROWS_PER_BEAT*24, TAP_TAP ); + pND->SetTapNote( 3, ROWS_PER_BEAT*24, TAP_TAP ); + pND->SetTapNote( 0, ROWS_PER_BEAT*28, TAP_TAP ); + + m_pSong = new Song; + m_pSong->AddBPMSegment( BPMSegment(0,120) ); + m_pSong->AddStopSegment( StopSegment(12,2) ); + m_pSong->AddStopSegment( StopSegment(16,2) ); + m_pSong->AddStopSegment( StopSegment(20,2) ); + m_pSong->AddStopSegment( StopSegment(24,2) ); + m_pSong->AddStopSegment( StopSegment(28,2) ); + GAMESTATE->m_pCurSong = m_pSong; + GAMESTATE->m_bPastHereWeGo = true; + + m_Player.Load( PLAYER_1, pND, NULL, NULL, NULL, NULL ); + m_Player.SetX( 480 ); + this->AddChild( &m_Player ); + + delete pND; + + m_fFakeSecondsIntoSong = 0; + + GAMESTATE->m_Position[PLAYER_1]->LoadFromStyleDef(GAMESTATE->GetCurrentStyleDef(), PLAYER_1); +} + +ScreenHowToPlay::~ScreenHowToPlay() +{ + delete m_pSong; +} + +void ScreenHowToPlay::Update( float fDelta ) +{ + m_fFakeSecondsIntoSong += fDelta; + GAMESTATE->UpdateSongPosition( m_fFakeSecondsIntoSong ); + + ScreenAttract::Update( fDelta ); +} \ No newline at end of file diff --git a/stepmania/src/ScreenHowToPlay.h b/stepmania/src/ScreenHowToPlay.h index de189dfec2..568fd4ff34 100644 --- a/stepmania/src/ScreenHowToPlay.h +++ b/stepmania/src/ScreenHowToPlay.h @@ -10,12 +10,24 @@ */ #include "ScreenAttract.h" +#include "Player.h" +#include "LifeMeterBar.h" class ScreenHowToPlay : public ScreenAttract { public: - ScreenHowToPlay() : ScreenAttract("ScreenHowToPlay") {}; + ScreenHowToPlay(); + ~ScreenHowToPlay(); + + virtual void Update( float fDelta ); + +protected: + LifeMeterBar m_LifeMeter; + Player m_Player; + + Song* m_pSong; + float m_fFakeSecondsIntoSong; }; diff --git a/stepmania/src/ScreenNameEntry.cpp b/stepmania/src/ScreenNameEntry.cpp index 8dc060a102..890e24102b 100644 --- a/stepmania/src/ScreenNameEntry.cpp +++ b/stepmania/src/ScreenNameEntry.cpp @@ -364,7 +364,7 @@ void ScreenNameEntry::HandleScreenMessage( const ScreenMessage SM ) for( int p=0; pIsPlayerEnabled(p) ) max_grade = max( max_grade, stats.GetGrade((PlayerNumber)p) ); - if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() ) + if( max_grade >= GRADE_AA ) SCREENMAN->SetNewScreen( "ScreenCredits" ); else SCREENMAN->SetNewScreen( "ScreenMusicScroll" );