diff --git a/BackgroundEffects/File1FlashOverlay.lua b/BackgroundEffects/File1FlashOverlay.lua new file mode 100644 index 0000000000..ea88ca18eb --- /dev/null +++ b/BackgroundEffects/File1FlashOverlay.lua @@ -0,0 +1,13 @@ +local Color1 = color(Var "Color1"); +local Color2 = color(Var "Color2"); + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(diffuse,Color1;blend,"BlendMode_Add";x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;linear,1;diffusealpha,0); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); +}; + + +return t; diff --git a/BackgroundEffects/File2Flash.lua b/BackgroundEffects/File2Flash.lua new file mode 100644 index 0000000000..dd98d708ff --- /dev/null +++ b/BackgroundEffects/File2Flash.lua @@ -0,0 +1,20 @@ +local Color1 = color(Var "Color1"); +local Color2 = color(Var "Color2"); + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color1;effectclock,"music"); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); +}; + +if Var("File2") ~= nil then + t[#t+1] = LoadActor(Var("File2")) .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color2;effectclock,"music";linear,1;diffusealpha,0); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); + }; +end; + +return t; diff --git a/BackgroundEffects/File2Normal.lua b/BackgroundEffects/File2Normal.lua new file mode 100644 index 0000000000..318a36bee1 --- /dev/null +++ b/BackgroundEffects/File2Normal.lua @@ -0,0 +1,21 @@ +local Color1 = color(Var "Color1"); +local Color2 = color(Var "Color2"); +local stretchBG = PREFSMAN:GetPreference("StretchBackgrounds") + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color1;effectclock,"music"); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); +}; + +if Var("File2") ~= nil then + t[#t+1] = LoadActor(Var("File2")) .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color1;effectclock,"music"); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); + }; +end; + +return t; diff --git a/BackgroundEffects/OverlayAdd.lua b/BackgroundEffects/OverlayAdd.lua new file mode 100644 index 0000000000..dd918ddda0 --- /dev/null +++ b/BackgroundEffects/OverlayAdd.lua @@ -0,0 +1,11 @@ +local Color1 = color(Var "Color1"); + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(diffuse,Color1;blend,"BlendMode_Add";x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); +}; + +return t; diff --git a/BackgroundEffects/Visualization2File.lua b/BackgroundEffects/Visualization2File.lua new file mode 100644 index 0000000000..927d888b7b --- /dev/null +++ b/BackgroundEffects/Visualization2File.lua @@ -0,0 +1,18 @@ +local Color1 = color(Var "Color1"); +local Color2 = color(Var "Color2"); + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color1;effectclock,"music"); +}; + +if Var("File2") ~= nil then + t[#t+1] = LoadActor(Var("File2")) .. { + OnCommand=cmd(blend,"BlendMode_Add";x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color2;effectclock,"music"); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); + }; +end; + +return t; diff --git a/BackgroundEffects/Visualization2FileFlash.lua b/BackgroundEffects/Visualization2FileFlash.lua new file mode 100644 index 0000000000..9bc9f3e13f --- /dev/null +++ b/BackgroundEffects/Visualization2FileFlash.lua @@ -0,0 +1,20 @@ +local Color1 = color(Var "Color1"); +local Color2 = color(Var "Color2"); + +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(Var "File1") .. { + OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color1;effectclock,"music"); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); +}; + +if Var("File2") ~= nil then + t[#t+1] = LoadActor(Var("File2")) .. { + OnCommand=cmd(blend,"BlendMode_Add";x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scale_or_crop_background;diffuse,Color2;effectclock,"music";linear,1;diffusealpha,0); + GainFocusCommand=cmd(play); + LoseFocusCommand=cmd(pause); + }; +end; + +return t; diff --git a/BackgroundTransitions/CrossFade_Faster.xml b/BackgroundTransitions/CrossFade_Faster.xml new file mode 100644 index 0000000000..1ac7263839 --- /dev/null +++ b/BackgroundTransitions/CrossFade_Faster.xml @@ -0,0 +1,4 @@ + diff --git a/BackgroundTransitions/CrossFade_Fastest.xml b/BackgroundTransitions/CrossFade_Fastest.xml new file mode 100644 index 0000000000..a5ed57d756 --- /dev/null +++ b/BackgroundTransitions/CrossFade_Fastest.xml @@ -0,0 +1,4 @@ + diff --git a/BackgroundTransitions/FadeCenterHorizontal.xml b/BackgroundTransitions/FadeCenterHorizontal.xml new file mode 100644 index 0000000000..3636efcc65 --- /dev/null +++ b/BackgroundTransitions/FadeCenterHorizontal.xml @@ -0,0 +1,4 @@ + diff --git a/BackgroundTransitions/FadeCenterVertical.xml b/BackgroundTransitions/FadeCenterVertical.xml new file mode 100644 index 0000000000..228060773c --- /dev/null +++ b/BackgroundTransitions/FadeCenterVertical.xml @@ -0,0 +1,4 @@ + diff --git a/Themes/new/BGAnimations/ScreenSelectMusic decorations.lua b/Themes/new/BGAnimations/ScreenSelectMusic decorations.lua index f7c1c28553..f0ca39bc2a 100644 --- a/Themes/new/BGAnimations/ScreenSelectMusic decorations.lua +++ b/Themes/new/BGAnimations/ScreenSelectMusic decorations.lua @@ -2,11 +2,34 @@ local t = LoadFallbackB(); -- t[#t+1] = StandardDecorationFromFileOptional("BannerFrame","BannerFrame"); t[#t+1] = StandardDecorationFromFileOptional("BPMDisplay","BPMDisplay"); -t[#t+1] = StandardDecorationFromFileOptional("TimeDisplay","TimeDisplay"); +--~ t[#t+1] = StandardDecorationFromFileOptional("TimeDisplay","TimeDisplay"); t[#t+1] = StandardDecorationFromFileOptional("StageDisplay","StageDisplay"); -t[#t+1] = StandardDecorationFromFileOptional("SortDisplay","SortDisplay"); -t[#t+1] = StandardDecorationFromFileOptional("DifficultyList","DifficultyList"); - +--~ t[#t+1] = StandardDecorationFromFileOptional("SortDisplay","SortDisplay"); +--~ t[#t+1] = StandardDecorationFromFileOptional("DifficultyList","DifficultyList"); +t[#t+1] = Def.ActorFrame { + Def.Quad { + InitCommand=cmd(x,SCREEN_CENTER_X-320+24;y,SCREEN_CENTER_Y-192+16;zoomto,40-4,20;diffuse,PlayerColor(PLAYER_1)); + }; + LoadFont("Common Normal") .. { + Text=ToEnumShortString(PLAYER_1); + InitCommand=cmd(x,SCREEN_CENTER_X-320+24;y,SCREEN_CENTER_Y-192+16;diffuse,ThemeColor.Secondary); + }; + LoadActor(THEME:GetPathG(Var "LoadingScreen", "OptionRows"),PLAYER_1) .. { + InitCommand=cmd(x,SCREEN_CENTER_X-320+24+40;y,SCREEN_CENTER_Y-192+16); + }; +}; +t[#t+1] = Def.ActorFrame { + Def.Quad { + InitCommand=cmd(x,SCREEN_CENTER_X-320+24;y,SCREEN_CENTER_Y-192+16+22;zoomto,40-4,20;diffuse,PlayerColor(PLAYER_2)); + }; + LoadFont("Common Normal") .. { + Text=ToEnumShortString(PLAYER_1); + InitCommand=cmd(x,SCREEN_CENTER_X-320+24;y,SCREEN_CENTER_Y-192+16+22;diffuse,ThemeColor.Secondary); + }; + LoadActor(THEME:GetPathG(Var "LoadingScreen", "OptionRows"),PLAYER_1) .. { + InitCommand=cmd(x,SCREEN_CENTER_X-320+24+40;y,SCREEN_CENTER_Y-192+16+22); + }; +}; -- StepsDisplay creator local function CreateStepsDisplay( _pn ) local function set(self, _pn) @@ -34,10 +57,4 @@ for pn in ivalues(PlayerNumber) do InitCommand=function(self) self:player(pn); self:name(MetricsName); ActorUtil.LoadAllCommandsAndSetXY(self,Var "LoadingScreen"); end; }; end --- Create PaneDisplay for each player -t[#t+1] = StandardDecorationFromFileOptional("PaneDisplay","PaneDisplay"); ---[[ for pn in ivalues(PlayerNumber) do - local MetricsName = "PaneDisplay" .. PlayerNumberToString(pn); - t[#t+1] = StandardDecorationFromFileOptional(MetricsName,"PaneDisplay",PlayerNumber); -end ]] return t; \ No newline at end of file diff --git a/Themes/new/Graphics/ScreenSelectMusic BPMDisplay.lua b/Themes/new/Graphics/ScreenSelectMusic BPMDisplay.lua index 0b34bd35e4..605ca7eb18 100644 --- a/Themes/new/Graphics/ScreenSelectMusic BPMDisplay.lua +++ b/Themes/new/Graphics/ScreenSelectMusic BPMDisplay.lua @@ -33,32 +33,41 @@ return Def.ActorFrame { self:aux(0); self:playcommand( GAMESTATE:GetCurrentSong():GetTimingData():HasBPMChanges() and "MultipleBPM" or "SingleBPM" ); end; - -- BPM Background - Def.Quad { - Name="BPMBackground"; - InitCommand=cmd(zoomto,96,32;diffuse,ThemeColor.Secondary;shadowlength,2;shadowcolor,Color.Alpha(ColorDarkTone(ThemeColor.Primary),0.95)); - }; - -- BPM Multiple Warning - Def.Quad { - Name="BPMFlag"; - InitCommand=cmd(x,32;y,-8;basezoomx,24;basezoomy,4;fadeleft,0.2;faderight,0.2;diffuse,ThemeColor.Primary;thump,1;effectclock,'beatnooffset'); - SingleBPMCommand=cmd(finishtweening;decelerate,0.1;zoom,0;zoomx,8;diffusealpha,0); - MultipleBPMCommand=cmd(finishtweening;smooth,0.05;zoom,1;diffusealpha,1;); - }; -- BPM Label - LoadFont("Common Normal") .. { - Name="BPMLabel"; - Text="BPM"; - InitCommand=cmd(x,-32;y,-8;zoom,0.5); - }; - -- BPM Display + LoadActor(THEME:GetPathB("_frame","3x3"),"rounded black",160,20); + -- BPM Display Low Def.RollingNumbers { - Name="BPMText"; + Name="BPMTextLow"; File=THEME:GetPathF("Common","Normal"); InitCommand=cmd(Load,"RollingNumbersBPMDisplay"); - OnCommand=cmd(horizalign,left;x,-46;y,6;zoom,0.75;maxwidth,92/0.75;); + OnCommand=cmd(horizalign,left;x,-64;maxwidth,92/0.75;); BeginCommand=cmd(playcommand,"Set"); CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + SetCommand=function(self); + Song = GAMESTATE:GetCurrentSong(); + BPMs = Song:GetDisplayBpms() or {0,0}; + -- reset numbers + self:targetnumber( clamp(BPMs[1],0,9999) ); + -- (force once) + if (self:getaux() == 0) then + self:settext(clamp(BPMs[1],0,9999)); + self:aux( 1 ); + end; + end; + }; + LoadFont("Common Normal") .. { + Text="-"; + }; + -- BPM Display High + Def.RollingNumbers { + Name="BPMTextHigh"; + File=THEME:GetPathF("Common","Normal"); + InitCommand=cmd(Load,"RollingNumbersBPMDisplay"); + OnCommand=cmd(horizalign,left;x,8;maxwidth,92/0.75;); + BeginCommand=cmd(playcommand,"Set"); + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + HideCommand=cmd(finishtweening;linear,0.2;diffusealpha,0); + ShowCommand=cmd(finishtweening;decelerate,0.125;diffusealpha,1); SetCommand=function(self) Song = GAMESTATE:GetCurrentSong(); BPMs = Song:GetDisplayBpms() or {0,0}; diff --git a/Themes/new/Graphics/ScreenWithMenuElements StageDisplay.lua b/Themes/new/Graphics/ScreenWithMenuElements StageDisplay.lua index d50a9037c2..e59353e533 100644 --- a/Themes/new/Graphics/ScreenWithMenuElements StageDisplay.lua +++ b/Themes/new/Graphics/ScreenWithMenuElements StageDisplay.lua @@ -8,10 +8,11 @@ local curStageIndex = GAMESTATE:GetCurrentStageIndex(); local t = Def.ActorFrame {}; t[#t+1] = Def.ActorFrame { - LoadActor(THEME:GetPathB("_frame","3x3"),"rounded black",160,20); + LoadActor(THEME:GetPathB("_frame","3x3"),"rounded black",160,20); LoadFont("Common Normal") .. { - Text=StageToLocalizedString( curStage ) .. " Stage (" .. curStageIndex .. ")"; - InitCommand=cmd(zoom,0.75;y,-2;shadowlength,1; + Text=StageToLocalizedString( curStage ) .. " Stage"; +--~ Text=StageToLocalizedString( curStage ) .. " Stage (" .. curStageIndex .. ")"; + InitCommand=cmd(shadowlength,1; diffuse,StageToColor(curStage); diffusetopedge,ColorLightTone(StageToColor(curStage)); -- shadowcolor,ColorDarkTone(StageToColor(curStage)); diff --git a/Themes/new/Sounds/ScreenWithMenuElements music (loop).ogg b/Themes/new/Sounds/ScreenWithMenuElements music (loop).ogg index 57bfd4620b..b119d02958 100644 Binary files a/Themes/new/Sounds/ScreenWithMenuElements music (loop).ogg and b/Themes/new/Sounds/ScreenWithMenuElements music (loop).ogg differ diff --git a/Themes/new/metrics.ini b/Themes/new/metrics.ini index 049bea05cf..a91c13d82a 100644 --- a/Themes/new/metrics.ini +++ b/Themes/new/metrics.ini @@ -34,20 +34,26 @@ StageDisplayOffCommand= MusicWheelX=SCREEN_CENTER_X+180 MusicWheelY=SCREEN_CENTER_Y # -BannerX=SCREEN_CENTER_X-160+32 -BannerY=SCREEN_CENTER_Y-100 +BannerX=SCREEN_CENTER_X-160 +BannerY=SCREEN_CENTER_Y-64-4 BannerOnCommand=draworder,111;scaletoclipped,256,80 BannerOffCommand= # ShowBannerFrame=true BannerFrameX=SCREEN_CENTER_X-128-32 -BannerFrameY=SCREEN_CENTER_Y-96-4 +BannerFrameY=SCREEN_CENTER_Y-64-4 BannerFrameOnCommand=draworder,110 BannerFrameOffCommand= # +ShowStageDisplay=true +StageDisplayX=SCREEN_CENTER_X-128-128+12 +StageDisplayY=SCREEN_CENTER_Y-64-64 +StageDisplayOnCommand=draworder,115;zoom,0.75 +StageDisplayOffCommand= +# ShowBPMDisplay=true -BPMDisplayX=SCREEN_CENTER_X-256 -BPMDisplayY=SCREEN_CENTER_Y-128-40 +BPMDisplayX=SCREEN_CENTER_X-256+12+160 +BPMDisplayY=SCREEN_CENTER_Y-64-64 BPMDisplayOnCommand=draworder,115 BPMDisplayOffCommand= #