diff --git a/Themes/_fallback/Scripts/03 ProductivityHelpers.lua b/Themes/_fallback/Scripts/03 ProductivityHelpers.lua index 2968b5ec31..bdaa01a23a 100644 --- a/Themes/_fallback/Scripts/03 ProductivityHelpers.lua +++ b/Themes/_fallback/Scripts/03 ProductivityHelpers.lua @@ -67,6 +67,19 @@ function Actor:thump(fEffectPeriod) self:effectmagnitude(1,1.125,1) end +-- Heartbeat() +-- A customized version of pulse that is more appealing for on-beat +-- effects; +function Actor:heartbeat(fEffectPeriod) + self:pulse() + if fEffectPeriod ~= nil then + self:effecttiming(0,0.125*fEffectPeriod,0.125*fEffectPeriod,0.75*fEffectPeriod); + else + self:effecttiming(0,0.125,0.125,0.75); + end + self:effecmagnitude(1,1.125,1) +end + --[[ BitmapText commands ]] -- PixelFont() diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index 3063caca4a..dff6011056 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -292,29 +292,49 @@ SortLevel5Color=color("0,1,0,1") # something else. Mostly for custom games and game emulation, PIU for example. # The names of which -Names="PumpHard" +Names="PumpHard,PumpFreestyle,PumpNightmare" + # Names="DanceCoupleBeginner,DanceCoupleEasy,DanceCoupleMedium,DanceCoupleHard,DanceCoupleExpert,PumpHard" # That get remapped to DanceCoupleBeginnerStepsType="StepsType_Dance_Couple" DanceCoupleBeginnerDifficulty="Difficulty_Beginner" +DanceCoupleBeginnerCourseType=nil DanceCoupleBeginnerString="Beginner" +#--# DanceCoupleEasyStepsType="StepsType_Dance_Couple" DanceCoupleEasyDifficulty="Difficulty_Easy" +DanceCoupleEasyCourseType=nil DanceCoupleEasyString="Easy" +#--# DanceCoupleMediumStepsType="StepsType_Dance_Couple" DanceCoupleMediumDifficulty="Difficulty_Medium" +DanceCoupleMediumCourseType=nil DanceCoupleMediumString="Medium" +#--# DanceCoupleHardStepsType="StepsType_Dance_Couple" DanceCoupleHardDifficulty="Difficulty_Hard" +DanceCoupleHardCourseType=nil DanceCoupleHardString="Hard" +#--# DanceCoupleExpertStepsType="StepsType_Dance_Couple" DanceCoupleExpertDifficulty="Difficulty_Expert" +DanceCoupleExpertCourseType=nil DanceCoupleExpertString="Expert" -# +#===# PumpHardStepsType="StepsType_Pump_Single" PumpHardDifficulty="Difficulty_Hard" -PumpHardCourseType="CourseType_Nonstop" +PumpHardCourseType=nil PumpHardString="Crazy" +#--# +PumpFreestyleStepsType="StepsType_Pump_Double" +PumpFreestyleDifficulty="Difficulty_Medium" +PumpFreestyleCourseType=nil +PumpFreestyleString="Freestyle" +#--# +PumpNightmareStepsType="StepsType_Pump_Double" +PumpNightmareDifficulty="Difficulty_Hard" +PumpNightmareCourseType=nil +PumpNightmareString="Nightmare" # # Difficulty_Beginner-StepsType_Pump_Single=Easy # Difficulty_Easy-StepsType_Pump_Single=Normal @@ -1560,6 +1580,8 @@ LoadEdits=true Fallback="ScreenWithMenuElements" Class="ScreenSelectProfile" # +ScreenOnCommand=lockinput,1 +# NextScreen=Branch.AfterSelectProfile() PrevScreen=Branch.TitleMenu() StartScreen=Branch.AfterSelectProfile() diff --git a/Themes/default/BGAnimations/Screen in/default.lua b/Themes/default/BGAnimations/Screen in/default.lua index e9d413cd7d..812bf753ff 100644 --- a/Themes/default/BGAnimations/Screen in/default.lua +++ b/Themes/default/BGAnimations/Screen in/default.lua @@ -1,6 +1,8 @@ +local fSleepTime = THEME:GetMetric( Var "LoadingScreen","ScreenInDelay"); return Def.ActorFrame { + OnCommand=cmd(sleep,0.15+fSleepTime); Def.Quad { InitCommand=cmd(Center;zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT); - OnCommand=cmd(diffuse,color("0,0,0,1");linear,0.15;diffusealpha,0); + OnCommand=cmd(diffuse,color("0,0,0,1");sleep,fSleepTime;linear,0.15;diffusealpha,0); }; }; \ No newline at end of file diff --git a/Themes/default/BGAnimations/Screen out/default.lua b/Themes/default/BGAnimations/Screen out/default.lua index e133f4379d..d9bce01fc8 100644 --- a/Themes/default/BGAnimations/Screen out/default.lua +++ b/Themes/default/BGAnimations/Screen out/default.lua @@ -1,6 +1,8 @@ +local fSleepTime = THEME:GetMetric( Var "LoadingScreen","ScreenOutDelay"); return Def.ActorFrame { + OnCommand=cmd(sleep,0.15+fSleepTime); Def.Quad { InitCommand=cmd(Center;zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT); - OnCommand=cmd(diffuse,color("0,0,0,0");linear,0.15;diffusealpha,1); + OnCommand=cmd(diffuse,color("0,0,0,0");sleep,fSleepTime;linear,0.15;diffusealpha,1); }; }; \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenSelectPlayMode underlay.lua b/Themes/default/BGAnimations/ScreenSelectPlayMode underlay.lua new file mode 100644 index 0000000000..3758173bda --- /dev/null +++ b/Themes/default/BGAnimations/ScreenSelectPlayMode underlay.lua @@ -0,0 +1,3 @@ +local t = Def.ActorFrame {}; +t[#t+1] = StandardDecorationFromFileOptional("BackgroundFrame","BackgroundFrame"); +return t \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements in/default.lua b/Themes/default/BGAnimations/ScreenWithMenuElements in/default.lua index dac9004ced..31aa36928b 100644 --- a/Themes/default/BGAnimations/ScreenWithMenuElements in/default.lua +++ b/Themes/default/BGAnimations/ScreenWithMenuElements in/default.lua @@ -1,12 +1,14 @@ local fTileSize = 32; local iTilesX = math.ceil( SCREEN_WIDTH/fTileSize ); local iTilesY = math.ceil( SCREEN_HEIGHT/fTileSize ); +local fSleepTime = THEME:GetMetric( Var "LoadingScreen","ScreenInDelay"); --[[ local function Actor:PositionTile(self,iX,iY) self:x( scale(iX,1,iTilesX,-SCREEN_CENTER_X,SCREEN_CENTER_X) ); self:y( scale(iY,1,iTilesY,-SCREEN_CENTER_Y,SCREEN_CENTER_Y) ); end --]] local t = Def.ActorFrame { InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y); + OnCommand=cmd(sleep,fSleepTime); }; --[[ for indx=1,iTilesX do for indy=1,iTilesY do @@ -21,7 +23,7 @@ local t = Def.ActorFrame { end --]] t[#t+1] = Def.Quad { InitCommand=cmd(zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT); - OnCommand=cmd(diffuse,color("0,0,0,1");sleep,0.0325 + ( ( iTilesX/2 ) / 60 );linear,0.15;diffusealpha,0); + OnCommand=cmd(diffuse,color("0,0,0,1");sleep,0.0325 + fSleepTime;linear,0.15;diffusealpha,0); }; --[[ return Def.ActorFrame { Def.Quad { diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements out/default.lua b/Themes/default/BGAnimations/ScreenWithMenuElements out/default.lua index 34dc1bebf7..02d2d72ab1 100644 --- a/Themes/default/BGAnimations/ScreenWithMenuElements out/default.lua +++ b/Themes/default/BGAnimations/ScreenWithMenuElements out/default.lua @@ -1,12 +1,14 @@ local fTileSize = 32; local iTilesX = math.ceil( SCREEN_WIDTH/fTileSize ); local iTilesY = math.ceil( SCREEN_HEIGHT/fTileSize ); +local fSleepTime = THEME:GetMetric( Var "LoadingScreen","ScreenOutDelay"); --[[ local function Actor:PositionTile(self,iX,iY) self:x( scale(iX,1,iTilesX,-SCREEN_CENTER_X,SCREEN_CENTER_X) ); self:y( scale(iY,1,iTilesY,-SCREEN_CENTER_Y,SCREEN_CENTER_Y) ); end --]] local t = Def.ActorFrame { InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y); + OnCommand=cmd(sleep,fSleepTime); }; --[[ for indx=1,iTilesX do for indy=1,iTilesY do @@ -21,7 +23,7 @@ local t = Def.ActorFrame { end --]] t[#t+1] = Def.Quad { InitCommand=cmd(zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT); - OnCommand=cmd(diffuse,color("0,0,0,0");sleep,0.0325 + ( ( iTilesX/2 ) / 60 );linear,0.15;diffusealpha,1); + OnCommand=cmd(diffuse,color("0,0,0,0");sleep,0.0325 + fSleepTime;linear,0.15;diffusealpha,1); }; --[[ return Def.ActorFrame { Def.Quad { diff --git a/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [alt] 10x10.png b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [alt] 10x10.png new file mode 100644 index 0000000000..dbf14341c9 Binary files /dev/null and b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [alt] 10x10.png differ diff --git a/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [main] 15x15.png b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [main] 15x15.png new file mode 100644 index 0000000000..33f3d5d404 Binary files /dev/null and b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px [main] 15x15.png differ diff --git a/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px.ini b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px.ini new file mode 100644 index 0000000000..eb058b76bb --- /dev/null +++ b/Themes/default/Fonts/_helveticaneuelt std extblk cn 42px.ini @@ -0,0 +1,352 @@ +[common] +Baseline=43 +Top=11 +LineSpacing=52 +DrawExtraPixelsLeft=4 +DrawExtraPixelsRight=0 +AdvanceExtraPixels=0 + +[main] +Line 0= !"#$%&'()*+,-. +Line 1=/0123456789:;<= +Line 2=>?@ABCDEFGHIJKL +Line 3=MNOPQRSTUVWXYZ[ +Line 4=\]^_`abcdefghij +Line 5=klmnopqrstuvwxy +Line 6=z{|}~€‚ƒ„…†‡ˆ‰Š +Line 7=‹ŒŽ‘’“”•–—˜™š›œ +Line 8=žŸ ¡¢£¤¥¦§¨©ª«¬ +Line 9=­®¯°±²³´µ¶·¸¹º» +Line 10=¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊ +Line 11=ËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ +Line 12=ÚÛÜÝÞßàáâãäåæçè +Line 13=éêëìíîïðñòóôõö÷ +Line 14=øùúûüýþÿ + +0=11 +1=14 +2=21 +3=22 +4=22 +5=33 +6=26 +7=11 +8=14 +9=14 +10=17 +11=25 +12=11 +13=16 +14=11 +15=15 +16=22 +17=22 +18=22 +19=22 +20=22 +21=22 +22=22 +23=22 +24=22 +25=22 +26=11 +27=11 +28=25 +29=25 +30=25 +31=21 +32=34 +33=24 +34=24 +35=23 +36=24 +37=21 +38=20 +39=23 +40=24 +41=11 +42=21 +43=24 +44=19 +45=33 +46=25 +47=23 +48=23 +49=23 +50=24 +51=23 +52=19 +53=23 +54=23 +55=33 +56=23 +57=23 +58=20 +59=14 +60=15 +61=14 +62=25 +63=21 +64=11 +65=21 +66=22 +67=20 +68=22 +69=20 +70=13 +71=22 +72=22 +73=11 +74=11 +75=22 +76=11 +77=33 +78=22 +79=21 +80=22 +81=22 +82=16 +83=19 +84=13 +85=22 +86=20 +87=32 +88=21 +89=20 +90=19 +91=14 +92=12 +93=14 +94=25 +95=22 +96=11 +97=22 +98=21 +99=42 +100=22 +101=22 +102=11 +103=47 +104=23 +105=10 +106=32 +107=20 +108=11 +109=11 +110=21 +111=21 +112=21 +113=21 +114=42 +115=11 +116=42 +117=19 +118=10 +119=31 +120=19 +121=23 +122=11 +123=14 +124=22 +125=22 +126=22 +127=22 +128=12 +129=22 +130=11 +131=34 +132=14 +133=19 +134=25 +135=16 +136=34 +137=11 +138=17 +139=25 +140=14 +141=14 +142=11 +143=22 +144=26 +145=11 +146=11 +147=14 +148=14 +149=19 +150=33 +151=33 +152=33 +153=21 +154=24 +155=24 +156=24 +157=24 +158=24 +159=24 +160=33 +161=23 +162=21 +163=21 +164=21 +165=21 +166=11 +167=11 +168=11 +169=11 +170=24 +171=25 +172=23 +173=23 +174=23 +175=23 +176=23 +177=25 +178=23 +179=23 +180=23 +181=23 +182=23 +183=23 +184=23 +185=23 +186=21 +187=21 +188=21 +189=21 +190=21 +191=21 +192=31 +193=20 +194=20 +195=20 +196=20 +197=20 +198=11 +199=11 +200=11 +201=11 +202=21 +203=22 +204=21 +205=21 +206=21 +207=21 +208=21 +209=25 +210=21 +211=22 +212=22 +213=22 +214=22 +215=20 +216=22 +217=20 + +[alt] +Line 0= Ą˘Ł¤ĽŚ§¨Š +Line 1=ŞŤŹ­ŽŻ°ą˛ł +Line 2=´ľśˇ¸šşťź˝ +Line 3=žżŔÁÂĂÄĹĆÇ +Line 4=ČÉĘËĚÍÎĎĐŃ +Line 5=ŇÓÔŐÖ×ŘŮÚŰ +Line 6=ÜÝŢßŕáâăäĺ +Line 7=ćçčéęëěíîď +Line 8=đńňóôőö÷řů +Line 9=úűüýţ˙ + +0=11 +1=9 +2=11 +3=19 +4=22 +5=7 +6=8 +7=22 +8=11 +9=23 +10=8 +11=7 +12=7 +13=16 +14=20 +15=7 +16=17 +17=7 +18=11 +19=12 +20=11 +21=7 +22=7 +23=11 +24=11 +25=19 +26=7 +27=9 +28=7 +29=11 +30=19 +31=7 +32=8 +33=24 +34=24 +35=9 +36=24 +37=6 +38=7 +39=23 +40=7 +41=21 +42=7 +43=21 +44=7 +45=11 +46=11 +47=8 +48=8 +49=9 +50=9 +51=23 +52=23 +53=8 +54=23 +55=25 +56=8 +57=8 +58=23 +59=8 +60=23 +61=23 +62=7 +63=23 +64=7 +65=21 +66=21 +67=7 +68=21 +69=3 +70=7 +71=20 +72=7 +73=20 +74=7 +75=20 +76=7 +77=11 +78=11 +79=10 +80=8 +81=7 +82=7 +83=21 +84=21 +85=7 +86=21 +87=25 +88=7 +89=7 +90=22 +91=7 +92=22 +93=20 +94=6 +95=11 diff --git a/Themes/default/Graphics/ScreenSelectPlayMode BackgroundFrame.png b/Themes/default/Graphics/ScreenSelectPlayMode BackgroundFrame.png new file mode 100644 index 0000000000..8f70e20e2d Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode BackgroundFrame.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Easy.png b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Easy.png new file mode 100644 index 0000000000..1561546bc3 Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Easy.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Extended.png b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Extended.png new file mode 100644 index 0000000000..3fc1a75285 Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Extended.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Hard.png b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Hard.png new file mode 100644 index 0000000000..69e052a3fb Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Hard.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Normal.png b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Normal.png new file mode 100644 index 0000000000..38808fce82 Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Normal.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Oni.redir b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Oni.redir new file mode 100644 index 0000000000..3310ed756e --- /dev/null +++ b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Oni.redir @@ -0,0 +1 @@ +Normal \ No newline at end of file diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/Rave.redir b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Rave.redir new file mode 100644 index 0000000000..3310ed756e --- /dev/null +++ b/Themes/default/Graphics/ScreenSelectPlayMode scroller/Rave.redir @@ -0,0 +1 @@ +Normal \ No newline at end of file diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/_HighlightFrame.png b/Themes/default/Graphics/ScreenSelectPlayMode scroller/_HighlightFrame.png new file mode 100644 index 0000000000..89738af6e8 Binary files /dev/null and b/Themes/default/Graphics/ScreenSelectPlayMode scroller/_HighlightFrame.png differ diff --git a/Themes/default/Graphics/ScreenSelectPlayMode scroller/default.lua b/Themes/default/Graphics/ScreenSelectPlayMode scroller/default.lua new file mode 100644 index 0000000000..1f6142ab3d --- /dev/null +++ b/Themes/default/Graphics/ScreenSelectPlayMode scroller/default.lua @@ -0,0 +1,53 @@ +local gc = Var "GameCommand"; +local colors = { + Easy = color("#00ff00"), + Normal = color("#feee00"), + Hard = color("#feee00"), + Extended = color("#00ffff"), + Oni = color("#d70b8c"), + Rave = color("#c44dff"), +}; +local t = Def.ActorFrame {}; +-- Background! +t[#t+1] = Def.ActorFrame { +-- GainFocusCommand=cmd(visible,true); +-- LoseFocusCommand=cmd(visible,false); + LoadActor("_HighlightFrame") .. { + InitCommand=cmd(diffuse,colors[gc:GetName()];diffusealpha,0); + GainFocusCommand=cmd(stoptweening;linear,0.125;diffusealpha,1); + LoseFocusCommand=cmd(stoptweening;linear,0.125;diffusealpha,0); + }; +}; +-- Emblem Frame +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,-192;zoom,0.9); + LoadActor( gc:GetName() ) .. { + InitCommand=cmd(diffusealpha,0;zoom,0.75); + GainFocusCommand=cmd(stoptweening;smooth,0.125;diffusealpha,1;zoom,1;glow,Color("White");decelerate,0.25;glow,Color("Invisible");pulse;effecttiming,0,0.125,0.125,0.75;effectmagnitude,0.95,1,1;); + LoseFocusCommand=cmd(stoptweening;stopeffect;smooth,0.25;diffusealpha,0;zoom,0.75;glow,Color("Invisible")); + }; +}; +-- Text Frame +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,-192/2;y,-10); + Def.Quad { + InitCommand=cmd(horizalign,left;y,20;zoomto,320,2;diffuse,colors[gc:GetName()];diffusealpha,0;fadeleft,0.35;faderight,0.35); + GainFocusCommand=cmd(stoptweening;linear,0.2;diffusealpha,1); + LoseFocusCommand=cmd(stoptweening;linear,0.2;diffusealpha,0); + }; + LoadFont("_helveticaneuelt std extblk cn 42px") .. { + Text=gc:GetName(); + InitCommand=cmd(horizalign,left;diffuse,colors[gc:GetName()];shadowcolor,ColorDarkTone(colors[gc:GetName()]);shadowlength,2;diffusealpha,0;skewx,-0.125); + GainFocusCommand=cmd(stoptweening;x,-16;decelerate,0.25;diffusealpha,1;x,0); + LoseFocusCommand=cmd(stoptweening;x,0;accelerate,0.25;diffusealpha,0;x,16;diffusealpha,0); + }; + LoadFont("_helveticaneuelt std extblk cn 42px") .. { + Text=THEME:GetString(Var "LoadingScreen", gc:GetName() .. "Explanation"); + InitCommand=cmd(horizalign,right;x,320;y,30;shadowlength,1;diffusealpha,0;skewx,-0.125;zoom,0.5); + GainFocusCommand=cmd(stoptweening;x,320-16;decelerate,0.25;diffusealpha,1;x,320); + LoseFocusCommand=cmd(stoptweening;x,320;accelerate,0.25;diffusealpha,0;x,320+16;diffusealpha,0); + }; +}; +-- t.GainFocusCommand=cmd(visible,true); +-- t.LoseFocusCommand=cmd(visible,false); +return t \ No newline at end of file diff --git a/Themes/default/Languages/en.ini b/Themes/default/Languages/en.ini index a8e48018e4..6317d0e08b 100644 --- a/Themes/default/Languages/en.ini +++ b/Themes/default/Languages/en.ini @@ -29,6 +29,12 @@ HelpText=&MENUUP;&MENUDOWN; Switch Profile &START; Choose/Join &BACK; Unselect HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move [ScreenSelectPlayMode] HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move +EasyExplanation=A mode for beginners. +NormalExplanation=Not too easy, not too hard. +HardExplanation=For experts. +ExtendedExplanation=Several Songs in a row +OniExplanation=A true test of skill. +RaveExplanation=Battle against friend or foe. [ScreenSelectPlayStyle] HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move [ScreenGameInformation] diff --git a/Themes/default/metrics.ini b/Themes/default/metrics.ini index 1add6b5614..16ece7be54 100644 --- a/Themes/default/metrics.ini +++ b/Themes/default/metrics.ini @@ -595,6 +595,9 @@ AfterSetCommand=%TextBannerAfterSet [ScreenWithMenuElements] WaitForChildrenBeforeTweening=true +ScreenInDelay=0 +ScreenOutDelay=0 + FOV=90 ShowHeader=true HeaderX=SCREEN_CENTER_X @@ -873,46 +876,59 @@ IconChoice14KeysOnCommand=zoom,0;bounceend,0.35;zoom,1 IconChoice14KeysOffCommand=linear,0.1175;zoomx,0 [ScreenSelectPlayMode] +ScreenOutDelay=3 +# DefaultChoice="Easy" # ChoiceNames="Normal,Extended" # PerChoiceIconElement=false # -ShowScroller=false +ShowScroller=true +WrapScroller=true +ScrollerX=SCREEN_CENTER_X +ScrollerY=SCREEN_CENTER_Y-60 +ScrollerOnCommand=SetFastCatchUp,true; +ScrollerOffCommand=decelerate,0.8;y,SCREEN_CENTER_Y;sleep,2;linear,0.1;zoomy,0 +# +ShowBackgroundFrame=true +BackgroundFrameX=SCREEN_CENTER_X +BackgroundFrameY=SCREEN_CENTER_Y-60 +BackgroundFrameOnCommand=diffuse,Color("Black");diffusealpha,0.7 +BackgroundFrameOffCommand=decelerate,0.8;y,SCREEN_CENTER_Y;sleep,2;linear,0.1;zoomy,0 +# ShowIcon=true -WrapScroller=false UseIconMetrics=true # -IconGainFocusCommand=stoptweening;bounceend,0.125;zoom,1; -IconLoseFocusCommand=stoptweening;decelerate,0.125;zoom,0.6; +IconGainFocusCommand=stoptweening;glowshift;decelerate,0.125;zoom,1; +IconLoseFocusCommand=stoptweening;stopeffect;decelerate,0.125;zoom,0.6; # IconChoiceEasyX=SCREEN_CENTER_X-160 -IconChoiceEasyY=SCREEN_CENTER_Y-48 +IconChoiceEasyY=SCREEN_BOTTOM-72-64 IconChoiceEasyOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceEasyOffCommand=linear,0.1175;zoomx,0 # IconChoiceNormalX=SCREEN_CENTER_X -IconChoiceNormalY=SCREEN_CENTER_Y-48 +IconChoiceNormalY=SCREEN_BOTTOM-72-64 IconChoiceNormalOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceNormalOffCommand=linear,0.1175;zoomx,0 # IconChoiceHardX=SCREEN_CENTER_X+160 -IconChoiceHardY=SCREEN_CENTER_Y-48 +IconChoiceHardY=SCREEN_BOTTOM-72-64 IconChoiceHardOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceHardOffCommand=linear,0.1175;zoomx,0 # IconChoiceExtendedX=SCREEN_CENTER_X-160 -IconChoiceExtendedY=SCREEN_CENTER_Y+48 +IconChoiceExtendedY=SCREEN_BOTTOM-72 IconChoiceExtendedOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceExtendedOffCommand=linear,0.1175;zoomx,0 # IconChoiceOniX=SCREEN_CENTER_X -IconChoiceOniY=SCREEN_CENTER_Y+48 +IconChoiceOniY=SCREEN_BOTTOM-72 IconChoiceOniOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceOniOffCommand=linear,0.1175;zoomx,0 # IconChoiceRaveX=SCREEN_CENTER_X+160 -IconChoiceRaveY=SCREEN_CENTER_Y+48 +IconChoiceRaveY=SCREEN_BOTTOM-72 IconChoiceRaveOnCommand=zoom,0;bounceend,0.35;zoom,0.8 IconChoiceRaveOffCommand=linear,0.1175;zoomx,0 [ScreenSelectMusic] diff --git a/Themes/default/~res/ScreenSelectPlayMode scroller background.psd b/Themes/default/~res/ScreenSelectPlayMode scroller background.psd new file mode 100644 index 0000000000..ff30bf8429 Binary files /dev/null and b/Themes/default/~res/ScreenSelectPlayMode scroller background.psd differ diff --git a/Themes/default/~res/ScreenSelectPlayMode scroller icons.psd b/Themes/default/~res/ScreenSelectPlayMode scroller icons.psd new file mode 100644 index 0000000000..83d801d022 Binary files /dev/null and b/Themes/default/~res/ScreenSelectPlayMode scroller icons.psd differ