diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 80e049ef3f..9c4ae52de5 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -2465,6 +2465,9 @@ ItemsZoom=0.5 ItemsStartX=SCREEN_CENTER_X-160 ItemsEndX=SCREEN_CENTER_X+280 ItemsGapX=14 +ItemsLongRowP1X=260 +ItemsLongRowP2X=420 +ItemsLongRowSharedX=340 ItemsStartY=SCREEN_CENTER_Y-152 ItemsSpacingY=34 ExplanationP1X=SCREEN_CENTER_X-250 diff --git a/stepmania/src/ScreenOptions.cpp b/stepmania/src/ScreenOptions.cpp index e3a6ab8b45..0e04c1f4e0 100644 --- a/stepmania/src/ScreenOptions.cpp +++ b/stepmania/src/ScreenOptions.cpp @@ -16,8 +16,8 @@ #include "ScreenDimensions.h" #include "Command.h" -const float ITEM_X[NUM_PLAYERS] = { 260, 420 }; - +#define ITEMS_LONG_ROW_SHARED_X THEME->GetMetricF(m_sName,"ItemsLongRowSharedX") +#define ITEMS_LONG_ROW_X( p ) THEME->GetMetricF(m_sName,ssprintf("ItemsLongRowP%dX",p+1)) #define ICONS_X( p ) THEME->GetMetricF(m_sName,ssprintf("IconsP%dX",p+1)) #define EXPLANATION_X(p) THEME->GetMetricF(m_sName,ssprintf("ExplanationP%dX",p+1)) #define EXPLANATION_Y(p) THEME->GetMetricF(m_sName,ssprintf("ExplanationP%dY",p+1)) @@ -324,12 +324,12 @@ void ScreenOptions::InitMenu( InputMode im, OptionRowData OptionRows[], int iNum if( optline.bOneChoiceForAllPlayers ) { - bt->SetX( truncf((ITEM_X[0]+ITEM_X[1])/2) ); // center the item + bt->SetX( ITEMS_LONG_ROW_SHARED_X ); break; // only initialize one item since it's shared } else { - bt->SetX( ITEM_X[p] ); + bt->SetX( ITEMS_LONG_ROW_X(p) ); } } @@ -369,7 +369,7 @@ void ScreenOptions::InitMenu( InputMode im, OptionRowData OptionRows[], int iNum bt->SetText( THEME->GetMetric("OptionNames","Exit") ); bt->SetZoom( ITEMS_ZOOM ); bt->SetShadowLength( 0 ); - bt->SetX( SCREEN_CENTER_X ); + bt->SetX( ITEMS_LONG_ROW_SHARED_X ); m_framePage.AddChild( bt );