diff --git a/Themes/_fallback/Languages/en.ini b/Themes/_fallback/Languages/en.ini index 9695cf0bc8..c9494d248c 100644 --- a/Themes/_fallback/Languages/en.ini +++ b/Themes/_fallback/Languages/en.ini @@ -1350,8 +1350,16 @@ HeaderText=Options HeaderSubText=You can configure the game here [ScreenPackages] +DL @ %d KB/s=DL @ %d KB/s Download cancelled.=Download cancelled. Enter URL=Enter URL +Failed.=Failed. +Failed to connect.=Failed to connect. +File Already Exists=File Already Exists +Header Sent.=Header Sent. +Invalid URL.=Invalid URL. +VisitURL=--Visit URL-- +Waiting for header.=Waiting for header. [ScreenPrompt] OK=OK diff --git a/Themes/_fallback/metrics.ini b/Themes/_fallback/metrics.ini index 74371fa95c..9dd2e84d43 100644 --- a/Themes/_fallback/metrics.ini +++ b/Themes/_fallback/metrics.ini @@ -1322,7 +1322,7 @@ DefaultChoice="1" Choice1="applydefaultoptions;screen,ScreenProfileLoad;text,Game Start" Choice2="screen,ScreenNetworkOptions;text,Play Online" Choice3="screen,ScreenSelectGame;text,Select Game" -Choice4="screen,ScreenOptionsSystemDirection;text,Options" +Choice4="screen,ScreenOptionsService;text,Options" Choice5="screen,ScreenOptionsEdit;text,Edit/Share" Choice6="screen,ScreenJukeboxMenu;text,Jukebox" Choice7="screen,ScreenExit;text,Exit" @@ -1550,8 +1550,8 @@ ShowScroller=true WrapScroller=true ShowIcon=false # -ChoiceNormal="name,Normal;playmode,regular;screen,ScreenGameInformation" -ChoiceExtended="name,Extended;playmode,nonstop;screen,ScreenSelectCourse" +ChoiceNormal="applydefaultoptions;name,Normal;playmode,regular;screen,ScreenGameInformation" +ChoiceExtended="applydefaultoptions;name,Extended;playmode,nonstop;screen,ScreenSelectCourse" [ScreenSelectCharacter] Class="ScreenSelectMaster" diff --git a/Themes/default/BGAnimations/ScreenEvaluation background/default.lua b/Themes/default/BGAnimations/ScreenEvaluation background/default.lua new file mode 100644 index 0000000000..69a3c3e8ab --- /dev/null +++ b/Themes/default/BGAnimations/ScreenEvaluation background/default.lua @@ -0,0 +1,30 @@ +local t = Def.ActorFrame {}; + +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(Center); + Def.Sprite { + OnCommand=function(self) + if GAMESTATE:GetCurrentSong() then + self:LoadBackground( GAMESTATE:GetCurrentSong():GetBackgroundPath() ); + self:scaletoclipped( SCREEN_WIDTH+1,SCREEN_HEIGHT ); + (cmd(fadebottom,0.25;fadetop,0.25;croptop,48/480;cropbottom,48/480))(self); + else + self:visible(false); + end + end; + }; + 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'; + effectcolor2,Color("Black");effectcolor1,Colors.Alpha(Color("Black"),0.45);fadebottom,0.25;fadetop,0.25;croptop,48/480;cropbottom,48/480;diffusealpha,0.345); + }; + LoadActor(THEME:GetPathB("ScreenWithMenuElements","background/_bg top")) .. { + InitCommand=cmd(scaletoclipped,SCREEN_WIDTH+1,SCREEN_HEIGHT); + }; +}; + +return t \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenEvaluation decorations/default.lua b/Themes/default/BGAnimations/ScreenEvaluation decorations/default.lua index 12db6c7c26..f478a6d3c2 100644 --- a/Themes/default/BGAnimations/ScreenEvaluation decorations/default.lua +++ b/Themes/default/BGAnimations/ScreenEvaluation decorations/default.lua @@ -51,4 +51,46 @@ if ShowStandardDecoration("StepsDisplay") then end end +for pn in ivalues(PlayerNumber) do + local MetricsName = "StageAward" .. PlayerNumberToString(pn); + t[#t+1] = LoadActor( THEME:GetPathG(Var "LoadingScreen", "StageAward"), pn ) .. { + InitCommand=function(self) + self:player(pn); + self:name(MetricsName); + ActorUtil.LoadAllCommandsAndSetXY(self,Var "LoadingScreen"); + end; + BeginCommand=cmd(playcommand,"Set"); + SetCommand=function(self) + local tStats = THEME:GetMetric(Var "LoadingScreen", "Summary") and STATSMAN:GetAccumPlayedStageStats() or STATSMAN:GetCurStageStats(); + tStats = tStats:GetPlayerStageStats(pn); + if tStats:GetStageAward() then + self:settext( THEME:GetString( "StageAward", ToEnumShortString( tStats:GetStageAward() ) ) ); + else + self:settext( "" ); + end + end; + }; +end + +for pn in ivalues(PlayerNumber) do + local MetricsName = "PeakComboAward" .. PlayerNumberToString(pn); + t[#t+1] = LoadActor( THEME:GetPathG(Var "LoadingScreen", "PeakComboAward"), pn ) .. { + InitCommand=function(self) + self:player(pn); + self:name(MetricsName); + ActorUtil.LoadAllCommandsAndSetXY(self,Var "LoadingScreen"); + end; + BeginCommand=cmd(playcommand,"Set"); + SetCommand=function(self) + local tStats = THEME:GetMetric(Var "LoadingScreen", "Summary") and STATSMAN:GetAccumPlayedStageStats() or STATSMAN:GetCurStageStats(); + tStats = tStats:GetPlayerStageStats(pn); + if tStats:GetPeakComboAward() then + self:settext( THEME:GetString( "PeakComboAward", ToEnumShortString( tStats:GetPeakComboAward() ) ) ); + else + self:settext( "" ); + end + end; + }; +end + return t \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua b/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua index a20fa5ef87..251dbfa11f 100644 --- a/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua +++ b/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua @@ -6,26 +6,27 @@ local function CreateStops() local fFrameWidth = 380; local fFrameHeight = 8; - if SSC then + -- XXX: doesn't work in course mode -aj + if not GAMESTATE:IsCourseMode() then -- Straight rip off NCRX - local song = GAMESTATE:GetCurrentSong(); + local timingData = song:GetTimingData(); -- if we're using SSC, might as well use the StepsSeconds, which will -- almost always be more proper than a r21'd file. if song then local songLen = song:MusicLengthSeconds(); - local firstBeatSecs = song:GetElapsedTimeFromBeat(song:GetFirstBeat()); - local lastBeatSecs = song:GetElapsedTimeFromBeat(song:GetLastBeat()); + local firstBeatSecs = timingData:GetElapsedTimeFromBeat(song:GetFirstBeat()); + local lastBeatSecs = timingData:GetElapsedTimeFromBeat(song:GetLastBeat()); - local bpms = song:GetTimingData():GetBPMs(); + local bpms = timingData:GetBPMs(); - local stops = song:GetTimingData():GetStops(); + local stops = timingData:GetStops(); for i=1,#stops do local data = split("=",stops[i]); local beat = data[1]; local secs = data[2]; - local beatTime = song:GetElapsedTimeFromBeat(beat); + local beatTime = timingData:GetElapsedTimeFromBeat(beat); stopFrame[#stopFrame+1] = Def.ActorFrame { Def.Quad { @@ -98,15 +99,15 @@ for pn in ivalues(PlayerNumber) do }; Def.Quad { InitCommand=cmd(zoomto,2,8); - OnCommand=cmd(x,scale(0.25,0,1,-380/2,380/2);diffuse,Color("White");diffusealpha,0.5); + OnCommand=cmd(x,scale(0.25,0,1,-380/2,380/2);diffuse,PlayerColor(pn);diffusealpha,0.5); }; Def.Quad { InitCommand=cmd(zoomto,2,8); - OnCommand=cmd(x,scale(0.5,0,1,-380/2,380/2);diffuse,Color("White");diffusealpha,0.5); + OnCommand=cmd(x,scale(0.5,0,1,-380/2,380/2);diffuse,PlayerColor(pn);diffusealpha,0.5); }; Def.Quad { InitCommand=cmd(zoomto,2,8); - OnCommand=cmd(x,scale(0.75,0,1,-380/2,380/2);diffuse,Color("White");diffusealpha,0.5); + OnCommand=cmd(x,scale(0.75,0,1,-380/2,380/2);diffuse,PlayerColor(pn);diffusealpha,0.5); }; Def.SongMeterDisplay { StreamWidth=THEME:GetMetric( MetricsName, 'StreamWidth' ); @@ -117,10 +118,17 @@ for pn in ivalues(PlayerNumber) do }; CreateStops(); }; -end - - - +end; +for pn in ivalues(PlayerNumber) do + local MetricsName = "ToastyDisplay" .. PlayerNumberToString(pn); + t[#t+1] = LoadActor( THEME:GetPathG("Player", 'toasty'), pn ) .. { + InitCommand=function(self) + self:player(pn); + self:name(MetricsName); + ActorUtil.LoadAllCommandsAndSetXY(self,Var "LoadingScreen"); + end; + }; +end; t[#t+1] = StandardDecorationFromFileOptional("BPMDisplay","BPMDisplay"); t[#t+1] = StandardDecorationFromFileOptional("StageDisplay","StageDisplay"); diff --git a/Themes/default/BGAnimations/ScreenGameplay failed/default.lua b/Themes/default/BGAnimations/ScreenGameplay failed/default.lua index 4c2229b858..7982d7254b 100644 --- a/Themes/default/BGAnimations/ScreenGameplay failed/default.lua +++ b/Themes/default/BGAnimations/ScreenGameplay failed/default.lua @@ -1,15 +1,31 @@ -local t = Def.ActorFrame{ - Def.Quad{ +local longFail = GetUserPrefB("UserPrefLongFail"); + +local t = Def.ActorFrame{}; + +if longFail then + t[#t+1] = Def.Quad{ InitCommand=cmd(FullScreen;diffuse,color("1,0,0,0");blend,Blend.Multiply); OnCommand=cmd(decelerate,1.25;diffuse,color("0.75,0,0,0.75");linear,7;diffuse,color("0,0,0,1");sleep,1.25;linear,1;diffuse,color("1,0,0,1");decelerate,2;diffuse,color("0,0,0,1")); }; - Def.Quad{ + t[#t+1] = Def.Quad{ InitCommand=cmd(FullScreen;diffuse,color("1,1,1,1");diffusealpha,0); OnCommand=cmd(finishtweening;diffusealpha,1;decelerate,1.25;diffuse,color("1,0,0,0")); }; - LoadActor(THEME:GetPathS( Var "LoadingScreen", "failed" ) ) .. { + t[#t+1] = LoadActor(THEME:GetPathS( "ScreenGameplayAlternate", "failed" ) ) .. { StartTransitioningCommand=cmd(play); }; -}; +else + t[#t+1] = Def.Quad{ + InitCommand=cmd(FullScreen;diffuse,color("1,0,0,0");blend,Blend.Multiply); + OnCommand=cmd(smooth,1;diffuse,color("0.75,0,0,0.75");decelerate,2;diffuse,color("0,0,0,1")); + }; + t[#t+1] = Def.Quad{ + InitCommand=cmd(FullScreen;diffuse,color("1,1,1,1");diffusealpha,0); + OnCommand=cmd(finishtweening;diffusealpha,1;decelerate,1.25;diffuse,color("1,0,0,0")); + }; + t[#t+1] = LoadActor(THEME:GetPathS( Var "LoadingScreen", "failed" ) ) .. { + StartTransitioningCommand=cmd(play); + }; +end; return t; \ No newline at end of file diff --git a/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua b/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua index dc5ae28f16..429a08eea1 100644 --- a/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua +++ b/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua @@ -84,6 +84,8 @@ if not GAMESTATE:IsCourseMode() then t[#t+1] = StandardDecorationFromFileOptional("NewSong","NewSong") .. { -- ShowCommand=THEME:GetMetric(Var "LoadingScreen", "NewSongShowCommand" ); -- HideCommand=THEME:GetMetric(Var "LoadingScreen", "NewSongHideCommand" ); + InitCommand=cmd(playcommand,"Set"); + BeginCommand=cmd(playcommand,"Set"); CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); SetCommand=function(self) -- local pTargetProfile; diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/_grid.png b/Themes/default/BGAnimations/ScreenWithMenuElements background/_grid.png new file mode 100644 index 0000000000..c2e0a20e6d Binary files /dev/null and b/Themes/default/BGAnimations/ScreenWithMenuElements background/_grid.png differ diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua index 82b17187f1..477fd8eff9 100644 --- a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua +++ b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua @@ -6,6 +6,11 @@ t[#t+1] = Def.ActorFrame { InitCommand=cmd(scaletoclipped,SCREEN_WIDTH+1,SCREEN_HEIGHT); OnCommand=cmd(diffuse,color("#FFCB05");diffusebottomedge,color("#F0BA00")); }; + LoadActor("_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("Orange");diffuseshift;effecttiming,(1/8)*2,0,(7/8)*2,0;effectclock,'beatnooffset'; + effectcolor2,Color("Orange");effectcolor1,Colors.Alpha(Color("Orange"),0.45);fadebottom,0.25;fadetop,0.25;croptop,48/480;cropbottom,48/480); + }; LoadActor("_bg top") .. { InitCommand=cmd(scaletoclipped,SCREEN_WIDTH+1,SCREEN_HEIGHT); }; diff --git a/Themes/default/Graphics/Combo 1000milestone/default.lua b/Themes/default/Graphics/Combo 1000milestone/default.lua index 37cbe300e4..80789ecc72 100644 --- a/Themes/default/Graphics/Combo 1000milestone/default.lua +++ b/Themes/default/Graphics/Combo 1000milestone/default.lua @@ -1,12 +1,12 @@ return Def.ActorFrame { FOV=90; - LoadActor("shot") .. { - InitCommand=cmd(diffusealpha,0;zoom,-2;zoomx,2;blend,'BlendMode_Add'); - MilestoneCommand=cmd(diffusealpha,0.75;rotationz,0;x,0;linear,2.5;diffusealpha,0;rotationz,-360;zoom,-2.5); - }; - LoadActor("shot") .. { +--[[ LoadActor("shot") .. { + InitCommand=cmd(diffusealpha,0;zoom,2;blend,'BlendMode_Add'); + MilestoneCommand=cmd(diffusealpha,0.75;rotationz,0;accelerate,2.5;diffusealpha,0;rotationz,360;zoom,2.5); + }; --]] +--[[ LoadActor("shot") .. { InitCommand=cmd(diffusealpha,0;zoom,2;zoomx,-2;blend,'BlendMode_Add'); MilestoneCommand=cmd(diffusealpha,0.75;rotationz,-360;x,0;linear,2.5;diffusealpha,0;rotationz,0;zoom,2.5); - }; + }; --]] LoadActor(THEME:GetPathG("Combo","100Milestone")); }; diff --git a/Themes/default/Graphics/Player combo/default.lua b/Themes/default/Graphics/Player combo/default.lua index 43c1087e26..2676f80193 100644 --- a/Themes/default/Graphics/Player combo/default.lua +++ b/Themes/default/Graphics/Player combo/default.lua @@ -2,17 +2,23 @@ local c; local player = Var "Player"; local ShowComboAt = THEME:GetMetric("Combo", "ShowComboAt"); local Pulse = THEME:GetMetric("Combo", "PulseCommand"); +local PulseLabel = THEME:GetMetric("Combo", "PulseLabelCommand"); local NumberMinZoom = THEME:GetMetric("Combo", "NumberMinZoom"); local NumberMaxZoom = THEME:GetMetric("Combo", "NumberMaxZoom"); local NumberMaxZoomAt = THEME:GetMetric("Combo", "NumberMaxZoomAt"); +local LabelMinZoom = THEME:GetMetric("Combo", "LabelMinZoom"); +local LabelMaxZoom = THEME:GetMetric("Combo", "LabelMaxZoom"); + local t = Def.ActorFrame { LoadActor(THEME:GetPathG("Combo","100Milestone")) .. { Name="OneHundredMilestone"; + FiftyMilestoneCommand=cmd(playcommand,"Milestone"); }; LoadActor(THEME:GetPathG("Combo","1000Milestone")) .. { Name="OneThousandMilestone"; + ToastyAchievedMessageCommand=cmd(playcommand,"Milestone"); }; LoadFont( "Combo", "numbers" ) .. { Name="Number"; @@ -40,10 +46,12 @@ local t = Def.ActorFrame { return end; --]] TwentyFiveMilestoneCommand=function(self,parent) - (cmd(zoom,1.25;decelerate,1.325;zoom,1))(self); + (cmd(skewx,0.125;decelerate,0.325;skewx,1))(self); end; - ToastyAchievedMessageCommand=function(self,parent) - (cmd(thump,2;effectclock,'beat'))(self); + ToastyAchievedMessageCommand=function(self,params) + if params.PlayerNumber == player then + (cmd(thump,2;effectclock,'beat'))(self); + end; end; ComboCommand=function(self, param) local iCombo = param.Misses or param.Combo; @@ -56,8 +64,10 @@ local t = Def.ActorFrame { local labeltext = ""; if param.Combo then labeltext = "COMBO"; +-- c.Number:playcommand("Reset"); else labeltext = "MISSES"; +-- c.Number:playcommand("Miss"); end c.Label:settext( labeltext ); c.Label:visible(false); @@ -78,13 +88,18 @@ local t = Def.ActorFrame { elseif param.FullComboW3 then c.Number:diffuse(color("#a4ff00")); c.Number:stopeffect(); - else + elseif param.Combo then c.Number:diffuse(color("#ffffff")); c.Number:stopeffect(); + (cmd(diffuse,Color("White");diffusebottomedge,color("0.5,0.5,0.5,1")))(c.Label); + else + c.Number:diffuse(color("#ff0000")); + c.Number:stopeffect(); + (cmd(diffuse,Color("Red");diffusebottomedge,color("0.5,0,0,1")))(c.Label); end -- Pulse Pulse( c.Number, param ); --- Pulse( c.Label, param ); + PulseLabel( c.Label, param ); -- Milestone Logic end; ScoreChangedMessageCommand=function(self,param) diff --git a/Themes/default/Graphics/Player toasty/default.lua b/Themes/default/Graphics/Player toasty/default.lua new file mode 100644 index 0000000000..143f8c5dae --- /dev/null +++ b/Themes/default/Graphics/Player toasty/default.lua @@ -0,0 +1,22 @@ +local Player = ... +assert(Player); +local fWidth = ( GAMESTATE:GetCurrentStyle():GetStyleType() == 'StyleType_OnePlayerTwoSides' ) and 600 or 256+16; +return Def.ActorFrame { + ToastyAchievedMessageCommand=function(self,params) + if params.PlayerNumber == Player then + (cmd(thump,1;effectclock,'beat';effectmagnitude,1,1,1; + effectcolor1,color("1,1.125,1,1");effectcolor2,color("1,1,1,1")))(self); + end + end; + Def.Quad { + InitCommand=cmd(zoomto,fWidth,SCREEN_HEIGHT;diffuse,PlayerColor(Player);diffusealpha,0;fadeleft,32/(256+16);faderight,32/(256+16)); + ToastyAchievedMessageCommand=function(self,params) + if params.PlayerNumber == Player then + (cmd(linear,2.125;diffuse,Colors.Alpha( PlayerColor(Player), 0.345 );glow,color("1,1,1,0.5");decelerate,3;glow,Colors.Alpha( ColorDarkTone( PlayerColor(Player) ), 0 );diffuseramp; + effectcolor1,ColorLightTone( PlayerColor(Player) );effectcolor2,PlayerColor(Player); + effectclock,'beat';effectperiod,2; + ))(self); + end + end; + }; +}; \ No newline at end of file diff --git a/Themes/default/Graphics/ScreenEvaluation PeakComboAward.lua b/Themes/default/Graphics/ScreenEvaluation PeakComboAward.lua new file mode 100644 index 0000000000..3389b963f7 --- /dev/null +++ b/Themes/default/Graphics/ScreenEvaluation PeakComboAward.lua @@ -0,0 +1 @@ +return LoadFont("Common Normal"); \ No newline at end of file diff --git a/Themes/default/Graphics/ScreenEvaluation StageAward.lua b/Themes/default/Graphics/ScreenEvaluation StageAward.lua new file mode 100644 index 0000000000..3389b963f7 --- /dev/null +++ b/Themes/default/Graphics/ScreenEvaluation StageAward.lua @@ -0,0 +1 @@ +return LoadFont("Common Normal"); \ No newline at end of file diff --git a/Themes/default/Graphics/_JudgmentLineLabel/default.lua b/Themes/default/Graphics/_JudgmentLineLabel/default.lua index 64f3b4e8f0..7e3ece00ab 100644 --- a/Themes/default/Graphics/_JudgmentLineLabel/default.lua +++ b/Themes/default/Graphics/_JudgmentLineLabel/default.lua @@ -1,6 +1,15 @@ local jl = Var "JudgmentLine"; return Def.ActorFrame { + Def.Quad { + InitCommand=cmd(horizalign,right;zoomto,256,18); + OnCommand=cmd(diffuse,Color("Black");fadeleft,1); + }; + Def.Quad { + InitCommand=cmd(horizalign,left;zoomto,256,18); + OnCommand=cmd(diffuse,Color("Black");faderight,1); + }; + LoadActor("_frame") .. { InitCommand=cmd(zoomy,0.75;diffuse,JudgmentLineToColor(jl)); }; diff --git a/Themes/default/Languages/en.ini b/Themes/default/Languages/en.ini index 2cb8fc6e2f..f759b42499 100644 --- a/Themes/default/Languages/en.ini +++ b/Themes/default/Languages/en.ini @@ -25,6 +25,8 @@ HelpText=&BACK; Exit &START; Skip [ScreenSelectMusic] HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&AUXWHITE;+[KEY] Sort To [KEY] AlternateHelpText=&SELECT;+&MENULEFT;&MENURIGHT; Change Difficulties &SELECT;+&START; Quick Sort +[ScreenSelectCourse] +HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&UP;&DOWN;&UP;&DOWN; for other course types [StepsListDisplayRow StepsType] Dance_Single=Single Dance_Double=Double @@ -69,8 +71,10 @@ UserPrefGameplayShowScore=Show Score UserPrefGameplayShowStepsDisplay=Show Steps UserPrefShowLotsaOptions=Options Density UserPrefAutoSetStyle=Auto Set Style +UserPrefLongFail=Fail Length [OptionExplanations] UserPrefGameplayShowScore=Show or Hide the score display in gameplay. UserPrefGameplayShowStepsDisplay=Show or Hide the step information display in gameplay. UserPrefShowLotsaOptions=Choose how many lines/rows of options to choose from. &oq;Few&cq; keeps the list to a minimum. &oq;Many&cq; adds various show-off mods. -UserPrefAutoSetStyle=Allow the game to list all one player and two player modes at once instead of one style only. This might require a restart of StepMania\n( or alternatively hit F2! ) \ No newline at end of file +UserPrefAutoSetStyle=Allow the game to list all one player and two player modes at once instead of one style only. This might require a restart of StepMania\n( or alternatively hit F2! ) +UserPrefLongFail=Choose between the original sm-ssc fail (Long) or the new sm-ssc fail (Short). \ No newline at end of file diff --git a/Themes/default/Scripts/03 ProductivityHelpers.lua b/Themes/default/Scripts/03 ProductivityHelpers.lua deleted file mode 100644 index e088a81344..0000000000 --- a/Themes/default/Scripts/03 ProductivityHelpers.lua +++ /dev/null @@ -1,49 +0,0 @@ -function HitCombo() - sGame = GAMESTATE:GetCurrentGame():GetName(); - local Combo = { - dance = 2, - pump = 4, - beat = 2, - kb7 = 2, - para = 2, - }; - return Combo[sGame] -end; - -function MissCombo() - sGame = GAMESTATE:GetCurrentGame():GetName(); - local Combo = { - dance = 2, - pump = 4, - beat = cmd(), - kb7 = cmd(), - para = cmd(), - }; - return Combo[sGame] -end; - -function FailCombo() -- The combo that causes game failure. - sGame = GAMESTATE:GetCurrentGame():GetName(); - local Combo = { - dance = "30", -- ITG/Pump Pro does it this way. - pump = "51", - beat = "-1", - kb7 = "-1", - para = "-1", - }; - return Combo[sGame] -end; - -function HoldJudgmentFail() - if GAMESTATE:GetCurrentGame():GetName() == "pump" then - return cmd(); - else return cmd(finishtweening;shadowlength,0;diffusealpha,1;zoom,1;y,-10;linear,0.8;y,10;sleep,0.5;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0); - end; -end; - -function HoldJudgmentPass() - if GAMESTATE:GetCurrentGame():GetName() == "pump" then - return cmd(); - else return cmd(finishtweening;shadowlength,0;diffusealpha,1;zoom,1.25;linear,0.3;zoomx,1;zoomy,1;sleep,0.5;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0); - end; -end; \ No newline at end of file diff --git a/Themes/default/Scripts/03 ThemePrefs.lua b/Themes/default/Scripts/03 ThemePrefs.lua index b58a4c2c82..8508701277 100644 --- a/Themes/default/Scripts/03 ThemePrefs.lua +++ b/Themes/default/Scripts/03 ThemePrefs.lua @@ -7,13 +7,15 @@ function InitUserPrefs() if GetUserPref("UserPrefGameplayShowScore") == nil then SetUserPref("UserPrefGameplayShowScore", true); end; - if GetUserPrefB("UserPrefShowLotsaOptions") == nil then + if GetUserPrefB("UserPrefShowLotsaOptions") == nil then SetUserPref("UserPrefShowLotsaOptions", true); end; if GetUserPrefB("UserPrefAutoSetStyle") == nil then SetUserPref("UserPrefAutoSetStyle", true); end; - + if GetUserPrefB("UserPrefLongFail") == nil then + SetUserPref("UserPrefLongFail", false); + end; --[[ if GetUserPref("ProTimingP1") == nil then SetUserPref("ProTimingP1", false); end; @@ -69,7 +71,7 @@ end; function UserPrefGameplayShowScore() - local t = { + local t = { Name = "UserPrefGameplayShowScore"; LayoutType = "ShowAllInRow"; SelectType = "SelectOne"; @@ -77,16 +79,16 @@ function UserPrefGameplayShowScore() ExportOnChange = false; Choices = { 'Off','On' }; LoadSelections = function(self, list, pn) - if ReadPrefFromFile("UserPrefGameplayShowScore") ~= nil then - if GetUserPrefB("UserPrefGameplayShowScore") then - list[2] = true; - else - list[1] = true; - end; - else - WritePrefToFile("UserPrefGameplayShowScore",false); + if ReadPrefFromFile("UserPrefGameplayShowScore") ~= nil then + if GetUserPrefB("UserPrefGameplayShowScore") then + list[2] = true; + else + list[1] = true; + end; + else + WritePrefToFile("UserPrefGameplayShowScore",false); list[1] = true; - end; + end; end; SaveSelections = function(self, list, pn) local val; @@ -95,8 +97,8 @@ function UserPrefGameplayShowScore() else val = false; end; - WritePrefToFile("UserPrefGameplayShowScore",val); - MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); + WritePrefToFile("UserPrefGameplayShowScore",val); + MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); end; }; setmetatable( t, t ); @@ -104,7 +106,7 @@ function UserPrefGameplayShowScore() end function UserPrefGameplayShowStepsDisplay() - local t = { + local t = { Name = "UserPrefGameplayShowStepsDisplay"; LayoutType = "ShowAllInRow"; SelectType = "SelectOne"; @@ -112,16 +114,16 @@ function UserPrefGameplayShowStepsDisplay() ExportOnChange = false; Choices = { 'Off','On' }; LoadSelections = function(self, list, pn) - if ReadPrefFromFile("UserPrefGameplayShowStepsDisplay") ~= nil then - if GetUserPrefB("UserPrefGameplayShowStepsDisplay") then - list[2] = true; - else - list[1] = true; - end; - else - WritePrefToFile("UserPrefGameplayShowStepsDisplay",false); + if ReadPrefFromFile("UserPrefGameplayShowStepsDisplay") ~= nil then + if GetUserPrefB("UserPrefGameplayShowStepsDisplay") then + list[2] = true; + else + list[1] = true; + end; + else + WritePrefToFile("UserPrefGameplayShowStepsDisplay",false); list[1] = true; - end; + end; end; SaveSelections = function(self, list, pn) local val; @@ -130,8 +132,8 @@ function UserPrefGameplayShowStepsDisplay() else val = false; end; - WritePrefToFile("UserPrefGameplayShowStepsDisplay",val); - MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); + WritePrefToFile("UserPrefGameplayShowStepsDisplay",val); + MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); end; }; setmetatable( t, t ); @@ -139,7 +141,7 @@ function UserPrefGameplayShowStepsDisplay() end function UserPrefShowLotsaOptions() - local t = { + local t = { Name = "UserPrefShowLotsaOptions"; LayoutType = "ShowAllInRow"; SelectType = "SelectOne"; @@ -165,8 +167,8 @@ function UserPrefShowLotsaOptions() else val = false; end; - WritePrefToFile("UserPrefShowLotsaOptions",val); - MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); + WritePrefToFile("UserPrefShowLotsaOptions",val); + MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); end; }; setmetatable( t, t ); @@ -186,7 +188,7 @@ end end; function UserPrefAutoSetStyle() - local t = { + local t = { Name = "UserPrefAutoSetStyle"; LayoutType = "ShowAllInRow"; SelectType = "SelectOne"; @@ -194,16 +196,16 @@ function UserPrefAutoSetStyle() ExportOnChange = false; Choices = { 'Off','On' }; LoadSelections = function(self, list, pn) - if ReadPrefFromFile("UserPrefAutoSetStyle") ~= nil then - if GetUserPrefB("UserPrefAutoSetStyle") then - list[2] = true; - else - list[1] = true; - end; - else - WritePrefToFile("UserPrefAutoSetStyle",false); + if ReadPrefFromFile("UserPrefAutoSetStyle") ~= nil then + if GetUserPrefB("UserPrefAutoSetStyle") then + list[2] = true; + else + list[1] = true; + end; + else + WritePrefToFile("UserPrefAutoSetStyle",false); list[1] = true; - end; + end; end; SaveSelections = function(self, list, pn) local val; @@ -212,8 +214,44 @@ function UserPrefAutoSetStyle() else val = false; end; - WritePrefToFile("UserPrefAutoSetStyle",val); - MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); + WritePrefToFile("UserPrefAutoSetStyle",val); + MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); + end; + }; + setmetatable( t, t ); + return t; +end + + +function UserPrefLongFail() + local t = { + Name = "UserPrefLongFail"; + LayoutType = "ShowAllInRow"; + SelectType = "SelectOne"; + OneChoiceForAllPlayers = true; + ExportOnChange = false; + Choices = { 'Short','Long' }; + LoadSelections = function(self, list, pn) + if ReadPrefFromFile("UserPrefLongFail") ~= nil then + if GetUserPrefB("UserPrefLongFail") then + list[2] = true; + else + list[1] = true; + end; + else + WritePrefToFile("UserPrefLongFail",false); + list[1] = true; + end; + end; + SaveSelections = function(self, list, pn) + local val; + if list[2] then + val = true; + else + val = false; + end; + WritePrefToFile("UserPrefLongFail",val); + MESSAGEMAN:Broadcast("PrferenceSet", { Message == "Set Preference" } ); end; }; setmetatable( t, t ); diff --git a/Themes/default/Sounds/ScreenGameplay failed.wav b/Themes/default/Sounds/ScreenGameplay failed.wav new file mode 100644 index 0000000000..d1ef773258 Binary files /dev/null and b/Themes/default/Sounds/ScreenGameplay failed.wav differ diff --git a/Themes/default/Sounds/ScreenGameplay failed.mp3 b/Themes/default/Sounds/ScreenGameplayAlternate failed.mp3 similarity index 100% rename from Themes/default/Sounds/ScreenGameplay failed.mp3 rename to Themes/default/Sounds/ScreenGameplayAlternate failed.mp3 diff --git a/Themes/default/metrics.ini b/Themes/default/metrics.ini index 566ed8f657..920923896f 100644 --- a/Themes/default/metrics.ini +++ b/Themes/default/metrics.ini @@ -36,10 +36,13 @@ ShowComboAt=2 NumberMinZoom=0.8 NumberMaxZoom=1 NumberMaxZoomAt=100 +LabelMinZoom=0.75*0.5 +LabelMaxZoom=0.75*0.8 PulseCommand=%function(self,param) self:stoptweening(); self:zoom(1.125*param.Zoom); self:linear(0.05); self:zoom(param.Zoom); end -NumberOnCommand=y,240-216-2;shadowlength,1;horizalign,right;vertalign,bottom; -LabelOnCommand=x,6;y,22;shadowlength,1;horizalign,left;vertalign,bottom +PulseLabelCommand=%function(self,param) self:stoptweening(); self:zoom(1.075*param.Zoom); self:linear(0.05); self:zoom(param.Zoom); end +NumberOnCommand=y,240-216-1.5;shadowlength,1;horizalign,right;vertalign,bottom; +LabelOnCommand=x,6;y,22.5;shadowlength,1;zoom,0.75;diffusebottomedge,color("0.75,0.75,0.75,1");horizalign,left;vertalign,bottom [FadingBanner] BannerOnCommand= @@ -553,7 +556,7 @@ LineHighlightChangeToExitCommand=linear,0.1;diffuse,Color("Red");diffuseramp;eff # Effect,11="mod,bumpy;name,Bumpy" # Effect,12="mod,beat;name,Beat" -XXX: what of hiddenoffset and suddenoffset? +# XXX: what of hiddenoffset and suddenoffset? # Appearance="5;selectmultiple" # Appearance,1="mod,hidden;name,Hidden" # Appearance,2="mod,sudden;name,Sudden" @@ -635,16 +638,25 @@ ItemsLongRowSharedX=SCREEN_CENTER_X [ScreenOptionsTheme] Fallback="ScreenOptionsServiceChild" -LineNames="gScore,gSDisp,gOpts" +LineNames="gScore,gSDisp,gOpts,gLongFail" #,gAuto LinegScore="lua,UserPrefGameplayShowScore()" LinegSDisp="lua,UserPrefGameplayShowStepsDisplay()" LinegOpts="lua,UserPrefShowLotsaOptions()" LinegAuto="lua,UserPrefAutoSetStyle()" +LinegLongFail="lua,UserPrefLongFail()" + +[ScreenOptionsSystemDirection] +LineNames="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,LF,17,18,19,20,21,22" +LineLF="lua,UserPrefLongFail()" [ScreenOptionsService] ShowHeader=false +# ScreenOptionsSystemDirection +LineNames="SD,1,2,13,3,10,11,4,12,6,5,Theme,8,9" +LineSD="gamecommand;screen,ScreenOptionsSystemDirection;name,System Direction" + NumRowsShown=14 RowPositionTransformFunction=function(self,offsetFromCenter,itemIndex,numItems) self:y(SCREEN_CENTER_Y-170+24*offsetFromCenter) end @@ -812,8 +824,8 @@ ChoiceNames="Normal,Extended" # PerChoiceIconElement=false # todo: re-implement ScreenGameInformation -ChoiceNormal="name,Normal;playmode,regular;screen,ScreenSelectMusic" -ChoiceExtended="name,Extended;playmode,nonstop;screen,ScreenSelectCourse" +ChoiceNormal="applydefaultoptions;name,Normal;playmode,regular;screen,ScreenSelectMusic" +ChoiceExtended="applydefaultoptions;name,Extended;playmode,nonstop;screen,ScreenSelectCourse" #~ ChoiceExtended="name,Extended;playmode,nonstop;sort,AllCourses;screen,ScreenSelectCourse" # ShowScroller=false @@ -875,6 +887,8 @@ HelpSelectMenuOpenedMessageCommand=stoptweening;decelerate,0.125;diffusealpha,0; HelpSelectMenuClosedMessageCommand=stoptweening;accelerate,0.0725;diffusealpha,1; # Clone everything from HelpDisplay: we're lazy ShowAlternateHelpDisplay=true +# AlternateHelpDisplaySelectMenuOpenedMessageCommand=stoptweening;y,SCREEN_BOTTOM-16;accelerate,0.0725/2;y,SCREEN_BOTTOM-16-16;diffusealpha,1;decelerate,0.0725/2;y,SCREEN_BOTTOM-16-32; +# AlternateHelpDisplaySelectMenuClosedMessageCommand=stoptweening;y,SCREEN_BOTTOM-16;smooth,0.125;y,SCREEN_BOTTOM-16;diffusealpha,0; AlternateHelpDisplaySelectMenuOpenedMessageCommand=stoptweening;accelerate,0.0725;diffusealpha,1; AlternateHelpDisplaySelectMenuClosedMessageCommand=stoptweening;decelerate,0.125;diffusealpha,0; # @@ -954,6 +968,9 @@ DifficultyListOffCommand=bouncebegin,0.15;zoomx,0; # DifficultyListShowCommand=stoptweening;bounceend,0.135;zoomx,1 DifficultyListHideCommand=stoptweening;bouncebegin,0.135;zoomx,0 +# Shrink the difficultylist for viewing panedisplays; +# DifficultyListSelectMenuOpenedMessageCommand=stoptweening;decelerate,0.125;zoom,0.5 +# DifficultyListSelectMenuClosedMessageCommand=stoptweening;accelerate,0.0725;zoom,1; # ShowCourseContentsList=false CourseContentsListX=SCREEN_CENTER_X-160 @@ -1135,6 +1152,16 @@ LifeP2OnCommand=finishtweening;zoomx,-1;addy,-48;sleep,1.25;bounceend,0.35;addy, #~ LifeP2OnCommand=zoomx,-1;addx,SCREEN_CENTER_X;sleep,1.25;decelerate,0.35*0.25;addx,-SCREEN_CENTER_X*1.5;accelerate,0.35*0.25;addx,SCREEN_CENTER_X*0.25;bounceend,0.35*0.25;addx,SCREEN_CENTER_X*0.25 LifeP2OffCommand= # +ToastyDisplayP1X=(GAMESTATE:GetCurrentStyle():GetStyleType() == 'StyleType_OnePlayerTwoSides' or (PREFSMAN:GetPreference("Center1Player") and GAMESTATE:GetNumPlayersEnabled() == 1)) and SCREEN_CENTER_X or THEME:GetMetric(Var "LoadingScreen","PlayerP1OnePlayerOneSideX") +ToastyDisplayP1Y=SCREEN_CENTER_Y +ToastyDisplayP1OnCommand= +ToastyDisplayP1OffCommand= +# +ToastyDisplayP2X=(GAMESTATE:GetCurrentStyle():GetStyleType() == 'StyleType_OnePlayerTwoSides' or (PREFSMAN:GetPreference("Center1Player") and GAMESTATE:GetNumPlayersEnabled() == 1)) and SCREEN_CENTER_X or THEME:GetMetric(Var "LoadingScreen","PlayerP2OnePlayerOneSideX") +ToastyDisplayP2Y=SCREEN_CENTER_Y +ToastyDisplayP2OnCommand= +ToastyDisplayP2OffCommand= +# SongNumberP1X=THEME:GetMetric(Var "LoadingScreen","PlayerP1OnePlayerOneSideX") - 60 SongNumberP1Y=SCREEN_TOP+24+7 SongNumberP1OnCommand=zoom,0.75;diffuse,PlayerColor(PLAYER_1);strokecolor,BoostColor(PlayerColor(PLAYER_1),0.5) @@ -1243,91 +1270,91 @@ ShowGraphDisplay=true ShowComboGraph=true ShowStepsDisplay=true # -W1NumberP1X=SCREEN_CENTER_X-160 +W1NumberP1X=SCREEN_CENTER_X-160+40 W1NumberP1Y=SCREEN_TOP+160 -W1NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +W1NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 W1NumberP1OffCommand= -W1NumberP2X=SCREEN_CENTER_X+160 +W1NumberP2X=SCREEN_CENTER_X+160-40 W1NumberP2Y=SCREEN_TOP+160 -W1NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +W1NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 W1NumberP2OffCommand= W1LabelX=SCREEN_CENTER_X W1LabelY=SCREEN_TOP+160 W1LabelOnCommand= W1LabelOffCommand= # -W2NumberP1X=SCREEN_CENTER_X-160 +W2NumberP1X=SCREEN_CENTER_X-160+40 W2NumberP1Y=SCREEN_TOP+180 -W2NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +W2NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 W2NumberP1OffCommand= -W2NumberP2X=SCREEN_CENTER_X+160 +W2NumberP2X=SCREEN_CENTER_X+160-40 W2NumberP2Y=SCREEN_TOP+180 -W2NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +W2NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 W2NumberP2OffCommand= W2LabelX=SCREEN_CENTER_X W2LabelY=SCREEN_TOP+180 W2LabelOnCommand= W2LabelOffCommand= # -W3NumberP1X=SCREEN_CENTER_X-160 +W3NumberP1X=SCREEN_CENTER_X-160+40 W3NumberP1Y=SCREEN_TOP+200 -W3NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +W3NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 W3NumberP1OffCommand= W3NumberP2X=SCREEN_CENTER_X+160 W3NumberP2Y=SCREEN_TOP+200 -W3NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +W3NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 W3NumberP2OffCommand= W3LabelX=SCREEN_CENTER_X W3LabelY=SCREEN_TOP+200 W3LabelOnCommand= W3LabelOffCommand= # -W4NumberP1X=SCREEN_CENTER_X-160 +W4NumberP1X=SCREEN_CENTER_X-160+40 W4NumberP1Y=SCREEN_TOP+220 -W4NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +W4NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 W4NumberP1OffCommand= -W4NumberP2X=SCREEN_CENTER_X+160 +W4NumberP2X=SCREEN_CENTER_X+160-40 W4NumberP2Y=SCREEN_TOP+220 -W4NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +W4NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 W4NumberP2OffCommand= W4LabelX=SCREEN_CENTER_X W4LabelY=SCREEN_TOP+220 W4LabelOnCommand= W4LabelOffCommand= # -W5NumberP1X=SCREEN_CENTER_X-160 +W5NumberP1X=SCREEN_CENTER_X-160+40 W5NumberP1Y=SCREEN_TOP+240 -W5NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +W5NumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 W5NumberP1OffCommand= -W5NumberP2X=SCREEN_CENTER_X+160 +W5NumberP2X=SCREEN_CENTER_X+160-40 W5NumberP2Y=SCREEN_TOP+240 -W5NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +W5NumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 W5NumberP2OffCommand= W5LabelX=SCREEN_CENTER_X W5LabelY=SCREEN_TOP+240 W5LabelOnCommand= W5LabelOffCommand= # -MissNumberP1X=SCREEN_CENTER_X-160 +MissNumberP1X=SCREEN_CENTER_X-160+40 MissNumberP1Y=SCREEN_TOP+260 -MissNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +MissNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 MissNumberP1OffCommand= -MissNumberP2X=SCREEN_CENTER_X+160 +MissNumberP2X=SCREEN_CENTER_X+160-40 MissNumberP2Y=SCREEN_TOP+260 -MissNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +MissNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 MissNumberP2OffCommand= MissLabelX=SCREEN_CENTER_X MissLabelY=SCREEN_TOP+260 MissLabelOnCommand= MissLabelOffCommand= # -HeldNumberP1X=SCREEN_CENTER_X-160 +HeldNumberP1X=SCREEN_CENTER_X-160+40 HeldNumberP1Y=SCREEN_TOP+280 -HeldNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +HeldNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 HeldNumberP1OffCommand= -HeldNumberP2X=SCREEN_CENTER_X+160 +HeldNumberP2X=SCREEN_CENTER_X+160-40 HeldNumberP2Y=SCREEN_TOP+280 -HeldNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +HeldNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 HeldNumberP2OffCommand= HeldLabelX=SCREEN_CENTER_X HeldLabelY=SCREEN_TOP+280 @@ -1335,13 +1362,13 @@ HeldLabelOnCommand= HeldLabelOffCommand= # -MaxComboNumberP1X=SCREEN_CENTER_X-160 +MaxComboNumberP1X=SCREEN_CENTER_X-160+40 MaxComboNumberP1Y=SCREEN_TOP+300 -MaxComboNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);shadowlength,1 +MaxComboNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 MaxComboNumberP1OffCommand= -MaxComboNumberP2X=SCREEN_CENTER_X+160 +MaxComboNumberP2X=SCREEN_CENTER_X+160-40 MaxComboNumberP2Y=SCREEN_TOP+300 -MaxComboNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);shadowlength,1 +MaxComboNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 MaxComboNumberP2OffCommand= MaxComboLabelX=SCREEN_CENTER_X MaxComboLabelY=SCREEN_TOP+300 @@ -1355,11 +1382,11 @@ ScoreLabelOffCommand= # ScoreNumberP1X=SCREEN_CENTER_X-160 ScoreNumberP1Y=SCREEN_TOP+330 -ScoreNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);diffusetopedge,BoostColor(PlayerColor(PLAYER_1),1.5);shadowlength,1 +ScoreNumberP1OnCommand=diffuse,PlayerColor(PLAYER_1);diffusetopedge,BoostColor(PlayerColor(PLAYER_1),1.5);strokecolor,ColorDarkTone( PlayerColor(PLAYER_1) );shadowlength,1 ScoreNumberP1OffCommand= ScoreNumberP2X=SCREEN_CENTER_X+160 ScoreNumberP2Y=SCREEN_TOP+330 -ScoreNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);diffusetopedge,BoostColor(PlayerColor(PLAYER_2),1.5);shadowlength,1 +ScoreNumberP2OnCommand=diffuse,PlayerColor(PLAYER_2);diffusetopedge,BoostColor(PlayerColor(PLAYER_2),1.5);strokecolor,ColorDarkTone( PlayerColor(PLAYER_2) );shadowlength,1 ScoreNumberP2OffCommand= # LargeBannerX=SCREEN_CENTER_X @@ -1431,6 +1458,26 @@ ComboGraphP2Y=SCREEN_BOTTOM-100+32-7 ComboGraphP2OnCommand= ComboGraphP2OffCommand= # +StageAwardP1X=SCREEN_CENTER_X-220 +StageAwardP1Y=SCREEN_TOP+130 +StageAwardP1OnCommand=draworder,105;zoom,0.75;diffuse,Color("Yellow");diffusebottomedge,Color("Orange");strokecolor,ColorDarkTone( Color("Orange") );glowshift; +StageAwardP1OffCommand= +# +StageAwardP2X=SCREEN_CENTER_X+220 +StageAwardP2Y=SCREEN_TOP+130 +StageAwardP2OnCommand=draworder,105;zoom,0.75;diffuse,Color("Yellow");diffusebottomedge,Color("Orange");strokecolor,ColorDarkTone( Color("Orange") );glowshift; +StageAwardP2OffCommand= +# +PeakComboAwardP1X=SCREEN_CENTER_X-160 +PeakComboAwardP1Y=SCREEN_TOP+300+10 +PeakComboAwardP1OnCommand=draworder,105;zoom,0.5;diffusebottomedge,Color("Blue");strokecolor,ColorDarkTone( Color("Blue") );glowshift; +PeakComboAwardP1OffCommand= +# +PeakComboAwardP2X=SCREEN_CENTER_X+160 +PeakComboAwardP2Y=SCREEN_TOP+300+10 +PeakComboAwardP2OnCommand=draworder,105;zoom,0.5;diffusebottomedge,Color("Blue");strokecolor,ColorDarkTone( Color("Blue") );glowshift; +PeakComboAwardP2OffCommand= +# ShowStepsDisplayP1=GAMESTATE:IsHumanPlayer(PLAYER_1) StepsDisplayP1X=SCREEN_CENTER_X-160 StepsDisplayP1Y=SCREEN_BOTTOM-50