diff --git a/Themes/_fallback/BGAnimations/ScreenSystemLayer aux.lua b/Themes/_fallback/BGAnimations/ScreenSystemLayer aux.lua new file mode 100644 index 0000000000..858f45d252 --- /dev/null +++ b/Themes/_fallback/BGAnimations/ScreenSystemLayer aux.lua @@ -0,0 +1,49 @@ +local function CreditsText( pn ) + function update(self) + local str = ScreenSystemLayerHelpers.GetCreditsMessage(pn); + self:settext(str); + end + + function UpdateVisible(self) + local screen = SCREENMAN:GetTopScreen(); + local bShow = true; + if screen then + local sClass = screen:GetName(); + bShow = THEME:GetMetric( sClass, "ShowCreditDisplay" ); + end + + self:visible( bShow ); + end + + local text = LoadFont(Var "LoadingScreen","credits") .. { + InitCommand=function(self) + self:name("Credits" .. PlayerNumberToString(pn)) + ActorUtil.LoadAllCommandsAndSetXY(self,Var "LoadingScreen"); + end; + UpdateTextCommand=function(self) + local str = ScreenSystemLayerHelpers.GetCreditsMessage(pn); + self:settext(str); + end; + UpdateVisibleCommand=function(self) + local screen = SCREENMAN:GetTopScreen(); + local bShow = true; + if screen then + local sClass = screen:GetName(); + bShow = THEME:GetMetric( sClass, "ShowCreditDisplay" ); + end + + self:visible( bShow ); + end; +--[[ RefreshCreditTextMessageCommand=update; + CoinInsertedMessageCommand=update; + PlayerJoinedMessageCommand=update; + ScreenChangedMessageCommand=UpdateVisible; --]] + }; + return text; +end + +local t = Def.ActorFrame { + CreditsText( PLAYER_1 ); + CreditsText( PLAYER_2 ); +}; +return t; \ No newline at end of file diff --git a/Themes/_fallback/BGAnimations/ScreenSystemLayer overlay/default.lua b/Themes/_fallback/BGAnimations/ScreenSystemLayer overlay/default.lua index ce4d73c202..9195d3f157 100644 --- a/Themes/_fallback/BGAnimations/ScreenSystemLayer overlay/default.lua +++ b/Themes/_fallback/BGAnimations/ScreenSystemLayer overlay/default.lua @@ -22,4 +22,5 @@ local t = Def.ActorFrame { HideSystemMessageMessageCommand = cmd(finishtweening); }; }; +t[#t+1] = LoadActor(THEME:GetPathB("ScreenSystemLayer","aux")); return t; diff --git a/Themes/_fallback/Fonts/ScreenSystemLayer Credits.redir b/Themes/_fallback/Fonts/ScreenSystemLayer Credits.redir new file mode 100644 index 0000000000..5c6053f7f1 --- /dev/null +++ b/Themes/_fallback/Fonts/ScreenSystemLayer Credits.redir @@ -0,0 +1 @@ +Common Normal \ No newline at end of file diff --git a/Themes/_fallback/Scripts/02 Branches.lua b/Themes/_fallback/Scripts/02 Branches.lua index 43bc74b663..55ee6e2d09 100644 --- a/Themes/_fallback/Scripts/02 Branches.lua +++ b/Themes/_fallback/Scripts/02 Branches.lua @@ -27,6 +27,20 @@ function SelectMusicOrCourse() end Branch = { + Init = function() + if GAMESTATE:GetCoinMode() == 'CoinMode_Home' then + return "ScreenInit" + else + return "ScreenInit" + end + end, + AfterInit = function() + if GAMESTATE:GetCoinMode() == 'CoinMode_Home' then + return Branch.TitleMenu() + else + return "ScreenTitle" + end + end, TitleMenu = function() -- home mode is the most assumed use of sm-ssc. if GAMESTATE:GetCoinMode() == "CoinMode_Home" then @@ -37,7 +51,7 @@ Branch = { -- if no credits are inserted, don't show the Join screen. SM4 has -- this as the initial screen, but that means we'd be stuck in a -- loop with ScreenInit. No good. - return "ScreenDemonstration" + return "ScreenTitleJoin" else return "ScreenTitleJoin" end diff --git a/Themes/_fallback/Scripts/02 Sprite.lua b/Themes/_fallback/Scripts/02 Sprite.lua index 30baef8a32..e532d1c4a5 100644 --- a/Themes/_fallback/Scripts/02 Sprite.lua +++ b/Themes/_fallback/Scripts/02 Sprite.lua @@ -27,6 +27,20 @@ function LoadSongBackground() } end +function Sprite:LoadFromCurrentSongBackground() + local song = GAMESTATE:GetCurrentSong(); + if not song then + local trail = GAMESTATE:GetCurrentTrail(GAMESTATE:GetMasterPlayerNumber()); + local e = trail:GetEntries() + if #e > 0 then + song = e[1]:GetSong(); + end + end + + if not song then return end + + self:LoadFromSongBackground(song); +end function Sprite:position( f ) self:GetTexture():position( f ) diff --git a/Themes/_fallback/Sounds/ScreenDemonstration music.redir b/Themes/_fallback/Sounds/ScreenDemonstration music.redir new file mode 100644 index 0000000000..1f8565ca21 --- /dev/null +++ b/Themes/_fallback/Sounds/ScreenDemonstration music.redir @@ -0,0 +1 @@ +_silent \ No newline at end of file diff --git a/Themes/_fallback/Sounds/ScreenInit music.redir b/Themes/_fallback/Sounds/ScreenInit music.redir new file mode 100644 index 0000000000..1f8565ca21 --- /dev/null +++ b/Themes/_fallback/Sounds/ScreenInit music.redir @@ -0,0 +1 @@ +_silent \ No newline at end of file diff --git a/Themes/_fallback/Sounds/ScreenTitle music.redir b/Themes/_fallback/Sounds/ScreenTitle music.redir new file mode 100644 index 0000000000..1f8565ca21 --- /dev/null +++ b/Themes/_fallback/Sounds/ScreenTitle music.redir @@ -0,0 +1 @@ +_silent \ No newline at end of file diff --git a/Themes/_fallback/Sounds/ScreenTitleJoin music.redir b/Themes/_fallback/Sounds/ScreenTitleJoin music.redir new file mode 100644 index 0000000000..c29cb1da10 --- /dev/null +++ b/Themes/_fallback/Sounds/ScreenTitleJoin music.redir @@ -0,0 +1 @@ +_Music title \ No newline at end of file diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index 791ed5512f..53f33cb4e6 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -40,7 +40,7 @@ StepsTypesToHide="lights-cabinet" MaxCourseEntriesBeforeShowVarious=10 # Legacy metric: The first screen that shows up when you take forever to press # start. -FirstAttractScreen="ScreenInit" +FirstAttractScreen="ScreenDemonstration" # First screen that pops up when you start the game. ScreenInit in particular # shows the theme information before going to the title screen. InitialScreen="ScreenInit" @@ -164,15 +164,14 @@ Cycle=true # Text when there is no BPM NoBpmText="000" # How fast it cycles, smaller is faster -RandomCycleSpeed=0.2 +RandomCycleSpeed=0.1 # Seperator between both bpms ( 100-200 ). Separator="-" # ??? when it cycles. ShowQMarksInRandomCycle=true -RandomText="..." +RandomText="!!!" # xxx: localize me -aj VariousText="Various" -RandomText="???" [CodeDetector] # Codes on the MusicWheel that change stuff! PrevSteps1="Up,Up" @@ -236,10 +235,10 @@ NumberMaxZoom=1 NumberMaxZoomAt=100 # LabelMinZoom=0.75*0.75 -LabelMaxZoom=0.75*1 +LabelMaxZoom=0.75*0.75 # Things the combo does when you bang on it, and what the text does PulseCommand=%function(self,param) self:stoptweening(); self:zoom(1.125*param.Zoom); self:linear(0.05); self:zoom(param.Zoom); end -PulseLabelCommand=%function(self,param) self:stoptweening(); self:zoom(1.075*param.LabelZoom); self:linear(0.05); self:zoom(param.LabelZoom); end +PulseLabelCommand=%function(self,param) self:stoptweening(); self:zoom(param.LabelZoom); self:linear(0.05); self:zoom(param.LabelZoom); end NumberOnCommand=y,240-216-1.5;shadowlength,1;halign,1;valign,1;skewx,-0.125; LabelOnCommand=x,6;y,22.5;shadowlength,1;zoom,0.75;diffusebottomedge,color("0.75,0.75,0.75,1");halign,0;valign,1 @@ -1173,7 +1172,27 @@ LineOffColor=color("0.5,0.5,0.5,1.0") Class="ScreenSystemLayer" Fallback="Screen" # +ShowCreditDisplay=true CreditsJoinOnly=false +# +CreditsP1X=SCREEN_LEFT+4 +CreditsP1Y=SCREEN_BOTTOM-4 +CreditsP1RefreshCreditTextMessageCommand=playcommand,"UpdateText"; +CreditsP1CoinInsertedMessageCommand=playcommand,"UpdateText"; +CreditsP1CoinInsertedMessageCommand=playcommand,"UpdateText"; +CreditsP1PlayerJoinedMessageCommand=playcommand,"UpdateText"; +CreditsP1ScreenChangedMessageCommand=playcommand,"UpdateVisible";queuecommand,"On" +CreditsP1OnCommand=horizalign,left;vertalign,bottom;zoom,0.675;shadowlength,1; +CreditsP1OffCommand= +# +CreditsP2X=SCREEN_RIGHT-4 +CreditsP2Y=SCREEN_BOTTOM-4 +CreditsP2RefreshCreditTextMessageCommand=playcommand,"UpdateText"; +CreditsP2CoinInsertedMessageCommand=playcommand,"UpdateText"; +CreditsP2PlayerJoinedMessageCommand=playcommand,"UpdateText"; +CreditsP2ScreenChangedMessageCommand=playcommand,"UpdateVisible";queuecommand,"On" +CreditsP2OnCommand=horizalign,right;vertalign,bottom;zoom,0.675;shadowlength,1; +CreditsP2OffCommand= [ScreenConsoleOverlay] Class="ScreenSystemLayer" Fallback="ScreenSystemLayer" @@ -1215,6 +1234,7 @@ StopMusicOnBack=false WaitForChildrenBeforeTweeningOut=false CancelTransitionsOut=false # +ShowCreditDisplay=true AllowDisabledPlayerInput=false MemoryCardIcons=false # @@ -1381,12 +1401,14 @@ Class="ScreenAttract" Fallback="ScreenAttract" # PrevScreen="ScreenInit" -NextScreen=Branch.TitleMenu() +NextScreen=Branch.AfterInit() StartScreen=Branch.TitleMenu() # ForceTimer=true TimerSeconds=5 # +PlayMusic=false +# TimerMetricsGroup="MenuTimerNoSound" TimerOnCommand=visible,false @@ -1397,6 +1419,8 @@ Fallback="ScreenSelectMaster" PrevScreen="ScreenInit" NextScreen="ScreenInit" # +StopMusicOnBack=true +# CoinModeChangeScreen=Branch.TitleMenu() # ScreenOnCommand=lockinput,0 @@ -1405,7 +1429,7 @@ TimerSeconds=-1 # SharedSelection=true AllowDisabledPlayerInput=true -OverrideSleepAfterTweenOffSeconds=true +OverrideSleepAfterTweenOffSeconds=false DoSwitchAnyways=false # SleepAfterTweenOffSeconds=0 @@ -1457,7 +1481,7 @@ ScrollerOnCommand= ScrollerOffCommand= IdleCommentSeconds=-1 IdleTimeoutSeconds=-1 -IdleTimeoutScreen=THEME:GetMetric("Common","FirstAttractScreen") +IdleTimeoutScreen=Branch.AfterInit() DoublePressToSelect=false UseTwoLists=false OptionOrderUp="" @@ -1483,11 +1507,6 @@ LogoX=SCREEN_CENTER_X LogoY=SCREEN_CENTER_Y-80 LogoOnCommand=bob;effectperiod,4;effectmagnitude,0,8,0;zoom,0;bounceend,0.35;zoom,1 LogoOffCommand= - -[ScreenTitleJoin] -Fallback="ScreenTitleMenu" -ChoiceNames="1" - [ScreenQuickSetupOverview] Class="ScreenSelectMaster" Fallback="ScreenSelectMaster" @@ -1513,7 +1532,7 @@ ShowIcon=true Class="ScreenSelectMaster" Fallback="ScreenQuickSetupOverview" # -NextScreen=Branch.QuickSetupB +NextScreen=Branch.QuickSetupBl PrevScreen=Branch.QuickSetupStart # DefaultChoice="Set" @@ -1787,6 +1806,7 @@ Fallback="ScreenSelectMusic" # DefaultSort="Nonstop" ScreenModsCommand=setupcoursestagemods +# MusicWheelType="CourseWheel" Codes="CourseCodeDetector" [CourseCodeDetector] @@ -2260,8 +2280,10 @@ CursorOnCommand=visible,false [ScreenOptionsService] Class="ScreenOptionsMaster" Fallback="ScreenOptionsSimpleService" -NextScreen=Branch.TitleMenu() -PrevScreen=Branch.TitleMenu() +# +NextScreen=Branch.Init() +PrevScreen=Branch.Init() + LineNames="SD,1,2,Sync,13,3,10,11,4,12,6,5,Theme,8,9" Line1="gamecommand;screen,ScreenMapControllers;name,Key Joy Mappings" Line2="gamecommand;screen,ScreenTestInput;name,Test Input" @@ -2661,6 +2683,8 @@ Fallback="ScreenWithMenuElementsBlank" StartScreen="" LightsMode="LightsMode_Attract" # +PlayMusic=false +# ResetGameState=true BackGoesToStartScreen=true # @@ -3250,7 +3274,7 @@ NextScreen="ScreenEditMenu" PrevScreen="ScreenEditMenu" ShowHelp=false AllowOperatorMenuButton=false -ShowCoinsAndCredits=false +ShowCreditDisplay=false ShowStyleIcon=false TimerSeconds=-1 EditModifiers="" @@ -3678,7 +3702,27 @@ UserDY=24 UserOnCommand= UserOffCommand= -# some arcade mode things +# Arcade +[ScreenTitle] +Fallback="ScreenAttract" +# +PrevScreen=Branch.Init() +NextScreen="ScreenDemonstration" +NextScreen="ScreenDemonstration" +StartScreen=Branch.TitleMenu() +# +ForceTimer=true +TimerSeconds=5 +# +TimerMetricsGroup="MenuTimerNoSound" +TimerOnCommand=visible,false +[ScreenTitleJoin] +Fallback="ScreenTitleMenu" +ChoiceNames="1" +# +IdleCommentSeconds=-1 +IdleTimeoutSeconds=-1 +IdleTimeoutScreen=Branch.AfterInit() [ScreenDemonstration] Fallback="ScreenGameplay" Class="ScreenDemonstration" diff --git a/Themes/default/BGAnimations/ScreenEvaluation background/default.lua b/Themes/default/BGAnimations/ScreenEvaluation background/default.lua index 66623c2ad5..ec4cf72db5 100644 --- a/Themes/default/BGAnimations/ScreenEvaluation background/default.lua +++ b/Themes/default/BGAnimations/ScreenEvaluation background/default.lua @@ -13,10 +13,11 @@ t[#t+1] = Def.ActorFrame { end end; }; ---[[ Def.Quad { + Def.Quad { InitCommand=cmd(scaletoclipped,SCREEN_WIDTH+1,SCREEN_HEIGHT); OnCommand=cmd(diffuse,color("#FFCB05");diffusebottomedge,color("#F0BA00");diffusealpha,0.45); }; +--[[ LoadActor(THEME:GetPathB("ScreenWithMenuElements","background/_grid")).. { InitCommand=cmd(customtexturerect,0,0,(SCREEN_WIDTH+1)/4,SCREEN_HEIGHT/4;SetTextureFiltering,true); OnCommand=cmd(zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT;diffuse,Color("Black");diffuseshift;effecttiming,(1/8)*4,0,(7/8)*4,0;effectclock,'beatnooffset'; diff --git a/Themes/default/BGAnimations/ScreenGameplay in.redir b/Themes/default/BGAnimations/ScreenGameplay in.redir deleted file mode 100644 index 04b2ead777..0000000000 --- a/Themes/default/BGAnimations/ScreenGameplay in.redir +++ /dev/null @@ -1 +0,0 @@ -_blank \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenGameplay in/default.lua b/Themes/default/BGAnimations/ScreenGameplay in/default.lua new file mode 100644 index 0000000000..93059d15bf --- /dev/null +++ b/Themes/default/BGAnimations/ScreenGameplay in/default.lua @@ -0,0 +1,7 @@ +local t = Def.ActorFrame {}; +t[#t+1] = Def.Sprite { + InitCommand=cmd(Center); + BeginCommand=cmd(LoadFromCurrentSongBackground); + OnCommand=cmd(diffusealpha,1;scaletoclipped,SCREEN_WIDTH,SCREEN_HEIGHT;linear,1;diffusealpha,0;); +}; +return t; \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenStageInformation underlay/default.lua b/Themes/default/BGAnimations/ScreenStageInformation underlay/default.lua index 7f46ffdd77..bcca1e9c0c 100644 --- a/Themes/default/BGAnimations/ScreenStageInformation underlay/default.lua +++ b/Themes/default/BGAnimations/ScreenStageInformation underlay/default.lua @@ -10,13 +10,8 @@ t[#t+1] = Def.Quad { }; t[#t+1] = Def.Sprite { InitCommand=cmd(Center); - BeginCommand=function(self) - if GAMESTATE:GetCurrentSong() then - self:LoadFromSongBackground(GAMESTATE:GetCurrentSong()); - --self:LoadBackground( GAMESTATE:GetCurrentSong():GetBackgroundPath() ); - end; - end; - OnCommand=cmd(diffusealpha,0;scaletoclipped,SCREEN_WIDTH,SCREEN_HEIGHT;sleep,0.5;linear,0.50;diffusealpha,PREFSMAN:GetPreference("BGBrightness")); + BeginCommand=cmd(LoadFromCurrentSongBackground); + OnCommand=cmd(diffusealpha,0;scaletoclipped,SCREEN_WIDTH,SCREEN_HEIGHT;sleep,0.5;linear,0.50;diffusealpha,1;sleep,3); }; t[#t+1] = Def.ActorFrame { diff --git a/Themes/default/BGAnimations/ScreenTitleMenu out.lua b/Themes/default/BGAnimations/ScreenTitleMenu out.lua deleted file mode 100644 index 60dd6762d9..0000000000 --- a/Themes/default/BGAnimations/ScreenTitleMenu out.lua +++ /dev/null @@ -1,6 +0,0 @@ -return Def.ActorFrame { - Def.Quad { - InitCommand=cmd(Center;zoomto,SCREEN_WIDTH+1,SCREEN_HEIGHT); - OnCommand=cmd(diffuse,color("0,0,0,0");sleep,0.15;linear,0.35;diffusealpha,1); - }; -}; \ No newline at end of file diff --git a/Themes/default/Graphics/Player combo/default.lua b/Themes/default/Graphics/Player combo/default.lua index 26d65cabbd..4c2de7b126 100644 --- a/Themes/default/Graphics/Player combo/default.lua +++ b/Themes/default/Graphics/Player combo/default.lua @@ -50,7 +50,7 @@ local t = Def.ActorFrame { else return end; --]] - TwentyFiveMilestoneCommand=function(self,parent) +--[[ TwentyFiveMilestoneCommand=function(self,parent) (cmd(skewy,-0.125;decelerate,0.325;skewy,0))(self); end; ToastyAchievedMessageCommand=function(self,params) @@ -62,7 +62,7 @@ local t = Def.ActorFrame { if params.PlayerNumber == player then (cmd(stopeffect))(c.ComboFrame); end; - end; + end; --]] ComboCommand=function(self, param) local iCombo = param.Misses or param.Combo; if not iCombo or iCombo < ShowComboAt then diff --git a/Themes/default/Graphics/ScreenSelectMusic BPMLabel.lua b/Themes/default/Graphics/ScreenSelectMusic BPMLabel.lua index 567c3c001f..78733f252f 100644 --- a/Themes/default/Graphics/ScreenSelectMusic BPMLabel.lua +++ b/Themes/default/Graphics/ScreenSelectMusic BPMLabel.lua @@ -8,9 +8,9 @@ return Def.ActorFrame { self:stoptweening(); -- self:linear(0.25); if song then - self:diffusebottomedge( song:GetTimingData():HasStops() and color("#55CCEE") or color("#FFFFFF") ); + self:diffusebottomedge( song:GetTimingData():HasStops() and Color("Orange") or Color("White") ); else - self:diffusebottomedge( color("#FFFFFF") ); + self:diffusebottomedge( Color("White") ); end; end; CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); diff --git a/Themes/default/Graphics/ScreenWithMenuElements header/default.lua b/Themes/default/Graphics/ScreenWithMenuElements header/default.lua index 7182bd65a8..85fabc6526 100644 --- a/Themes/default/Graphics/ScreenWithMenuElements header/default.lua +++ b/Themes/default/Graphics/ScreenWithMenuElements header/default.lua @@ -11,7 +11,7 @@ t[#t+1] = LoadFont("Common Normal") .. { Name="HeaderText"; Text=Screen.String("HeaderText"); InitCommand=cmd(x,-SCREEN_CENTER_X+24;y,24;zoom,1;horizalign,left;shadowlength,0;maxwidth,200); - OnCommand=cmd(strokecolor,Color("Outline");diffusebottomedge,color("0.875,0.875,0.875")); + OnCommand=cmd(skewx,-0.125;strokecolor,Color("Outline");diffusebottomedge,color("0.875,0.875,0.875")); UpdateScreenHeaderMessageCommand=function(self,param) self:settext(param.Header); end; diff --git a/Themes/default/Graphics/StepsDisplay frame.png b/Themes/default/Graphics/StepsDisplay frame.png index ed4790bd70..dab2f1eb2b 100644 Binary files a/Themes/default/Graphics/StepsDisplay frame.png and b/Themes/default/Graphics/StepsDisplay frame.png differ diff --git a/Themes/default/Graphics/StepsDisplayGameplay frame.png b/Themes/default/Graphics/StepsDisplayGameplay frame.png new file mode 100644 index 0000000000..ed4790bd70 Binary files /dev/null and b/Themes/default/Graphics/StepsDisplayGameplay frame.png differ diff --git a/Themes/default/metrics.ini b/Themes/default/metrics.ini index 173ce02b7c..44a5b63067 100644 --- a/Themes/default/metrics.ini +++ b/Themes/default/metrics.ini @@ -108,11 +108,19 @@ NumLivesP1X=-92 NumLivesP1Y=0 NumLivesP2X=92 NumLivesP2Y=0 +NumLivesP2OnCommand=zoomx,-1 [LifeMeterBattery Percent] # still asking for this even though it's in fallback... -aj Format= - +# +DancePointsP2OnCommand=zoom,0.7;zoomx,-0.7;shadowlength,0;diffuse,PlayerColor(PLAYER_2) +DancePointsP2OffCommand= +# +PercentP2X=0 +PercentP2Y=0 +PercentP2OnCommand=zoom,0.7;zoomx,-0.7;shadowlength,0;diffuse,PlayerColor(PLAYER_2) +PercentP2OffCommand= [NoteField] ShowBoard=GAMESTATE:GetCurrentGame():GetName() == "kb7" @@ -169,7 +177,7 @@ NumSectionColors=1 SectionColor1=Color("Orange") # SongRealExtraColor=Color("Red") -SortMenuColor=Color("Blue") +SortMenuColor=Color("Orange") # ShowRoulette=true ShowRandom=false @@ -436,7 +444,7 @@ TicksSetCommand=%function(self,param) end; # ShowMeter=true ZeroMeterString="?" -MeterX=56 +MeterX=56-32 MeterY=0 MeterOnCommand=shadowlength,1;textglowmode,'TextGlowMode_Inner' MeterSetCommand=%function(self,param) \ @@ -460,6 +468,75 @@ MeterSetCommand=%function(self,param) \ end; # ShowDescription=true +DescriptionX=-20-32 +DescriptionY=GetUserPrefB("UserPrefAutoSetStyle") and -5 or 0 +DescriptionOnCommand=shadowlength,1;uppercase,true;zoom,0.75;maxwidth,128+8 +DescriptionSetCommand=%function(self,param) \ + if self:GetText() == "" then \ + self:settext("Edit"); \ + end; \ + if param.CustomDifficulty then \ + self:diffuse(CustomDifficultyToColor(param.CustomDifficulty)); \ + self:shadowcolor(CustomDifficultyToDarkColor(param.CustomDifficulty)); \ + end; \ + (cmd(finishtweening;diffusealpha,0;addx,-4;smooth,0.125;addx,4;diffusealpha,1))(self); \ +end; +# +ShowAutogen=false +AutogenX=40-32 +AutogenY=0 +AutogenOnCommand= +AutogenSetCommand=%function(self,param) if param.Difficulty then self:diffuse(CustomDifficultyToLightColor(param.Difficulty)); self:strokecolor(CustomDifficultyToDarkColor(param.Difficulty)); end end +# +ShowStepsType=GetUserPrefB("UserPrefAutoSetStyle") +StepsTypeX=-20-32 +StepsTypeY=7 +StepsTypeOnCommand=zoom,0.45 + +[StepsDisplayEdit] +Fallback="StepsDisplay" + +[StepsDisplayGameplay] +Fallback="StepsDisplay" + +FrameX=0 +FrameY=0 +FrameOnCommand= +FrameLoadCommand=%function(self,param) end; +FrameSetCommand=%function(self,param) \ + if param.CustomDifficulty then \ + self:diffuse(CustomDifficultyToColor(param.CustomDifficulty)); \ + end; \ +end; +# +ShowTicks=false +NumTicks=10 +MaxTicks=14 +TicksX=0 +TicksY=0 +TicksOnCommand=shadowlength,0; +TicksSetCommand=%function(self,param) end; +# +ShowMeter=true +ZeroMeterString="?" +MeterX=56 +MeterY=0 +MeterOnCommand=shadowlength,1;textglowmode,'TextGlowMode_Inner' +MeterSetCommand=%function(self,param) \ + if param.CustomDifficulty then \ + self:diffuse(CustomDifficultyToColor(param.CustomDifficulty)); \ + self:shadowcolor(CustomDifficultyToDarkColor(param.CustomDifficulty)); \ + end; \ + if param.Meter then \ + if param.Meter >= 100 then \ + self:zoom(0.8); \ + else \ + self:zoom(1); \ + end; \ + end; \ +end; +# +ShowDescription=true DescriptionX=-20 DescriptionY=GetUserPrefB("UserPrefAutoSetStyle") and -5 or 0 DescriptionOnCommand=shadowlength,1;uppercase,true;zoom,0.75;maxwidth,128+8 @@ -485,25 +562,6 @@ StepsTypeX=-20 StepsTypeY=7 StepsTypeOnCommand=zoom,0.45 -[StepsDisplayEdit] -Fallback="StepsDisplay" - -[StepsDisplayGameplay] -Fallback="StepsDisplay" -MeterSetCommand=%function(self,param) \ - if param.CustomDifficulty then \ - self:diffuse(CustomDifficultyToColor(param.CustomDifficulty)); \ - self:shadowcolor(CustomDifficultyToDarkColor(param.CustomDifficulty)); \ - end; \ - if param.Meter then \ - if param.Meter >= 100 then \ - self:zoom(0.8); \ - else \ - self:zoom(1); \ - end; \ - end; \ -end; - [StepsDisplayEvaluation] Fallback="StepsDisplay" @@ -586,10 +644,21 @@ PillTransformFunction=function(self,offsetFromCenter,itemIndex,numItems) \ self:x( ((itemIndex-(numItems/2))*fItemWidth) + ( numItems / 2 ) ); \ self:zoomtowidth(fItemWidth); \ self:diffuseramp(); \ - self:effecttiming(3,0.01875*itemIndex,0,1-(0.01875*itemIndex)); \ + self:effectperiod(4); \ + self:effectoffset((itemIndex-1)/numItems * -1); \ + self:effectcolor2(color("1,1,1,1")); \ + self:effectcolor1(color("0.5,0.5,0.5,1")); \ self:effectclock('beatnooffset'); \ end; -TextureCoordScaleX=1*16 +# PillTransformFunction=function(self,offsetFromCenter,itemIndex,numItems) \ + # local fItemWidth = ( 256 / numItems ) \ + # self:x( ((itemIndex-(numItems/2))*fItemWidth) + ( numItems / 2 ) ); \ + # self:zoomtowidth(fItemWidth); \ + # self:diffuseramp(); \ + # self:effecttiming(1,0.01875*itemIndex,1,1-(0.01875*itemIndex)); \ + # self:effectclock('beatnooffset'); \ +# end; +TextureCoordScaleX=2*16 NumPills=16 AlwaysBounceNormalBar=false @@ -600,6 +669,12 @@ ArtistOnCommand=horizalign,left;shadowlength,1;skewx,-0.2 ArtistPrependString="" AfterSetCommand=%TextBannerAfterSet +[ScreenSystemLayer] +CreditsP1OnCommand=horizalign,left;vertalign,bottom;zoom,0.675;shadowlength,1;strokecolor,Color("Black");diffusebottomedge,PlayerColor(PLAYER_1); +CreditsP1OffCommand= +# +CreditsP2OnCommand=horizalign,right;vertalign,bottom;zoom,0.675;shadowlength,1;strokecolor,Color("Black");diffusebottomedge,PlayerColor(PLAYER_2); +CreditsP2OffCommand= [ScreenWithMenuElements] WaitForChildrenBeforeTweening=true @@ -622,13 +697,13 @@ FooterOffCommand= ShowHelp=true HelpX=SCREEN_CENTER_X HelpY=IsArcade() and SCREEN_BOTTOM-16 or SCREEN_BOTTOM-16 -HelpOnCommand=SetSecsBetweenSwitches,4;shadowlength,0;strokecolor,Color("Outline");draworder,105;zoomy,0;linear,0.175;zoom,1*0.75;maxwidth,(SCREEN_WIDTH-64)/0.75;diffuseshift;effectcolor1,color("0.5,0.5,0.5,1"); +HelpOnCommand=SetSecsBetweenSwitches,4;shadowlength,1;strokecolor,Color("Black");draworder,105;zoomy,0;linear,0.175;zoom,1*0.675;maxwidth,(640*0.75)/0.5;diffuseshift;effectcolor1,color("0.5,0.5,0.5,1"); HelpOffCommand=linear,0.175;zoomy,0 AlternateHelpDisplayX=SCREEN_CENTER_X -AlternateHelpDisplayY=SCREEN_BOTTOM-16 +AlternateHelpDisplayY=IsArcade() and SCREEN_BOTTOM-16 or SCREEN_BOTTOM-16 # AlternateHelpDisplayOnCommand=draworder,105; -AlternateHelpDisplayOnCommand=SetSecsBetweenSwitches,4;shadowlength,0;strokecolor,Color("Outline");draworder,105;zoomy,0;linear,0.175;zoom,1*0.75;maxwidth,(SCREEN_WIDTH-64)/0.75;diffuseshift;effectcolor1,color("0.5,0.5,0.5,1");;diffusealpha,0 +AlternateHelpDisplayOnCommand=SetSecsBetweenSwitches,4;shadowlength,1;strokecolor,Color("Black");draworder,105;zoomy,0;linear,0.175;zoom,1*0.675;maxwidth,(640*0.75)/0.5;diffuseshift;effectcolor1,color("0.5,0.5,0.5,1");;diffusealpha,0 AlternateHelpDisplayOffCommand=linear,0.175;zoomy,0 TimerX=SCREEN_RIGHT-36-4 @@ -945,7 +1020,7 @@ IconChoiceRaveOffCommand=linear,0.1175;zoomx,0 [ScreenSelectMusic] UsePlayerSelectMenu=false # OptionsMenuAvailable=(getenv(sMode) ~= Oni) -SelectMenuAvailable=false +SelectMenuAvailable=true # ModeMenuAvailable=(getenv(sMode) == Normal) # HelpDisplay has things added here to make sure it disappears for another # actor, which we defined in this screens decorations. @@ -978,14 +1053,14 @@ SongTimeOnCommand=zoom,0.75;strokecolor,Color("Outline");shadowlength,1 SongTimeOffCommand=bouncebegin,0.15;zoom,0;diffusealpha,0; SongTimeResetCommand=diffuse,Color("White"); SongTimeAutogenCommand=diffuse,Color("Green"); -SongTimeLongCommand=diffusebottomedge,Color("Blue"); -SongTimeMarathonCommand=diffuse,Color("Yellow");diffusebottomedge,Color("Orange"); +SongTimeLongCommand=diffuse,Color("Yellow");diffusebottomedge,Color("Orange"); +SongTimeMarathonCommand=diffuse,Color("Orange");diffusebottomedge,Color("Red"); # ShowSortOrder=true SortOrderX=SCREEN_CENTER_X+128+32 SortOrderY=SCREEN_TOP+24+4 SortOrderOnCommand=draworder,105;strokecolor,Color("Outline");zoom,0.75 -SortOrderSortCommand=finishtweening;zoom,0.75*1.25;diffusebottomedge,Color("Blue");decelerate,0.5;zoom,0.75;diffuse,Color("White"); +SortOrderSortCommand=finishtweening;zoom,0.75*1.25;diffuse,Color("Yellow");diffusebottomedge,Color("Orange");decelerate,0.5;zoom,0.75;diffuse,Color("White"); SortOrderSongChosenCommand=linear,0.25;diffusealpha,0; SortOrderOffCommand=bouncebegin,0.15;zoomy,0; # @@ -1621,21 +1696,35 @@ Summary=true # ShowStageDisplay=false # -SmallBanner1X=SCREEN_CENTER_X -SmallBanner1Y=SCREEN_TOP+60 +SmallBanner1X=SCREEN_CENTER_X-72 +SmallBanner1Y=SCREEN_TOP+100-24 SmallBanner1OnCommand=zoom,0.5 SmallBanner1OffCommand= -SmallBanner2X=SCREEN_CENTER_X -SmallBanner2Y=SCREEN_TOP+120 +SmallBanner2X=SCREEN_CENTER_X-48 +SmallBanner2Y=SCREEN_TOP+100-16 SmallBanner2OnCommand=zoom,0.5 SmallBanner2OffCommand= -SmallBanner3X=SCREEN_CENTER_X -SmallBanner3Y=SCREEN_TOP+180 +SmallBanner3X=SCREEN_CENTER_X-24 +SmallBanner3Y=SCREEN_TOP+100-8 SmallBanner3OnCommand=zoom,0.5 SmallBanner3OffCommand= +SmallBanner4X=SCREEN_CENTER_X+24 +SmallBanner4Y=SCREEN_TOP+100+8 +SmallBanner4OnCommand=zoom,0.5 +SmallBanner4OffCommand= + +SmallBanner5X=SCREEN_CENTER_X+48 +SmallBanner5Y=SCREEN_TOP+100+16 +SmallBanner5OnCommand=zoom,0.5 +SmallBanner5OfCommand= + +SmallBanner6X=SCREEN_CENTER_X+72 +SmallBanner6Y=SCREEN_TOP+100+24 +SmallBanner6OnCommand=zoom,0.5 +SmallBanner6OffCommand= # arcade stuff [ScreenTitleJoin] HelpText=Screen.String("HelpTextTitleJoin") @@ -1663,7 +1752,8 @@ ScoreP2OnCommand=visible,false StepsDisplayP1OnCommand=zoomy,0;linear,0.3;zoomy,1;sleep,3;smooth,0.5;y,SCREEN_BOTTOM-20;zoomy,0 StepsDisplayP2OnCommand=zoomy,0;linear,0.3;zoomy,1;sleep,3;smooth,0.5;y,SCREEN_BOTTOM-20;zoomy,0 ShowBPMDisplay=false - +# +PlayMusic=false # sm-ssc helper screens [ScreenHowToInstallSongs] Class="ScreenSelectMaster" diff --git a/Themes/default/~res/StepsDisplayMusic frame.psd b/Themes/default/~res/StepsDisplayMusic frame.psd index 23857dec84..a7283a6e9c 100644 Binary files a/Themes/default/~res/StepsDisplayMusic frame.psd and b/Themes/default/~res/StepsDisplayMusic frame.psd differ