diff --git a/stepmania/Themes/default/Fonts/ScreenEz2SelectMusic GroupName.redir b/stepmania/Themes/default/Fonts/ScreenEz2SelectMusic GroupName.redir new file mode 100644 index 0000000000..a498e7c2c6 --- /dev/null +++ b/stepmania/Themes/default/Fonts/ScreenEz2SelectMusic GroupName.redir @@ -0,0 +1 @@ +_shared2 \ No newline at end of file diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index f0b373a157..2cfe30a545 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -157,6 +157,10 @@ UseSelectionBGAnimations=0 SelectionSpecificBGAnimations=0 BounceJoinMessage=1 FoldOnJoin=1 +ScrollingListOffCommand=bouncebegin,0.5;zoomy,0 +GuideOffCommand=bouncebegin,0.5;addy,400 +ChoiceListHighlightOffCommand=linear,0.5;diffusealpha,0;glow,1,1,1,0 +ChoiceListFrameOffCommand=linear,0.5;diffusealpha,0;glow,1,1,1,0 [ScreenStyleSplash] NextScreen=ScreenSelectGroup @@ -606,6 +610,8 @@ HiddenIconP1Y=240 HiddenIconP2Y=240 InfoFrameX=999 InfoFrameY=999 +GroupNameX=320 +GroupNameY=55 DifficultyRatingX=999 DifficultyRatingY=999 DifficultyRatingOrientation=0 diff --git a/stepmania/src/ScreenEz2SelectMusic.cpp b/stepmania/src/ScreenEz2SelectMusic.cpp index 37b00ece14..0456e31989 100644 --- a/stepmania/src/ScreenEz2SelectMusic.cpp +++ b/stepmania/src/ScreenEz2SelectMusic.cpp @@ -39,6 +39,8 @@ #define METER_Y( p ) THEME->GetMetricF("ScreenEz2SelectMusic",ssprintf("MeterP%dY",p+1)) #define GUIDE_X THEME->GetMetricF("ScreenSelectMode","GuideX") #define GUIDE_Y THEME->GetMetricF("ScreenSelectMode","GuideY") +#define GROUPNAME_X THEME->GetMetricF("ScreenEz2SelectMusic","GroupNameX") +#define GROUPNAME_Y THEME->GetMetricF("ScreenEz2SelectMusic","GroupNameY") #define SPEEDICON_X( p ) THEME->GetMetricF("ScreenEz2SelectMusic",ssprintf("SpeedIconP%dX",p+1)) #define SPEEDICON_Y( p ) THEME->GetMetricF("ScreenEz2SelectMusic",ssprintf("SpeedIconP%dY",p+1)) #define MIRRORICON_X( p ) THEME->GetMetricF("ScreenEz2SelectMusic",ssprintf("MirrorIconP%dX",p+1)) @@ -158,6 +160,10 @@ ScreenEz2SelectMusic::ScreenEz2SelectMusic() : Screen("ScreenEz2SelectMusic") m_PumpDifficultyRating.SetXY( PUMP_DIFF_X, PUMP_DIFF_Y ); this->AddChild(&m_PumpDifficultyRating); + m_CurrentGroup.LoadFromFont( THEME->GetPathToF("ScreenEz2SelectMusic GroupName") ); + m_CurrentGroup.SetXY( GROUPNAME_X, GROUPNAME_Y ); + this->AddChild(&m_CurrentGroup ); + m_DifficultyRating.SetOrientation(DIFFICULTYRATING_ORIENTATION); m_DifficultyRating.SetX(DIFFICULTYRATING_X); m_DifficultyRating.SetY(DIFFICULTYRATING_Y); @@ -507,6 +513,9 @@ void ScreenEz2SelectMusic::MusicChanged() Song* pSong = m_MusicBannerWheel.GetSelectedSong(); GAMESTATE->m_pCurSong = pSong; + m_CurrentGroup.SetText( SONGMAN->ShortenGroupName( pSong->m_sGroupName ) , ""); + m_CurrentGroup.SetDiffuse( SONGMAN->GetGroupColor(pSong->m_sGroupName) ); + if( pSong->m_fMusicLengthSeconds > PREFSMAN->m_fMarathonVerSongSeconds ) { m_sprBalloon.StopTweening(); @@ -577,6 +586,7 @@ void ScreenEz2SelectMusic::AfterNotesChange( PlayerNumber pn ) if( pNotes != NULL && pn == GAMESTATE->m_MasterPlayerNumber ) { m_PumpDifficultyRating.SetText(ssprintf("Lv.%d",pNotes->GetMeter())); + m_PumpDifficultyRating.SetDiffuse( SONGMAN->GetDifficultyColor(pNotes->GetDifficulty()) ); m_DifficultyRating.SetDifficulty(pNotes->GetMeter()); } diff --git a/stepmania/src/ScreenEz2SelectMusic.h b/stepmania/src/ScreenEz2SelectMusic.h index 5370e6029f..1958fee241 100644 --- a/stepmania/src/ScreenEz2SelectMusic.h +++ b/stepmania/src/ScreenEz2SelectMusic.h @@ -64,6 +64,7 @@ protected: Sprite m_VanishIcon[NUM_PLAYERS]; Sprite m_sprBalloon; BitmapText m_PumpDifficultyRating; + BitmapText m_CurrentGroup; RageSound m_soundOptionsChange; RageSound m_soundMusicChange; diff --git a/stepmania/src/ScreenSelectMode.cpp b/stepmania/src/ScreenSelectMode.cpp index bb7a528283..4b402cb7d2 100644 --- a/stepmania/src/ScreenSelectMode.cpp +++ b/stepmania/src/ScreenSelectMode.cpp @@ -45,10 +45,12 @@ ScreenSelectMode::ScreenSelectMode() : ScreenSelect( "ScreenSelectMode" ) m_bSelected = false; m_ChoiceListFrame.Load( THEME->GetPathToG("ScreenSelectMode list frame")); m_ChoiceListFrame.SetXY( SCROLLING_LIST_X, SCROLLING_LIST_Y); + m_ChoiceListFrame.SetName("ChoiceListFrame"); this->AddChild( &m_ChoiceListFrame ); m_soundModeChange.Load( THEME->GetPathToS("ScreenSelectMode modechange")); m_soundConfirm.Load( THEME->GetPathToS("ScreenSelectMode modeconfirm")); + m_soundStart.Load( THEME->GetPathToS("ScreenSelectMode menustart")); unsigned i; for( i=0; iAddChild( &m_ScrollingList ); m_ChoiceListHighlight.Load( THEME->GetPathToG("ScreenSelectMode list highlight")); m_ChoiceListHighlight.SetXY( SCROLLING_LIST_X, SCROLLING_LIST_Y ); + m_ChoiceListHighlight.SetName("ChoiceListHighlight"); this->AddChild(&m_ChoiceListHighlight); m_Guide.Load( THEME->GetPathToG("select mode guide")); m_Guide.SetXY( GUIDE_X, GUIDE_Y ); + m_Guide.SetName("Guide"); this->AddChild( &m_Guide ); UpdateSelectableChoices(); @@ -175,16 +180,12 @@ void ScreenSelectMode::MenuStart( PlayerNumber pn ) m_bSelected = true; return; } + m_soundStart.Play(); + OFF_COMMAND( m_ScrollingList ); + OFF_COMMAND( m_Guide ); + OFF_COMMAND( m_ChoiceListHighlight ); + OFF_COMMAND( m_ChoiceListFrame ); - m_ScrollingList.BeginTweening(0.1f); - m_ScrollingList.SetZoomY(0.0f); - m_Guide.BeginTweening(0.1f); - m_Guide.SetY(550.0f); // off the bottom of the screen - m_ChoiceListFrame.BeginTweening(0.1f); - m_ChoiceListFrame.SetDiffuse(RageColor(0,0,0,0)); - m_ChoiceListHighlight.BeginTweening(0.1f); - m_ChoiceListHighlight.SetDiffuse(RageColor(0,0,0,0)); - SCREENMAN->PostMessageToTopScreen( SM_AllDoneChoosing, 0.5f ); } diff --git a/stepmania/src/ScreenSelectMode.h b/stepmania/src/ScreenSelectMode.h index 1ee4bb2b8e..4a859fd851 100644 --- a/stepmania/src/ScreenSelectMode.h +++ b/stepmania/src/ScreenSelectMode.h @@ -39,6 +39,7 @@ protected: int m_iSelectableChoices[MAX_ELEMS]; RageSound m_soundModeChange; RageSound m_soundConfirm; + RageSound m_soundStart; CStringArray arrayLocations; ScrollingList m_ScrollingList; Sprite m_ChoiceListFrame; diff --git a/stepmania/src/ScrollingList.cpp b/stepmania/src/ScrollingList.cpp index 98708299a6..1559a1e573 100644 --- a/stepmania/src/ScrollingList.cpp +++ b/stepmania/src/ScrollingList.cpp @@ -115,9 +115,7 @@ void ScrollingList::StartBouncing() else // flat, unrotated graphics need widths changing { m_RippleCSprite.SetCroppedSize( -1, -1 ); // default image size. - m_RippleCSprite.SetWidth(EZ2_BANNER_WIDTH); - m_RippleCSprite.SetHeight(EZ2_BANNER_HEIGHT); - // m_RippleCSprite.SetWH(EZ2_BANNER_WIDTH+10, EZ2_BANNER_HEIGHT+10); + m_RippleCSprite.SetWH(EZ2_BANNER_WIDTH+10, EZ2_BANNER_HEIGHT+10); } m_RippleCSprite.SetXY( m_apCSprites[m_iSelection]->GetX(), m_apCSprites[m_iSelection]->GetY() );