diff --git a/Themes/default/BGAnimations/ScreenGameplay overlay/default.lua b/Themes/default/BGAnimations/ScreenGameplay overlay/default.lua index 4842835426..6af2ca06e1 100644 --- a/Themes/default/BGAnimations/ScreenGameplay overlay/default.lua +++ b/Themes/default/BGAnimations/ScreenGameplay overlay/default.lua @@ -11,6 +11,8 @@ local function UpdateTime(self) end; end; end +local function songMeterScale(val) return scale(val,0,1,-380/2,380/2) end + if GAMESTATE:GetCurrentCourse() then if GAMESTATE:GetCurrentCourse():GetCourseType() == "CourseType_Survival" then -- RemainingTime @@ -195,4 +197,34 @@ t.InitCommand=cmd(SetUpdateFunction,UpdateTime); end; t[#t+1] = StandardDecorationFromFileOptional("StageDisplay","StageDisplay"); + t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X+103;y,SCREEN_BOTTOM-25;); + OnCommand=cmd(draworder,DrawOrder.Screen;addy,100;sleep,0.5;decelerate,0.7;addy,-100;); + OffCommand=cmd(sleep,1;decelerate,0.9;addy,100;); + Def.Quad { + InitCommand=cmd(zoomto,264,12); + OnCommand=cmd(diffuse,Color.Black;diffusealpha,0.3;fadeleft,0.05;faderight,0.05); + }; + Def.Quad { + InitCommand=cmd(zoomto,2,8); + OnCommand=cmd(x,songMeterScale(0.25);diffuse,PlayerColor(pn);diffusealpha,0.5); + }; + Def.Quad { + InitCommand=cmd(zoomto,2,8); + OnCommand=cmd(x,songMeterScale(0.5);diffuse,PlayerColor(pn);diffusealpha,0.5); + }; + Def.Quad { + InitCommand=cmd(zoomto,2,8); + OnCommand=cmd(x,songMeterScale(0.75);diffuse,PlayerColor(pn);diffusealpha,0.5); + }; + Def.SongMeterDisplay { + StreamWidth=260; + Stream=LoadActor( THEME:GetPathG( 'SongMeterDisplay', 'stream') )..{ + InitCommand=cmd(diffuse,Color.White;diffusealpha,0.4;blend,Blend.Add;); + }; + Tip=LoadActor( THEME:GetPathG( 'SongMeterDisplay', 'tip')) .. { + InitCommand=cmd(visible,false); + }; + }; + }; return t diff --git a/Themes/default/BGAnimations/ScreenMapControllers background.lua b/Themes/default/BGAnimations/ScreenMapControllers background.lua new file mode 100644 index 0000000000..3b20fc2c68 --- /dev/null +++ b/Themes/default/BGAnimations/ScreenMapControllers background.lua @@ -0,0 +1,16 @@ +local t = Def.ActorFrame {}; + +t[#t+1] = LoadActor(THEME:GetPathG("common bg", "base")) .. { + InitCommand=cmd(Center;zoomto,SCREEN_WIDTH,SCREEN_HEIGHT) + }; + +-- Overlay +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(Center); + Def.Quad { + InitCommand=cmd(scaletoclipped,SCREEN_WIDTH,SCREEN_HEIGHT); + OnCommand=cmd(diffuse,Color.Black;diffusealpha,0.8); + }; +}; +-- +return t diff --git a/Themes/default/BGAnimations/ScreenSelectProfile overlay.lua b/Themes/default/BGAnimations/ScreenSelectProfile overlay.lua index fbef1f9543..60e616a646 100644 --- a/Themes/default/BGAnimations/ScreenSelectProfile overlay.lua +++ b/Themes/default/BGAnimations/ScreenSelectProfile overlay.lua @@ -12,11 +12,11 @@ function GetLocalProfiles() InitCommand=cmd(zoomto,200,1;y,40/2); OnCommand=cmd(diffuse,Color('Outline');); }; --]] - LoadFont("Common Normal") .. { + LoadFont("Common Condensed") .. { Text=profile:GetDisplayName(); InitCommand=cmd(shadowlength,1;y,-10;zoom,1;ztest,true); }; - LoadFont("Common Normal") .. { + LoadFont("Common Fallback") .. { InitCommand=cmd(shadowlength,1;y,8;zoom,0.5;vertspacing,-8;ztest,true); BeginCommand=function(self) local numSongsPlayed = profile:GetNumTotalSongsPlayed(); @@ -33,7 +33,7 @@ end; function LoadCard(cColor) local t = Def.ActorFrame { Def.Quad { - InitCommand=cmd(zoomto,300,SCREEN_HEIGHT/1.3;diffuse,ColorDarkTone(cColor);diffusealpha,0.6;fadetop,0.3;fadebottom,0.3) + InitCommand=cmd(zoomto,300,SCREEN_HEIGHT/1.3;y,20;diffuse,ColorDarkTone(cColor);diffusealpha,0.8;fadetop,0.2;fadebottom,0.2) } } return t @@ -57,9 +57,9 @@ function LoadPlayerStuff(Player) InitCommand=cmd(zoomto,200,230); OnCommand=cmd(diffuse,Color('Orange');diffusealpha,0.5); }; --]] - LoadFont("Common Normal") .. { + LoadFont("Common Italic Condensed") .. { Text="Press &START; to join."; - InitCommand=cmd(shadowlength,1); + InitCommand=cmd(shadowlength,1;zoom,1.25); OnCommand=cmd(diffuseshift;effectcolor1,Color('White');effectcolor2,color("0.5,0.5,0.5")); }; }; @@ -97,10 +97,9 @@ function LoadPlayerStuff(Player) t[#t+1] = Def.ActorFrame { Name = "EffectFrame"; }; - t[#t+1] = LoadFont("Common Normal") .. { + t[#t+1] = LoadFont("Common Condensed") .. { Name = 'SelectedProfileText'; - --InitCommand=cmd(y,160;shadowlength,1;diffuse,PlayerColor(Player)); - InitCommand=cmd(y,160;shadowlength,1;); + InitCommand=cmd(y,160;shadowlength,1;diffuse,ColorLightTone(PlayerColor(Player));diffusebottomedge,color("#FFFFFF");zoom,1.25); }; return t; diff --git a/Themes/default/BGAnimations/ScreenTitleMenu background/default.lua b/Themes/default/BGAnimations/ScreenTitleMenu background/default.lua index 4cfd7ca273..c70c87fa78 100644 --- a/Themes/default/BGAnimations/ScreenTitleMenu background/default.lua +++ b/Themes/default/BGAnimations/ScreenTitleMenu background/default.lua @@ -1,3 +1,4 @@ +-- You know what, I guess the "fancy UI background" theme option can be put to use. if ThemePrefs.Get("FancyUIBG") then return Def.ActorFrame { LoadActor(THEME:GetPathG("common bg", "base")) .. { diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua index 7215dfc249..a8a5c8345b 100644 --- a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua +++ b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua @@ -1,4 +1,3 @@ --- You know what, I guess the "fancy UI background" theme option can be put to use. if ThemePrefs.Get("FancyUIBG") then return Def.ActorFrame { diff --git a/Themes/default/Graphics/ScreenGameplay StageDisplay.lua b/Themes/default/Graphics/ScreenGameplay StageDisplay.lua index 0232211010..9f7ca71911 100644 --- a/Themes/default/Graphics/ScreenGameplay StageDisplay.lua +++ b/Themes/default/Graphics/ScreenGameplay StageDisplay.lua @@ -3,7 +3,7 @@ local curStageIndex = GAMESTATE:GetCurrentStageIndex() + 1; local playMode = GAMESTATE:GetPlayMode(); local t = Def.ActorFrame { - LoadActor("_stageFrame.png") .. { + LoadActor( THEME:GetPathG("ScreenGameplay", "progress")) .. { OnCommand=cmd(playcommand,"Set"); CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); @@ -17,7 +17,7 @@ local t = Def.ActorFrame { end }; LoadFont("Common Italic Condensed") .. { - InitCommand=cmd(y,-1;uppercase,true;playcommand,"Set"); + InitCommand=cmd(y,-1;x,-143;uppercase,true;horizalign,center;maxwidth,170;playcommand,"Set"); CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); CurrentStepsP1ChangedMessageCommand=cmd(playcommand,"Set"); @@ -47,9 +47,9 @@ local t = Def.ActorFrame { end end; self:zoom(1); - self:diffuse(StageToColor(curStage)):diffusetopedge(ColorLightTone(StageToColor(curStage))); + self:diffuse(StageToColor(curStage)); + self:diffusetopedge(ColorLightTone(StageToColor(curStage))); end; }; }; -return t - +return t \ No newline at end of file diff --git a/Themes/default/Graphics/ScreenGameplay progress.png b/Themes/default/Graphics/ScreenGameplay progress.png new file mode 100644 index 0000000000..a47060fa3d Binary files /dev/null and b/Themes/default/Graphics/ScreenGameplay progress.png differ diff --git a/Themes/default/Graphics/SongMeterDisplay stream.png b/Themes/default/Graphics/SongMeterDisplay stream.png new file mode 100644 index 0000000000..ca0a6a9e75 Binary files /dev/null and b/Themes/default/Graphics/SongMeterDisplay stream.png differ diff --git a/Themes/default/Graphics/SongMeterDisplay tip.png b/Themes/default/Graphics/SongMeterDisplay tip.png new file mode 100644 index 0000000000..5c9c83efcb Binary files /dev/null and b/Themes/default/Graphics/SongMeterDisplay tip.png differ diff --git a/Themes/default/Languages/en.ini b/Themes/default/Languages/en.ini index f583a04db9..63845d7698 100644 --- a/Themes/default/Languages/en.ini +++ b/Themes/default/Languages/en.ini @@ -123,6 +123,9 @@ HeaderText=Evaluation HeaderSubText=Let's see how you did. ExtraUnlocked=Extra Stage Available! +[StageAward] +FullComboW1=Full Flawless Combo!!! + [ScreenEditMenu] HeaderText=Edit Songs diff --git a/Themes/default/metrics.ini b/Themes/default/metrics.ini index 99c6daa439..6daadb253f 100644 --- a/Themes/default/metrics.ini +++ b/Themes/default/metrics.ini @@ -233,10 +233,64 @@ ShowHelp=false [ScreenMapControllers] ShowHeader=false -ShowFooter=false - -DevicesOnCommand=vertalign,top;maxheight,92;zoom,1.0;draworder,5;strokecolor,color("0,0,0,1") -ListHeaderCenterOnCommand=x,SCREEN_CENTER_X;y,-11;zoom,0.7;shadowlength,1;ztest,true +ShowFooter=true +DevicesX=SCREEN_CENTER_X +DevicesY=SCREEN_TOP+8 +DevicesOnCommand=vertalign,top;maxheight,92;zoom,0.75;draworder,5;strokecolor,color("0,0,0,1") +DevicesOffCommand= +# +# The ListHeader parts are the row that the player's cursor starts on with +# the names of the columns. +ListHeaderP1S1Command=x,SCREEN_CENTER_X-270-80 +ListHeaderP1S2Command=x,SCREEN_CENTER_X-195-40 +ListHeaderP1S3Command=x,SCREEN_CENTER_X-120 +ListHeaderP2S1Command=x,SCREEN_CENTER_X+120 +ListHeaderP2S2Command=x,SCREEN_CENTER_X+195+40 +ListHeaderP2S3Command=x,SCREEN_CENTER_X+270+80 +# ListHeaderCenterOnCommand is for the center element of the ListHeader. +ListHeaderCenterOnCommand=x,SCREEN_CENTER_X;y,-6;zoom,0.7;shadowlength,1;ztest,true +# These commands are shared by all the ListHeader parts. +ListHeaderOnCommand=diffuse,color("#808080");shadowlength,0;max_dimension_use_zoom,true;zoom,0.75;maxwidth,130; +ListHeaderGainFocusCommand=diffuse,color("#808080");diffuseshift;effectcolor2,color("#808080");effectcolor1,color("#FFFFFF") +ListHeaderLoseFocusCommand=diffuse,color("#808080");stopeffect +# The positions of the elements showing what is mapped. +MappedToP1S1Command=x,SCREEN_CENTER_X-270-80 +MappedToP1S2Command=x,SCREEN_CENTER_X-195-40 +MappedToP1S3Command=x,SCREEN_CENTER_X-120 +MappedToP2S1Command=x,SCREEN_CENTER_X+120 +MappedToP2S2Command=x,SCREEN_CENTER_X+195+40 +MappedToP2S3Command=x,SCREEN_CENTER_X+270+80 +# These commands are shared between all the elements. +MappedToOnCommand=diffuse,color("#808080");shadowlength,0;zoom,0.75;max_dimension_use_zoom,true;maxwidth,130 +# WaitingCommand is executed when the player hits enter to set a key. +MappedToWaitingCommand=diffuse,color("#FF8080");pulse;effectperiod,0.5;effectmagnitude,0.8,1.3,0 +# MappedInputCommand is executed after the player maps the key. +MappedToMappedInputCommand=diffuse,color("#808080");diffuseshift;effectcolor2,color("#808080");effectcolor1,color("#FFFFFF") +MappedToGainFocusCommand=diffuse,color("#808080");diffuseshift;effectcolor2,color("#808080");effectcolor1,color("#FFFFFF") +MappedToLoseFocusCommand=diffuse,color("#808080");stopeffect +# GainMarkCommand is executed when the player adds the element to the set list. +MappedToGainMarkCommand=textglowmode,'TextGlowMode_Inner';glow,color("#FF00007f") +# LoseMarkCommand is executed when the player removes the element from the set list. +MappedToLoseMarkCommand=textglowmode,'TextGlowMode_Inner';glow,color("#FF000000") +# +# The LineScroller is an ActorScroller that controls the positioning of the +# rows. +LineScrollerOnCommand=%function(self) self:draworder(-1); self:y(64) self:setsecondsperitem(0.1) self:SetTransformFromHeight(36) end +LineScrollerOffCommand= +LineHideCommand=visible,false +LineOnCommand=%function(self) self:y(0); self:visible(true); local LeftToRight = math.mod(self.ItemIndex, 2) == 0 and 1 or -1; self:addx(-SCREEN_WIDTH * LeftToRight); end +LineOffCommand=%function(self) local LeftToRight = math.mod(self.ItemIndex, 2) == 0 and 1 or -1; self:stoptweening() self:accelerate(0.3); self:addx(SCREEN_WIDTH * LeftToRight); self:queuecommand('Hide') end +# +# The "P1 slots" and "P2 slots" labels. Use the entries in en.ini to change text. +LabelP1OnCommand=x,SCREEN_CENTER_X*0.4;zoom,0.7;shadowlength,1 +LabelP1OffCommand=linear,0.5;diffusealpha,0 +LabelP2OnCommand=x,SCREEN_CENTER_X*1.6;zoom,0.7;shadowlength,1 +LabelP2OffCommand=linear,0.5;diffusealpha,0 +# The primary effect of keys on this row. +PrimaryOnCommand=x,SCREEN_CENTER_X;y,-6;zoom,0.7;shadowlength,1;ztest,true +# The secondary effect of keys on this row. +SecondaryOnCommand=x,SCREEN_CENTER_X;y,6;zoom,0.5;shadowlength,1;ztest,true +# 06 # [ScreenWithMenuElements] WaitForChildrenBeforeTweeningOut=true @@ -488,10 +542,9 @@ TitleOnCommand=halign,0;strokecolor,color("#222222FF");shadowlength,1;zoom,0.5 Fallback="ScreenOptionsServiceChild" NextScreen="ScreenOptionsService" PrevScreen="ScreenOptionsService" -LineNames="gNotePos,gScore,gSDisp,TimingDisplay,gOpts,gLongFail,gComboUnderField,FlashyCombo,FancyUIBG,PrefMeter" +LineNames="gNotePos,gScore,TimingDisplay,gOpts,gLongFail,gComboUnderField,FlashyCombo,FancyUIBG,PrefMeter" LinegNotePos="lua,ThemePrefRow('NotePosition')" LinegScore="lua,ThemePrefRow('GameplayShowScore')" -LinegSDisp="lua,ThemePrefRow('GameplayShowStepsDisplay')" LineTimingDisplay="lua,ThemePrefRow('TimingDisplay')" LinegOpts="lua,ThemePrefRow('ShowLotsaOptions')" LinegAuto="lua,ThemePrefRow('AutoSetStyle')"