diff --git a/stepmania/Themes/default/Graphics/ScreenSelectGroup explanation.png b/stepmania/Themes/default/Graphics/ScreenSelectGroup explanation.png index 81c0b57435..0fa3a84a0a 100644 Binary files a/stepmania/Themes/default/Graphics/ScreenSelectGroup explanation.png and b/stepmania/Themes/default/Graphics/ScreenSelectGroup explanation.png differ diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 7bd18f6666..49b113e2a7 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -35,8 +35,8 @@ ZoomSelected=1.3 SecondsBetweenComments=12 SecondsBeforeAttract=30 HelpTextHome=Use &UP; &DOWN; to select, then press START -HelpTextPay=Press START to begin. -HelpTextFree=Press START to begin. +HelpTextPay=Press START to begin +HelpTextFree=Press START to begin NextScreen=ScreenCaution [ScreenCaution] @@ -128,13 +128,13 @@ NextScreen1=ScreenSelectGroup NextScreen2=ScreenSelectGroup NextScreen3=ScreenSelectGroup NextScreen4=ScreenSelectGroup -NextScreen5=ScreenSelectGroup -NextScreen6=ScreenSelectGroup -NextScreen7=ScreenSelectGroup +NextScreen5=ScreenInstructions +NextScreen6=ScreenInstructions +NextScreen7=ScreenInstructions NumChoicesOnPage1=4 LockInputSeconds=0.5 -SleepAfterChoiceSeconds=0.5 -SleepAfterTweenOffSeconds=1.3 +SleepAfterChoiceSeconds=0.3 +SleepAfterTweenOffSeconds=0.8 MorePage1OnCommand=diffuse,1,1,1,0;x,580;y,90;linear,0.5;diffuse,1,1,1,1 MorePage1OffCommand=linear,0.5;diffuse,1,1,1,0 MorePage2OnCommand=x,700;y,90 @@ -171,7 +171,7 @@ PicturePage2Choice2OnCommand=vertalign,top;x,960;y,200 PicturePage2Choice2OffCommand=sleep,0.2;bouncebegin,0.3;zoomy,0 PicturePage2Choice3OnCommand=vertalign,top;x,1160;y,200 PicturePage2Choice3OffCommand=sleep,0.4;bouncebegin,0.3;zoomy,0 -CursorOnCommand=diffuse,1,1,1,0;rotationz,6;zoom,4;linear,0.3;diffuse,1,1,1,1;rotationz,0;zoom,1;glowshift +CursorOnCommand=diffuse,1,1,1,0;rotationz,6;zoom,4;linear,0.3;diffuse,1,1,1,1;rotationz,0;zoom,1;glowshift;effectperiod,0.5 CursorChooseCommand=sleep,0.2;linear,0.2;xoffset,10;yoffset,10 CursorOffCommand=sleep,0.2;linear,0.3;zoom,0 CursorP1OffsetXFromPicture=-40 @@ -188,7 +188,7 @@ OKChooseCommand=diffuse,1,1,1,1;zoom,2;linear,0.2;diffuse,1,1,1,1;zoom,1 OKOffCommand=sleep,0.2;linear,0.3;zoom,0 DisabledColor=0.2,0.2,0.2,1 -[ScreenSelectMaxScreenSelectDifficultyEX] +[ScreenSelectDifficultyEx] DifficultyP1X=216 DifficultyP1Y=180 DifficultyP2X=440 @@ -205,22 +205,23 @@ NextScreenOni=ScreenInstructions NextScreenBattle=ScreenInstructions [ScreenSelectGroup] -FrameOnCommand=x,180;y,160 -FrameOffCommand= -BannerOnCommand=x,182;y,158 -BannerOffCommand= +FrameOnCommand=x,180;y,160;xoffset,-400;bounceend,0.5;xoffset,400 +FrameOffCommand=bouncebegin,0.5;xoffset,-400 +BannerOnCommand=x,182;y,158;xoffset,-400;bounceend,0.5;xoffset,400 +BannerOffCommand=bouncebegin,0.5;xoffset,-400 BannerWidth=288 BannerHeight=92 -NumberOnCommand=x,116;y,224;horizalign,right;shadowlength,0 -NumberOffCommand= -ExplanationOnCommand=x,110;y,66 -ExplanationOffCommand= -ContentsOnCommand=x,320;y,260 -ContentsOffCommand= +NumberOnCommand=x,116;y,224;horizalign,right;shadowlength,0;xoffset,-400;bounceend,0.5;xoffset,400 +NumberOffCommand=bouncebegin,0.5;xoffset,-400 +ExplanationOnCommand=x,110;y,66;xoffset,-400;bounceend,0.5;xoffset,400 +ExplanationOffCommand=bouncebegin,0.5;xoffset,-400 +ContentsOnCommand=x,320;y,260;diffuse,1,1,1,0;linear,0.5;diffuse,1,1,1,1 +ContentsOffCommand=linear,0.5;diffuse,1,1,1,0 GroupListOnCommand=x,504;y,200 GroupListOffCommand= MusicListOnCommand=x,20;y,276 MusicListOffCommand= +SleepAfterTweenOffSeconds=0.8 HelpText=Use &LEFT; &RIGHT; to select, then press START TimerSeconds=40 NextScreen=ScreenInstructions @@ -230,7 +231,7 @@ StartX=0 StartY=-136 SpacingX=0 SpacingY=26 -GainFocusCommand=stoptweening;glowshift;linear,0.2;x,-40 +GainFocusCommand=stoptweening;glowshift;effectperiod,0.5;linear,0.2;x,-40 LoseFocusCommand=stoptweening;stopeffect;linear,0.2;x,0 [MusicList] diff --git a/stepmania/src/Banner.cpp b/stepmania/src/Banner.cpp index 1217de30f4..a4e3faa0a2 100644 --- a/stepmania/src/Banner.cpp +++ b/stepmania/src/Banner.cpp @@ -9,13 +9,13 @@ ----------------------------------------------------------------------------- */ -#include "RageUtil.h" - #include "Banner.h" #include "PrefsManager.h" #include "SongManager.h" #include "RageBitmapTexture.h" #include "ThemeManager.h" +#include "RageUtil.h" + Banner::Banner() { diff --git a/stepmania/src/MenuElements.cpp b/stepmania/src/MenuElements.cpp index 6b55507d98..ac8de9818b 100644 --- a/stepmania/src/MenuElements.cpp +++ b/stepmania/src/MenuElements.cpp @@ -136,6 +136,7 @@ void MenuElements::StartTransitioning( ScreenMessage smSendWhenDone ) void MenuElements::Back( ScreenMessage smSendWhenDone ) { + m_MenuTimer.StopTimer(); m_Back.StartTransitioning( smSendWhenDone ); m_soundBack.Play(); } diff --git a/stepmania/src/ScreenSelectDifficulty.cpp b/stepmania/src/ScreenSelectDifficulty.cpp index 648f08e29a..05cab97529 100644 --- a/stepmania/src/ScreenSelectDifficulty.cpp +++ b/stepmania/src/ScreenSelectDifficulty.cpp @@ -143,7 +143,7 @@ void ScreenSelectDifficulty::HandleScreenMessage( const ScreenMessage SM ) { case SM_BeginFadingOut: TweenOffScreen(); - SCREENMAN->SendMessageToTopScreen( SM_AllDoneChoosing, SLEEP_AFTER_CHOICE_SECONDS ); // nofify parent that we're finished + SCREENMAN->SendMessageToTopScreen( SM_AllDoneChoosing, SLEEP_AFTER_TWEEN_OFF_SECONDS ); // nofify parent that we're finished break; } } diff --git a/stepmania/src/ScreenSelectGroup.cpp b/stepmania/src/ScreenSelectGroup.cpp index 027b12b5ac..3cf6a951b2 100644 --- a/stepmania/src/ScreenSelectGroup.cpp +++ b/stepmania/src/ScreenSelectGroup.cpp @@ -25,25 +25,26 @@ #include -#define FRAME_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","FrameOnCommand") -#define FRAME_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","FrameOffCommand") -#define BANNER_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","BannerOnCommand") -#define BANNER_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","BannerOffCommand") -#define BANNER_WIDTH THEME->GetMetricF("ScreenSelectGroup","BannerWidth") -#define BANNER_HEIGHT THEME->GetMetricF("ScreenSelectGroup","BannerHeight") -#define NUMBER_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","NumberOnCommand") -#define NUMBER_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","NumberOffCommand") -#define EXPLANATION_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","ExplanationOnCommand") -#define EXPLANATION_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","ExplanationOffCommand") -#define CONTENTS_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","ContentsOnCommand") -#define CONTENTS_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","ContentsOffCommand") -#define MUSIC_LIST_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","MusicListOnCommand") -#define MUSIC_LIST_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","MusicListOffCommand") -#define GROUP_LIST_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","GroupListOnCommand") -#define GROUP_LIST_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","GroupListOnCommand") -#define HELP_TEXT THEME->GetMetric ("ScreenSelectGroup","HelpText") -#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectGroup","TimerSeconds") -#define NEXT_SCREEN THEME->GetMetric ("ScreenSelectGroup","NextScreen") +#define FRAME_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","FrameOnCommand") +#define FRAME_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","FrameOffCommand") +#define BANNER_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","BannerOnCommand") +#define BANNER_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","BannerOffCommand") +#define BANNER_WIDTH THEME->GetMetricF("ScreenSelectGroup","BannerWidth") +#define BANNER_HEIGHT THEME->GetMetricF("ScreenSelectGroup","BannerHeight") +#define NUMBER_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","NumberOnCommand") +#define NUMBER_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","NumberOffCommand") +#define EXPLANATION_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","ExplanationOnCommand") +#define EXPLANATION_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","ExplanationOffCommand") +#define CONTENTS_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","ContentsOnCommand") +#define CONTENTS_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","ContentsOffCommand") +#define MUSIC_LIST_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","MusicListOnCommand") +#define MUSIC_LIST_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","MusicListOffCommand") +#define GROUP_LIST_ON_COMMAND THEME->GetMetric ("ScreenSelectGroup","GroupListOnCommand") +#define GROUP_LIST_OFF_COMMAND THEME->GetMetric ("ScreenSelectGroup","GroupListOnCommand") +#define SLEEP_AFTER_TWEEN_OFF_SECONDS THEME->GetMetricF("ScreenSelectGroup","SleepAfterTweenOffSeconds") +#define HELP_TEXT THEME->GetMetric ("ScreenSelectGroup","HelpText") +#define TIMER_SECONDS THEME->GetMetricI("ScreenSelectGroup","TimerSeconds") +#define NEXT_SCREEN THEME->GetMetric ("ScreenSelectGroup","NextScreen") ScreenSelectGroup::ScreenSelectGroup() @@ -123,31 +124,24 @@ ScreenSelectGroup::ScreenSelectGroup() m_bChosen = false; m_sprExplanation.Load( THEME->GetPathTo("Graphics","ScreenSelectGroup explanation") ); - m_sprExplanation.Command( EXPLANATION_ON_COMMAND ); this->AddChild( &m_sprExplanation ); // these guys get loaded SetSong and TweenToSong - m_Banner.SetXY( 640, 240 ); m_Banner.SetCroppedSize( BANNER_WIDTH, BANNER_HEIGHT ); this->AddChild( &m_Banner ); m_sprFrame.Load( THEME->GetPathTo("Graphics","ScreenSelectGroup frame") ); - m_sprFrame.Command( FRAME_ON_COMMAND ); this->AddChild( &m_sprFrame ); m_textNumber.LoadFromNumbers( THEME->GetPathTo("Numbers","ScreenSelectGroup numbers") ); - m_textNumber.Command( NUMBER_ON_COMMAND ); this->AddChild( &m_textNumber ); m_sprContents.Load( THEME->GetPathTo("Graphics","ScreenSelectGroup contents") ); - m_sprContents.Command( CONTENTS_ON_COMMAND ); this->AddChild( &m_sprContents ); - m_MusicList.Command( MUSIC_LIST_ON_COMMAND ); this->AddChild( &m_MusicList ); m_GroupList.Load( asGroupNames ); - m_GroupList.Command( GROUP_LIST_ON_COMMAND ); this->AddChild( &m_GroupList ); @@ -158,8 +152,8 @@ ScreenSelectGroup::ScreenSelectGroup() SOUNDMAN->PlayMusic( THEME->GetPathTo("Sounds","ScreenSelectGroup music") ); - TweenOnScreen(); AfterChange(); + TweenOnScreen(); m_GroupList.SetSelection(0); } @@ -192,6 +186,9 @@ void ScreenSelectGroup::HandleScreenMessage( const ScreenMessage SM ) { switch( SM ) { + case SM_BeginFadingOut: + m_Menu.StartTransitioning( SM_GoToNextScreen ); + break; case SM_MenuTimer: MenuStart(PLAYER_1); break; @@ -210,9 +207,7 @@ void ScreenSelectGroup::AfterChange() m_MusicList.SetGroupNo(sel); CString sSelectedGroupName = m_GroupList.GetSelectionName(); - - CString sGroupBannerPath; - if( sSelectedGroupName == GROUP_ALL_MUSIC ) + if( sSelectedGroupName == "ALL MUSIC" ) m_Banner.LoadAllMusic(); else m_Banner.LoadFromGroup( sSelectedGroupName ); @@ -272,7 +267,7 @@ void ScreenSelectGroup::MenuStart( PlayerNumber pn ) TweenOffScreen(); - m_Menu.StartTransitioning( SM_GoToNextScreen ); + this->SendScreenMessage( SM_BeginFadingOut, SLEEP_AFTER_TWEEN_OFF_SECONDS ); } void ScreenSelectGroup::MenuBack( PlayerNumber pn ) diff --git a/stepmania/src/ScreenSelectGroup.h b/stepmania/src/ScreenSelectGroup.h index 25cfc6c4c1..21abb6f506 100644 --- a/stepmania/src/ScreenSelectGroup.h +++ b/stepmania/src/ScreenSelectGroup.h @@ -46,7 +46,7 @@ private: Sprite m_sprExplanation; Sprite m_sprFrame; - FadingBanner m_Banner; + Banner m_Banner; BitmapText m_textNumber; Sprite m_sprContents; diff --git a/stepmania/src/StageDisplay.cpp b/stepmania/src/StageDisplay.cpp deleted file mode 100644 index 69527c7aa8..0000000000 --- a/stepmania/src/StageDisplay.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include "global.h" -/* ------------------------------------------------------------------------------ - Class: StageDisplay - - Desc: See header. - - Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. - Chris Danford ------------------------------------------------------------------------------ -*/ - -#include "StageDisplay.h" -#include "GameState.h" -#include "ThemeManager.h" - - -StageDisplay::StageDisplay() -{ - LoadFromFont( THEME->GetPathTo("Fonts","Header2") ); - EnableShadow( false ); - Refresh(); -} - -void StageDisplay::Refresh() -{ - SetText( GAMESTATE->GetStageText() ); - SetDiffuse( GAMESTATE->GetStageColor() ); -} diff --git a/stepmania/src/StageDisplay.h b/stepmania/src/StageDisplay.h deleted file mode 100644 index d8ba086e37..0000000000 --- a/stepmania/src/StageDisplay.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef StageDisplay_H -#define StageDisplay_H -/* ------------------------------------------------------------------------------ - Class: StageDisplay - - Desc: Shows stage number - - Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. - Chris Danford ------------------------------------------------------------------------------ -*/ - -#include "Sprite.h" -#include "song.h" -#include "BitmapText.h" -#include "PrefsManager.h" - - -class StageDisplay : public BitmapText -{ -public: - StageDisplay(); - - void Refresh(); - -private: -}; - -#endif diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index c06f028170..d46e65bad8 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -284,6 +284,8 @@ try_metric_again: if( m_uHashForCurThemeMetrics != GetHashForFile(sCurMetricPath) || m_uHashForBaseThemeMetrics != GetHashForFile(sDefaultMetricPath) ) { + LOG->Warn( "Metrics file is out of date. Reloading..." ); + MessageBeep( MB_OK ); SwitchTheme(m_sCurThemeName); // force a reload of the metrics cache } }