From ae24ce514c447b9a0474ccc1faff0297d465a377 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Mon, 31 Mar 2008 04:38:13 +0000 Subject: [PATCH] cleanup, overlay to decorations --- .../banner frame (doubleres).png | Bin .../combo graph empty (doubleres).png | Bin .../combo graph filled (doubleres).png | Bin .../default.lua | 30 +- .../detail frame (doubleres).png | Bin .../difficulty setting bar (doubleres).png | Bin .../grade frame (doubleres).png | Bin .../judge row frame (doubleres).png | Bin .../life filling (doubleres).png} | Bin .../life graph.lua | 42 +- .../LifeGraph p1.png | Bin 322 -> 0 bytes .../ScreenGameplay decorations/bumper.png | Bin 4785 -> 0 bytes .../ScreenGameplay decorations/default.lua | 19 + .../DifficultyList cursor p1 (doubleres).png | Bin .../DifficultyList cursor p2.lua | 0 .../DifficultyList frame p1.png | Bin .../DifficultyList frame p2.png | Bin .../DifficultyList more (doubleres).png | Bin .../DifficultyList pill empty (doublres).png | Bin ...ultyList pill filled color (doubleres).png | Bin ...ltyList pill filled shadow (doubleres).png | Bin .../_CourseEntryDisplay bar.png | Bin .../_autogen.png | Bin .../_balloon long.png | Bin .../_balloon marathon.png | Bin .../_banner frame (doubleres).png | Bin .../_banner mask (doubleres).png | Bin .../_bpm label.lua | 0 .../bpm meter (doubleres).png | Bin .../ScreenSelectMusic decorations/default.lua | 461 ++++++++++++++++ .../difficulties.lua | 44 +- .../icon 2stages (doubleres).png | Bin .../icon 3stages (doubleres).png | Bin .../icon edits (doubleres).png | Bin .../icon rank1 (doubleres).png | Bin .../icon rank2 (doubleres).png | Bin .../icon rank3 (doubleres).png | Bin .../icon training (doubleres).png | Bin .../long balloon (doubleres).png | Bin .../option icon header (doubleres).png | Bin .../star empty (doubleres).png | Bin .../star full (doubleres).png | Bin .../stop icon (doubleres).png | Bin .../wheel cursor glow (doubleres).png | Bin .../wheel cursor normal (doubleres).png | Bin .../ScreenSelectMusic overlay/default.lua | 507 ------------------ .../ScreenSelectMusic underlay/default.lua | 17 - .../default.lua | 16 +- .../default/Fonts/MenuTimer numbers.redir | 2 +- .../ScreenWithMenuElements StageDisplay.redir | 1 + .../Fonts/_euromode stroke 44 [alt] 12x11.png | Bin 21607 -> 0 bytes .../_euromode stroke 44 [main] 16x16.png | Bin 93293 -> 0 bytes .../default/Fonts/_euromode stroke 44.ini | 408 -------------- ... 80 bold [numbers] 4x4 (mipmaps,32bpp).png | Bin 20118 -> 0 bytes ... _venacti 80 bold timer [numbers] 4x4.png} | Bin ...80 bold.ini => _venacti 80 bold timer.ini} | 5 +- .../Graphics/DifficultyDisplay Autogen.png | Bin 0 -> 978 bytes ...ionIconRowGameplay filled (doubleres).png} | Bin .../OptionIconRowGameplay icon empty.redir | 1 + .../ScreenEvaluation StageDisplay.lua | 7 - .../Graphics/ScreenGameplay LeftFrame.redir | 1 + .../Graphics/ScreenGameplay RightFrame.lua | 3 + .../ScreenSelectPlayMode icon/default.lua | 5 +- .../ScreenWithMenuElements StageDisplay.lua | 39 ++ .../default.lua | 11 - .../stage.lua | 31 -- .../ScreenWithMenuElements2 LeftFrame.redir | 1 + .../ScreenWithMenuElements2 RightFrame.lua | 3 + .../default/Graphics/StreamDisplay hot.png | Bin 3180 -> 3733 bytes .../default/Graphics/StreamDisplay normal.png | Bin 3224 -> 3900 bytes .../_bumper (doubleres).png} | Bin .../default/Graphics/_shared menu header.png | Bin 24474 -> 0 bytes .../Graphics/_shared options header.lua | 7 - stepmania/Themes/default/Scripts/Colors.lua | 2 +- .../Themes/default/Scripts/StageMods.lua | 4 +- stepmania/Themes/default/metrics.ini | 39 +- 76 files changed, 634 insertions(+), 1072 deletions(-) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/banner frame (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/combo graph empty (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/combo graph filled (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/default.lua (97%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/detail frame (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/difficulty setting bar (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/grade frame (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/judge row frame (doubleres).png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay/life graph (doubleres).png => ScreenEvaluationStage decorations/life filling (doubleres).png} (100%) rename stepmania/Themes/default/BGAnimations/{ScreenEvaluationStage overlay => ScreenEvaluationStage decorations}/life graph.lua (90%) delete mode 100755 stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/LifeGraph p1.png delete mode 100644 stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/bumper.png rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList cursor p1 (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList cursor p2.lua (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList frame p1.png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList frame p2.png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList more (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList pill empty (doublres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList pill filled color (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/DifficultyList pill filled shadow (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_CourseEntryDisplay bar.png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_autogen.png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_balloon long.png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_balloon marathon.png (100%) rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_banner frame (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_banner mask (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/_bpm label.lua (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/bpm meter (doubleres).png (100%) mode change 100755 => 100644 create mode 100644 stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/difficulties.lua (97%) rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon 2stages (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon 3stages (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon edits (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon rank1 (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon rank2 (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon rank3 (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/icon training (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/long balloon (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/option icon header (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/star empty (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/star full (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/stop icon (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/wheel cursor glow (doubleres).png (100%) mode change 100755 => 100644 rename stepmania/Themes/default/BGAnimations/{ScreenSelectMusic overlay => ScreenSelectMusic decorations}/wheel cursor normal (doubleres).png (100%) mode change 100755 => 100644 delete mode 100644 stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/default.lua delete mode 100644 stepmania/Themes/default/BGAnimations/ScreenSelectMusic underlay/default.lua create mode 100644 stepmania/Themes/default/Fonts/ScreenWithMenuElements StageDisplay.redir delete mode 100755 stepmania/Themes/default/Fonts/_euromode stroke 44 [alt] 12x11.png delete mode 100755 stepmania/Themes/default/Fonts/_euromode stroke 44 [main] 16x16.png delete mode 100755 stepmania/Themes/default/Fonts/_euromode stroke 44.ini delete mode 100755 stepmania/Themes/default/Fonts/_venacti 80 bold [numbers] 4x4 (mipmaps,32bpp).png rename stepmania/Themes/default/Fonts/{_venacti 80 bold [numbers] 4x4.png => _venacti 80 bold timer [numbers] 4x4.png} (100%) mode change 100755 => 100644 rename stepmania/Themes/default/Fonts/{_venacti 80 bold.ini => _venacti 80 bold timer.ini} (85%) mode change 100755 => 100644 create mode 100644 stepmania/Themes/default/Graphics/DifficultyDisplay Autogen.png rename stepmania/Themes/default/{BGAnimations/ScreenGameplay decorations/mod bar.png => Graphics/OptionIconRowGameplay filled (doubleres).png} (100%) create mode 100644 stepmania/Themes/default/Graphics/OptionIconRowGameplay icon empty.redir delete mode 100644 stepmania/Themes/default/Graphics/ScreenEvaluation StageDisplay.lua create mode 100644 stepmania/Themes/default/Graphics/ScreenGameplay LeftFrame.redir create mode 100644 stepmania/Themes/default/Graphics/ScreenGameplay RightFrame.lua create mode 100644 stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay.lua delete mode 100644 stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/default.lua delete mode 100644 stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/stage.lua create mode 100644 stepmania/Themes/default/Graphics/ScreenWithMenuElements2 LeftFrame.redir create mode 100644 stepmania/Themes/default/Graphics/ScreenWithMenuElements2 RightFrame.lua rename stepmania/Themes/default/{BGAnimations/ScreenWithMenuElements2 decorations/bumper (doubleres).png => Graphics/_bumper (doubleres).png} (100%) delete mode 100644 stepmania/Themes/default/Graphics/_shared menu header.png delete mode 100644 stepmania/Themes/default/Graphics/_shared options header.lua diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/banner frame (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/banner frame (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/banner frame (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/banner frame (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/combo graph empty (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/combo graph empty (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/combo graph empty (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/combo graph empty (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/combo graph filled (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/combo graph filled (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/combo graph filled (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/combo graph filled (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/default.lua b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/default.lua similarity index 97% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/default.lua rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/default.lua index 8f6c2c5031..f815a7632c 100644 --- a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/default.lua +++ b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/default.lua @@ -1,15 +1,15 @@ -local p1x = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP1X' ) -local p1y = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP1Y' ) -local p2x = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP2X' ) -local p2y = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP2Y' ) -p1y = p1y + 75 -- It starts 75 pixels down from the top of the Bonus frame. -p2y = p2y + 75 - -return Def.ActorFrame { - LoadActor("life graph", PLAYER_1) .. { - InitCommand = cmd(x,p1x;y,p1y); - }; - LoadActor("life graph", PLAYER_2) .. { - InitCommand = cmd(x,p2x;y,p2y); - }; -} +local p1x = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP1X' ) +local p1y = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP1Y' ) +local p2x = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP2X' ) +local p2y = THEME:GetMetric( 'ScreenEvaluationStage', 'BonusFrameP2Y' ) +p1y = p1y + 75 -- It starts 75 pixels down from the top of the Bonus frame. +p2y = p2y + 75 + +return Def.ActorFrame { + LoadActor("life graph", PLAYER_1) .. { + InitCommand = cmd(x,p1x;y,p1y); + }; + LoadActor("life graph", PLAYER_2) .. { + InitCommand = cmd(x,p2x;y,p2y); + }; +} diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/detail frame (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/detail frame (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/detail frame (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/detail frame (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/difficulty setting bar (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/difficulty setting bar (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/difficulty setting bar (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/difficulty setting bar (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/grade frame (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/grade frame (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/grade frame (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/grade frame (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/judge row frame (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/judge row frame (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/judge row frame (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/judge row frame (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/life graph (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/life filling (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/life graph (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/life filling (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/life graph.lua b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/life graph.lua similarity index 90% rename from stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/life graph.lua rename to stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/life graph.lua index 6ed2749459..822c42f1d9 100644 --- a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/life graph.lua +++ b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage decorations/life graph.lua @@ -1,21 +1,21 @@ -local Player = ... -assert( Player ); - -local t = Def.ActorFrame { - Def.GraphDisplay { - OnCommand=function(self) - local Stats = STATSMAN:GetCurStageStats(); - self:LoadFromStats( Stats, Stats:GetPlayerStageStats(Player) ) - end, - Texture = LoadActor("LifeGraph p1") .. { - InitCommand=cmd(ztest,1;diffusealpha,0), - OnCommand=cmd(linear,0.5;diffusealpha,1), - OffCommand=cmd(linear,0.5;diffusealpha,0), - }, - Line = Def.GraphLine { InitCommand=cmd(visible,false) }, - Body = Def.GraphBody { InitCommand=cmd(zwrite,1;blend,"BlendMode_NoEffect") }, - SongBoundary = Def.Actor { InitCommand=cmd(visible,false) }, - Barely = Def.Actor { InitCommand=cmd(visible,false) }, - } -} -return t +local Player = ... +assert( Player ); + +local t = Def.ActorFrame { + Def.GraphDisplay { + OnCommand=function(self) + local Stats = STATSMAN:GetCurStageStats(); + self:LoadFromStats( Stats, Stats:GetPlayerStageStats(Player) ) + end, + Texture = LoadActor("life filling") .. { + InitCommand=cmd(ztest,1;diffusealpha,0), + OnCommand=cmd(linear,0.5;diffusealpha,1), + OffCommand=cmd(linear,0.5;diffusealpha,0), + }, + Line = Def.GraphLine { InitCommand=cmd(visible,false) }, + Body = Def.GraphBody { InitCommand=cmd(zwrite,1;blend,"BlendMode_NoEffect") }, + SongBoundary = Def.Actor { InitCommand=cmd(visible,false) }, + Barely = Def.Actor { InitCommand=cmd(visible,false) }, + } +} +return t diff --git a/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/LifeGraph p1.png b/stepmania/Themes/default/BGAnimations/ScreenEvaluationStage overlay/LifeGraph p1.png deleted file mode 100755 index bc95f06e4ee6140665dab09d5583a80c8daf50f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^3xHUKgAGXXy)%3aq}WS5eO=kFvhXq)@Wkx=J{>5; zS>O>_%)r1c1j3A$?$-SQ3bLd-`Z_W&Z0zU$lgJ9>U-Wcw45_&F_Reu$CPx96i*8zC z`DXufEQGo5$vPP%Sy+Qaj~!&{N(S+^Hav=OSh#6^1-F>`?p>Ea8lI}S%vp0fm8Edg zDs_-Kf%#U=Qr>m(AhPxa$19zA2b7L_Z}9ji8KAFVdQ&MBb@07oWs AMF0Q* diff --git a/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/bumper.png b/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/bumper.png deleted file mode 100644 index 97fc0a1a53425cf04cd97f305638ce7aa47c178a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4785 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 diff --git a/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua b/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua index f3df9e1524..11ebb00ebe 100644 --- a/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua +++ b/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/default.lua @@ -13,5 +13,24 @@ t[#t+1] = LoadActor("_warning") .. { }; t[#t+1] = LoadActor( THEME:GetPathB('','_standard decoration'), "LifeFrame", "LifeFrame" ); t[#t+1] = LoadActor( THEME:GetPathB('','_standard decoration'), "ScoreFrame", "ScoreFrame" ); +t[#t+1] = LoadActor( THEME:GetPathB('','_standard decoration'), "LeftFrame", "LeftFrame" ); +t[#t+1] = LoadActor( THEME:GetPathB('','_standard decoration'), "RightFrame", "RightFrame" ); + + +t[#t+1] = + Def.OptionIconRow { + Condition=GAMESTATE:IsHumanPlayer(PLAYER_1); + InitCommand=cmd(z,SCREEN_CENTER_X-200;y,SCREEN_CENTER_Y;Load,"OptionIconRowGameplay",PLAYER_1); + OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); + OffCommand=cmd(linear,0.5;zoomy,0); + }; +t[#t+1] = + Def.OptionIconRow { + Condition=GAMESTATE:IsHumanPlayer(PLAYER_2); + InitCommand=cmd(z,SCREEN_CENTER_X+200;y,SCREEN_CENTER_Y;Load,"OptionIconRowGameplay",PLAYER_2;); + OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); + OffCommand=cmd(linear,0.5;zoomy,0); + }; + return t; diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList cursor p1 (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList cursor p1 (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList cursor p1 (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList cursor p1 (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList cursor p2.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList cursor p2.lua old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList cursor p2.lua rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList cursor p2.lua diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList frame p1.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList frame p1.png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList frame p1.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList frame p1.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList frame p2.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList frame p2.png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList frame p2.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList frame p2.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList more (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList more (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList more (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList more (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill empty (doublres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill empty (doublres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill empty (doublres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill empty (doublres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill filled color (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill filled color (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill filled color (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill filled color (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill filled shadow (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill filled shadow (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/DifficultyList pill filled shadow (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/DifficultyList pill filled shadow (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_CourseEntryDisplay bar.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_CourseEntryDisplay bar.png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_CourseEntryDisplay bar.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_CourseEntryDisplay bar.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_autogen.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_autogen.png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_autogen.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_autogen.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_balloon long.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_balloon long.png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_balloon long.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_balloon long.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_balloon marathon.png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_balloon marathon.png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_balloon marathon.png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_balloon marathon.png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_banner frame (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_banner frame (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_banner frame (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_banner frame (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_banner mask (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_banner mask (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_banner mask (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_banner mask (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_bpm label.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_bpm label.lua old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/_bpm label.lua rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/_bpm label.lua diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/bpm meter (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/bpm meter (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/bpm meter (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/bpm meter (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua new file mode 100644 index 0000000000..47f67ded0e --- /dev/null +++ b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/default.lua @@ -0,0 +1,461 @@ +local function DifficultyDisplay(pn) + local function set(self, player) + self:SetFromGameState( player ); + end + + local t = Def.DifficultyDisplay { + InitCommand=cmd(Load,"DifficultyDisplay",GAMESTATE:GetPlayerState(pn);); + }; + + if pn == PLAYER_1 then + t.CurrentStepsP1ChangedMessageCommand=function(self) set(self, pn); end; + t.CurrentTrailP1ChangedMessageCommand=function(self) set(self, pn); end; + else + t.CurrentStepsP2ChangedMessageCommand=function(self) set(self, pn); end; + t.CurrentTrailP2ChangedMessageCommand=function(self) set(self, pn); end; + end + + return t; +end + +local function Radar() + local function set(self,player) + local Selection = GAMESTATE:GetCurrentSteps(player) or GAMESTATE:GetCurrentTrail(player) + if not Selection then + self:SetEmpty( player ); + return + end + self:SetFromRadarValues( player, Selection:GetRadarValues(player) ); + + end + + local t = Def.GrooveRadar { + OnCommand=cmd(tweenonscreen); + OffCommand=cmd(tweenoffscreen); + + CurrentStepsP1ChangedMessageCommand=function(self) set(self, PLAYER_1); end; + CurrentStepsP2ChangedMessageCommand=function(self) set(self, PLAYER_2); end; + CurrentTrailP1ChangedMessageCommand=function(self) set(self, PLAYER_1); end; + CurrentTrailP2ChangedMessageCommand=function(self) set(self, PLAYER_2); end; + }; + + return t; +end + +local function OptionsArea(pn) + local t = Def.ActorFrame {}; + t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,-1*THEME:GetMetric("OptionIconRowSelectMusic","SpacingX");y,-1*THEME:GetMetric("OptionIconRowSelectMusic","SpacingY");); + LoadActor( "option icon header" ) .. { + + }; + LoadFont("_terminator two 32" ) .. { + InitCommand=cmd(y,-4;settext,PlayerNumberToLocalizedString(pn);zoom,0.5;zoom,0.5;diffuse,color("#baa200");shadowlength,0;strokecolor,color("#00000000");); + }; + }; + t[#t+1] = Def.OptionIconRow { + InitCommand=cmd(Load,"OptionIconRowSelectMusic",pn;); + OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1;); + OffCommand=cmd(linear,0.5;zoomy,0;); + }; + return t; +end + + +local fallback_screen = THEME:GetMetric(Var 'LoadingScreen','Fallback'); +local element = "decorations"; +local fallback_path = THEME:GetPathB(fallback_screen,element); +--Trace('fallback_path ' .. fallback_path ); + +local t = LoadActor( fallback_path ); +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X+140;y,SCREEN_CENTER_Y-10); + OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); + LoadActor( "_banner mask" ) .. { + InitCommand=cmd(y,-74;zwrite,1;z,1;blend,"BlendMode_NoEffect"); + }; + Def.ActorProxy { + BeginCommand=function(self) local banner = SCREENMAN:GetTopScreen():GetChild('Banner'); self:SetTarget(banner); end; + InitCommand=cmd(y,-74;); + }; + LoadActor( "_banner frame" ) .. { + }; +}; + +t[#t+1] = LoadFont("Common", "normal") .. { + InitCommand=cmd(x,SCREEN_CENTER_X-160;y,SCREEN_CENTER_Y+94;playcommand,"Set"); + OnCommand=cmd(zoom,0.5;shadowlength,2;diffusealpha,0;linear,0.5;diffusealpha,1); + OffCommand=cmd(linear,0.5;diffusealpha,0); + + SetCommand=function(self) + local sText = GAMESTATE:GetSongOptionsString() + sText = string.gsub(sText, ", ", "\n") + self:settext( sText ) + if GAMESTATE:IsAnExtraStage() then + self:diffuseblink() + end + end; + SongOptionsChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X-56;y,SCREEN_CENTER_Y); + LoadActor( "wheel cursor glow" ) .. { + InitCommand=cmd(blend,"BlendMode_Add";); + }; + LoadActor( "wheel cursor normal" ) .. { + + }; +}; + +t[#t+1] = OptionsArea( "PlayerNumber_P1" ) .. { + InitCommand=cmd(x,SCREEN_CENTER_X+56;y,SCREEN_CENTER_Y+136); +}; +t[#t+1] = OptionsArea( "PlayerNumber_P2" ) .. { + InitCommand=cmd(x,SCREEN_CENTER_X+56;y,SCREEN_CENTER_Y+154); +}; + +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X-120;y,SCREEN_CENTER_Y-170); + OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); + LoadActor( THEME:GetPathG("MusicSortDisplay","frame") ) .. { + + }; + LoadFont( "_sf square head bold 28" ) .. { + InitCommand=cmd(zoom,0.5;maxwidth,300;playcommand,"Set";x,10;shadowlength,0;diffuse,color("#fbfb57");strokecolor,color("#696800");); + SetCommand=cmd(settext,string.upper( SortOrderToLocalizedString(GAMESTATE:GetSortOrder()) )); + SortOrderChangedMessageCommand=cmd(playcommand,"Set"); + }; +}; + +t[#t+1] = LoadActor( THEME:GetPathG(Var 'LoadingScreen','options message 1x2') ) .. { + InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;pause); + OnCommand=cmd(hidden,1); + ShowPressStartForOptionsCommand=cmd(hidden,0;setstate,0; + faderight,.3;fadeleft,.3;cropleft,-0.3;cropright,1.3;linear,0.4;cropright,-0.3); + ShowEnteringOptionsCommand=cmd(finishtweening;setstate,1;sleep,0.25;playcommand,"HidePressStartForOptions"); + HidePressStartForOptionsCommand=cmd(linear,0.4;cropleft,1.3); +}; + +t[#t+1] = Def.PaneDisplay { + MetricsGroup="PaneDisplay"; + PlayerNumber=PLAYER_1; + InitCommand=cmd(player,PLAYER_1;playcommand,"Set";x,SCREEN_CENTER_X-180;y,SCREEN_CENTER_Y+194); + + SetCommand=function(self) self:SetFromGameState() end; + CurrentStepsP1ChangedMessageCommand=cmd(playcommand,"Set"); + CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set"); + SortOrderChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = Def.PaneDisplay { + MetricsGroup="PaneDisplay"; + PlayerNumber=PLAYER_2; + InitCommand=cmd(player,PLAYER_2;playcommand,"Set";x,SCREEN_CENTER_X+180;y,SCREEN_CENTER_Y+194); + + SetCommand=function(self) self:SetFromGameState() end; + CurrentStepsP2ChangedMessageCommand=cmd(playcommand,"Set"); + CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set"); + SortOrderChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = Def.BPMDisplay { + File=THEME:GetPathF("BPMDisplay", "bpm"); + Name="BPMDisplay"; + InitCommand=cmd(horizalign,right;x,SCREEN_CENTER_X+294;y,SCREEN_CENTER_Y+1;shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");zoom,0.5;); + OnCommand=cmd(stoptweening;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); + SetCommand=function(self) self:SetFromGameState() end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; +t[#t+1] = LoadActor( "_bpm label" ) .. { + InitCommand=cmd(horizalign,left;x,SCREEN_CENTER_X+280;y,SCREEN_CENTER_Y); + OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); +}; +t[#t+1] = LoadActor( "bpm meter" ) .. { + InitCommand=cmd(x,SCREEN_CENTER_X+230;y,SCREEN_CENTER_Y-12); + OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); +}; +t[#t+1] = LoadActor( "stop icon" ) .. { + InitCommand=cmd(x,SCREEN_CENTER_X+296;y,SCREEN_CENTER_Y+6); + OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); + SetCommand=function(self) + local b = false; + local song = GAMESTATE:GetCurrentSong(); + if song then + b = song:GetTimingData():HasStops(); + end; + self:visible( b ); + end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = LoadFont("_regra 32 bold") .. { + InitCommand=cmd(horizalign,left;x,SCREEN_CENTER_X-14;y,SCREEN_CENTER_Y-14;zoom,0.5;settext,"/Senser";shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");maxwidth,360); + SetCommand=function(self) + local s = "---"; + local song = GAMESTATE:GetCurrentSong(); + if song then + local s2 = song:GetDisplayArtist(); + if s2 ~= "" then + s = "/" .. s2; + end; + end; + self:settext( s ); + end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; +t[#t+1] = LoadFont("_regra 32 bold") .. { + InitCommand=cmd(horizalign,right;x,SCREEN_CENTER_X+228;y,SCREEN_CENTER_Y+4;zoom,0.5;settext,"_Hardcore Techno";shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");); + SetCommand=function(self) + local s = "---"; + local song = GAMESTATE:GetCurrentSong(); + if song then + local s2 = song:GetGenre(); + if s2 ~= "" then + s = "_" .. s2; + end; + end; + self:settext( s ); + end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X+26;y,SCREEN_CENTER_Y+5;); + LoadActor("star full") .. { InitCommand=cmd(x,16*-2); }; + LoadActor("star full") .. { InitCommand=cmd(x,16*-1); }; + LoadActor("star full") .. { InitCommand=cmd(x,16*0); }; + LoadActor("star empty") .. { InitCommand=cmd(x,16*1); }; + LoadActor("star empty") .. { InitCommand=cmd(x,16*2); }; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = Def.CourseContentsList { + MaxSongs = 5; + + InitCommand=cmd(x,SCREEN_CENTER_X-160;y,SCREEN_CENTER_Y+96); + OnCommand=cmd(zoomy,0;bounceend,0.3;zoom,1); + OffCommand=cmd(zoomy,1;bouncebegin,0.3;zoomy,0); + ShowCommand=cmd(bouncebegin,0.3;zoomy,1); + HideCommand=cmd(linear,0.3;zoomy,0); + SetCommand=function(self) + self:SetFromGameState(); + self:setsecondsperitem(0.7); + self:SetSecondsPauseBetweenItems(0.7); + self:scrollwithpadding(0, 0); + end; + CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set"); + CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set"); + + Display = Def.ActorFrame { + InitCommand=cmd(setsize,270,44); + + LoadActor("_CourseEntryDisplay bar"); + + Def.TextBanner { + ArtistPrependString="/"; + SetCommand=TextBannerSet; + InitCommand=cmd(SetFromString,"", "", "", "", "", ""); + Title = LoadFont("TextBanner","text") .. { + Name="Title"; + OnCommand=cmd(shadowlength,0); + }; + Subtitle = LoadFont("TextBanner","text") .. { + Name="Subtitle"; + OnCommand=cmd(shadowlength,0); + }; + Artist = LoadFont("TextBanner","text") .. { + Name="Artist"; + OnCommand=cmd(shadowlength,0); + }; + SetSongCommand=function(self, params) + if params.Song then + self:SetFromSong( params.Song ); + self:diffuse( SONGMAN:GetSongColor(params.Song) ); + else + self:SetFromString( "??????????", "??????????", "", "", "", "" ); + self:diffuse( color("#FFFFFF") ); + end + end; + }; + + LoadFont("CourseEntryDisplay","number") .. { + OnCommand=cmd(x,-118;shadowlength,0); + SetSongCommand=function(self, params) self:settext(string.format("%i", params.Number)); end; + }; + + LoadFont("Common","normal") .. { + OnCommand=cmd(x,SCREEN_CENTER_X-200;y,-8;zoom,0.7;shadowlength,0); + DifficultyChangedCommand=function(self, params) + if params.PlayerNumber ~= GAMESTATE:GetMasterPlayerNumber() then return end + self:settext( params.Meter ); + self:diffuse( CourseDifficutlyToColor(params.Difficulty) ); + end; + }; + + LoadFont("Common","normal") .. { + OnCommand=cmd(x,SCREEN_CENTER_X-192;y,SCREEN_CENTER_Y-230;horizalign,right;zoom,0.5;shadowlength,0); + SetSongCommand=function(self, params) self:settext(params.Modifiers); end; + }; + + LoadFont("CourseEntryDisplay","difficulty") .. { + OnCommand=cmd(x,SCREEN_CENTER_X-222;y,-8;shadowlength,0;settext,"1"); + DifficultyChangedCommand=function(self, params) + if params.PlayerNumber ~= GAMESTATE:GetMasterPlayerNumber() then return end + self:diffuse( CourseDifficutlyToColor(params.Difficulty) ); + end; + }; + }; +}; + +t[#t+1] = DifficultyDisplay(PLAYER_1) .. { + BeginCommand=cmd(player,PLAYER_1;x,SCREEN_CENTER_X-254;y,SCREEN_CENTER_Y-20); + OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); + OffCommand=cmd(linear,0.5;zoomy,0); +}; +t[#t+1] = DifficultyDisplay(PLAYER_2) .. { + BeginCommand=cmd(player,PLAYER_2;x,SCREEN_CENTER_X-121;y,SCREEN_CENTER_Y-20); + OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); + OffCommand=cmd(linear,0.5;zoomy,0); +}; + +t[#t+1] = Def.ActorFrame{ + InitCommand=cmd(x,SCREEN_CENTER_X-190;y,SCREEN_CENTER_Y-32); + ShowCommand=cmd(linear,0.2;diffusealpha,1); + HideCommand=cmd(linear,0.2;diffusealpha,0); + + LoadActor("long balloon"); + LoadFont("_terminator two 32")..{ + Name="SongLength"; + InitCommand=cmd(x,-56;y,-10;shadowlength,0;diffuse,color("#E2E2E2");diffusebottomedge,color("#CECECE");strokecolor,color("#00000000")); + SetCommand=function(self) + local Song = GAMESTATE:GetCurrentSong(); + local time = Song:MusicLengthSeconds(); + time = SecondsToMSSMsMs(time); + time = string.sub(time, 0, string.len(time)-3); + self:settext( time ); + end; + }; + LoadFont("_venacti 24")..{ + Name="NumStages"; + InitCommand=cmd(x,32;y,-4;shadowlength,0;zoom,0.5;skewx,-0.2;diffusebottomedge,color("#068EE1FF");strokecolor,color("#FF000000")); + SetCommand=function(self) + local Song = GAMESTATE:GetCurrentSong(); + local postfix = " STAGES"; + if Song:IsLong() then self:settext("2"..postfix); + elseif Song:IsMarathon() then self:settext("3"..postfix); + end; + end; + }; + + SetCommand=function(self) + local Song = GAMESTATE:GetCurrentSong(); + self:playcommand( (Song and (Song:IsLong() or Song:IsMarathon())) and "Show" or "Hide" ); + end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); +}; + +t[#t+1] = LoadFont("_numbers2") .. { + InitCommand=cmd(x,SCREEN_CENTER_X+262;y,SCREEN_CENTER_Y); + OnCommand=cmd(shadowlength,0;addx,-SCREEN_WIDTH;bounceend,0.5;addx,SCREEN_WIDTH); + OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH); + + SetCommand=function(self) + local Course = GAMESTATE:GetCurrentCourse() + if not Course then + self:hidden(1) + return + end + + self:hidden(0) + self:settext( Course:GetEstimatedNumStages() ); + end; + + CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); +}; +--t[#t+1] = LoadActor( "difficulties" ) .. { +-- InitCommand=cmd(x,SCREEN_CENTER_X-35;y,SCREEN_CENTER_Y-134); +-- OnCommand=cmd(finishtweening;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); +-- OffCommand=cmd(finishtweening;bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); +--}; + + +if not GAMESTATE:IsCourseMode() then + t[#t+1] = Def.DifficultyList { + Name="DifficultyList"; + OnCommand=cmd(x,SCREEN_CENTER_X+170;y,SCREEN_CENTER_Y+40); + CursorP1 = Def.ActorFrame { + InitCommand=cmd(x,-150;bounce;effectmagnitude,-5,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); + BeginCommand=cmd(visible,true); + StepsSelectedMessageCommand=function( self, param ) + if param.Player ~= "PlayerNumber_P1" then return end; + self:visible(false); + end; + children={ + LoadActor( "DifficultyList cursor p1" ) .. { + BeginCommand=cmd(player,"PlayerNumber_P1";); + PlayerJoinedMessageCommand=function(self,param ) + if param.Player ~= "PlayerNumber_P1" then return end; + self:visible( true ); + end; + }; + LoadFont( "_terminator two 32" ) .. { + InitCommand=cmd(x,-4;y,-3;settext,"P1";zoom,0.5;diffuse,color("#baa200");shadowlength,0;strokecolor,color("#00000000");); + BeginCommand=cmd(player,"PlayerNumber_P1";); + PlayerJoinedMessageCommand=function(self,param ) + if param.Player ~= "PlayerNumber_P1" then return end; + self:visible( true ); + end; + }; + } + }; + CursorP2 = Def.ActorFrame { + InitCommand=cmd(x,130;bounce;effectmagnitude,5,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); + BeginCommand=cmd(visible,true); + StepsSelectedMessageCommand=function( self, param ) + if param.Player ~= "PlayerNumber_P2" then return end; + self:visible(false); + end; + children={ + LoadActor( "DifficultyList cursor p2" ) .. { + BeginCommand=cmd(player,"PlayerNumber_P2";); + PlayerJoinedMessageCommand=function(self,param ) + if param.Player ~= "PlayerNumber_P2" then return end; + self:visible( true ); + end; + }; + LoadFont( "_terminator two 32" ) .. { + InitCommand=cmd(x,4;y,-3;settext,"P2";zoom,0.5;diffuse,color("#83b767");shadowlength,0;strokecolor,color("#00000000");); + BeginCommand=cmd(player,"PlayerNumber_P2";); + PlayerJoinedMessageCommand=function(self,param ) + if param.Player ~= "PlayerNumber_P2" then return end; + self:visible( true ); + end; + }; + } + }; + CursorP1Frame = LoadActor( "DifficultyList frame p1" ) .. { + InitCommand=cmd(bounce;effectmagnitude,-10,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); + }; + CursorP2Frame = LoadActor( "DifficultyList frame p2" ) .. { + InitCommand=cmd(bounce;effectmagnitude,10,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); + }; + }; +end +-- fade out +t[#t+1] = Def.Quad { + InitCommand=cmd(FullScreen;diffuse,color("#000000");diffusealpha,0); + OffCommand=cmd(linear,0.3;diffusealpha,1); +}; +return t; diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/difficulties.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/difficulties.lua similarity index 97% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/difficulties.lua rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/difficulties.lua index 417ac0638b..22bf96ed96 100644 --- a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/difficulties.lua +++ b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/difficulties.lua @@ -1,22 +1,22 @@ -local t = Def.ActorFrame { -}; -for idx, diff in pairs(Difficulty) do -- 0, Difficulty_Beginner - t[#t+1] = LoadActor( "_Difficulty icons 6x1" ) .. { - InitCommand=cmd(pause;setstate,Difficulty:Reverse()[diff]); - ShowCommand=cmd(stoptweening;linear,0.1;diffusealpha,1); - HideCommand=cmd(stoptweening;linear,0.1;diffusealpha,0); - BeginCommand=cmd(y,16*idx); - - SetCommand=function(self) - local song = GAMESTATE:GetCurrentSong() - local st = GAMESTATE:GetCurrentStyle():GetStepsType() - local bHasStepsTypeAndDifficulty = - song and song:HasStepsTypeAndDifficulty( st, diff ); - - self:playcommand( bHasStepsTypeAndDifficulty and "Show" or "Hide" ); - end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - }; -end - -return t; +local t = Def.ActorFrame { +}; +for idx, diff in pairs(Difficulty) do -- 0, Difficulty_Beginner + t[#t+1] = LoadActor( "_Difficulty icons 6x1" ) .. { + InitCommand=cmd(pause;setstate,Difficulty:Reverse()[diff]); + ShowCommand=cmd(stoptweening;linear,0.1;diffusealpha,1); + HideCommand=cmd(stoptweening;linear,0.1;diffusealpha,0); + BeginCommand=cmd(y,16*idx); + + SetCommand=function(self) + local song = GAMESTATE:GetCurrentSong() + local st = GAMESTATE:GetCurrentStyle():GetStepsType() + local bHasStepsTypeAndDifficulty = + song and song:HasStepsTypeAndDifficulty( st, diff ); + + self:playcommand( bHasStepsTypeAndDifficulty and "Show" or "Hide" ); + end; + CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); + }; +end + +return t; diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon 2stages (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon 2stages (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon 2stages (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon 2stages (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon 3stages (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon 3stages (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon 3stages (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon 3stages (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon edits (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon edits (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon edits (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon edits (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank1 (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank1 (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank1 (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank1 (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank2 (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank2 (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank2 (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank2 (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank3 (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank3 (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon rank3 (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon rank3 (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon training (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon training (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/icon training (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/icon training (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/long balloon (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/long balloon (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/long balloon (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/long balloon (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/option icon header (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/option icon header (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/option icon header (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/option icon header (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/star empty (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/star empty (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/star empty (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/star empty (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/star full (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/star full (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/star full (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/star full (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/stop icon (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/stop icon (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/stop icon (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/stop icon (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/wheel cursor glow (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/wheel cursor glow (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/wheel cursor glow (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/wheel cursor glow (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/wheel cursor normal (doubleres).png b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/wheel cursor normal (doubleres).png old mode 100755 new mode 100644 similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/wheel cursor normal (doubleres).png rename to stepmania/Themes/default/BGAnimations/ScreenSelectMusic decorations/wheel cursor normal (doubleres).png diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/default.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/default.lua deleted file mode 100644 index 176b8a09a9..0000000000 --- a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic overlay/default.lua +++ /dev/null @@ -1,507 +0,0 @@ -local function Autogen(pn) - local function set(self, player) - if player and player ~= pn then return end - local Selection = GAMESTATE:GetCurrentSteps(pn) or GAMESTATE:GetCurrentCourse() - local bIsAutogen = Selection and Selection:IsAutogen(); - self:hidden( bIsAutogen and 0 or 1 ); - end - - local t = LoadActor( "_autogen" ) .. { - OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); - OffCommand=cmd(linear,0.5;zoomy,0); - CurrentStepsP1ChangedMessageCommand=function(self) set(self, PLAYER_1); end; - CurrentStepsP2ChangedMessageCommand=function(self) set(self, PLAYER_2); end; - CurrentCourseChangedMessageCommand=function(self) set(self); end; - }; - return t; -end - -local function DifficultyDisplay(pn) - local function set(self, player) - self:SetFromGameState( player ); - end - - local t = Def.DifficultyDisplay { - InitCommand=cmd(Load,"DifficultyDisplay",GAMESTATE:GetPlayerState(pn);); - }; - - if pn == PLAYER_1 then - t.CurrentStepsP1ChangedMessageCommand=function(self) set(self, pn); end; - t.CurrentTrailP1ChangedMessageCommand=function(self) set(self, pn); end; - else - t.CurrentStepsP2ChangedMessageCommand=function(self) set(self, pn); end; - t.CurrentTrailP2ChangedMessageCommand=function(self) set(self, pn); end; - end - - return t; -end - -local function Radar() - local function set(self,player) - local Selection = GAMESTATE:GetCurrentSteps(player) or GAMESTATE:GetCurrentTrail(player) - if not Selection then - self:SetEmpty( player ); - return - end - self:SetFromRadarValues( player, Selection:GetRadarValues(player) ); - - end - - local t = Def.GrooveRadar { - OnCommand=cmd(tweenonscreen); - OffCommand=cmd(tweenoffscreen); - - CurrentStepsP1ChangedMessageCommand=function(self) set(self, PLAYER_1); end; - CurrentStepsP2ChangedMessageCommand=function(self) set(self, PLAYER_2); end; - CurrentTrailP1ChangedMessageCommand=function(self) set(self, PLAYER_1); end; - CurrentTrailP2ChangedMessageCommand=function(self) set(self, PLAYER_2); end; - }; - - return t; -end - - -local fallback_screen = THEME:GetMetric(Var 'LoadingScreen','Fallback'); -local element = "overlay"; -local fallback_path = THEME:GetPathB(fallback_screen,element); -Trace('fallback_path ' .. fallback_path ); - -local t = Def.ActorFrame { - LoadActor( fallback_path ); - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X+140;y,SCREEN_CENTER_Y-10); - OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - LoadActor( "_banner mask" ) .. { - InitCommand=cmd(y,-74;zwrite,1;z,1;blend,"BlendMode_NoEffect"); - }; - Def.ActorProxy { - BeginCommand=function(self) local banner = SCREENMAN:GetTopScreen():GetChild('Banner'); self:SetTarget(banner); end; - InitCommand=cmd(y,-74;); - }; - LoadActor( "_banner frame" ) .. { - }; - }; - - LoadFont("Common", "normal") .. { - InitCommand=cmd(x,SCREEN_CENTER_X-160;y,SCREEN_CENTER_Y+94;playcommand,"Set"); - OnCommand=cmd(zoom,0.5;shadowlength,2;diffusealpha,0;linear,0.5;diffusealpha,1); - OffCommand=cmd(linear,0.5;diffusealpha,0); - - SetCommand=function(self) - local sText = GAMESTATE:GetSongOptionsString() - sText = string.gsub(sText, ", ", "\n") - self:settext( sText ) - if GAMESTATE:IsAnExtraStage() then - self:diffuseblink() - end - end; - SongOptionsChangedMessageCommand=cmd(playcommand,"Set"); - }; - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X-56;y,SCREEN_CENTER_Y); - LoadActor( "wheel cursor glow" ) .. { - InitCommand=cmd(blend,"BlendMode_Add";); - }; - LoadActor( "wheel cursor normal" ) .. { - - }; - }; - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X+56;y,SCREEN_CENTER_Y+136); - Def.ActorFrame { - InitCommand=cmd(x,-1*THEME:GetMetric("OptionIconRow","SpacingX");y,-1*THEME:GetMetric("OptionIconRow","SpacingY");); - LoadActor( "option icon header" ) .. { - - }; - LoadFont("_terminator two 32" ) .. { - InitCommand=cmd(y,-4;settext,"P1";zoom,0.5;zoom,0.5;diffuse,color("#baa200");shadowlength,0;strokecolor,color("#00000000");); - }; - }; - Def.OptionIconRow { - Condition=GAMESTATE:IsHumanPlayer(PLAYER_1); - InitCommand=cmd(set,PLAYER_1); - OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); - OffCommand=cmd(linear,0.5;zoomy,0); - PlayerOptionsChangedP1MessageCommand=cmd(set,PLAYER_1); - }; - }; - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X+56;y,SCREEN_CENTER_Y+154); - Def.ActorFrame { - InitCommand=cmd(x,-1*THEME:GetMetric("OptionIconRow","SpacingX");y,-1*THEME:GetMetric("OptionIconRow","SpacingY");); - LoadActor( "option icon header" ) .. { - - }; - LoadFont("_terminator two 32") .. { - InitCommand=cmd(y,-4;settext,"P2";zoom,0.5;zoom,0.5;diffuse,color("#83b767");shadowlength,0;strokecolor,color("#00000000");); - }; - }; - Def.OptionIconRow { - Condition=GAMESTATE:IsHumanPlayer(PLAYER_2); - InitCommand=cmd(set,PLAYER_2); - OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); - OffCommand=cmd(linear,0.5;zoomy,0); - PlayerOptionsChangedP2MessageCommand=cmd(set,PLAYER_2); - }; - }; - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X-120;y,SCREEN_CENTER_Y-170); - OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - LoadActor( THEME:GetPathG("MusicSortDisplay","frame") ) .. { - - }; - LoadFont( "_sf square head bold stroke 28" ) .. { - InitCommand=cmd(zoom,0.5;maxwidth,300;playcommand,"Set";x,10;shadowlength,0;diffuse,color("#696800");); - SetCommand=cmd(settext,string.upper( SortOrderToLocalizedString(GAMESTATE:GetSortOrder()) )); - SortOrderChangedMessageCommand=cmd(playcommand,"Set"); - }; - LoadFont( "_sf square head bold 28" ) .. { - InitCommand=cmd(zoom,0.5;maxwidth,300;playcommand,"Set";x,10;shadowlength,0;diffuse,color("#fbfb57");); - SetCommand=cmd(settext,string.upper( SortOrderToLocalizedString(GAMESTATE:GetSortOrder()) )); - SortOrderChangedMessageCommand=cmd(playcommand,"Set"); - }; - }; - - LoadActor( THEME:GetPathG(Var 'LoadingScreen','options message 1x2') ) .. { - InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;pause); - OnCommand=cmd(hidden,1); - ShowPressStartForOptionsCommand=cmd(hidden,0;setstate,0; - faderight,.3;fadeleft,.3;cropleft,-0.3;cropright,1.3;linear,0.4;cropright,-0.3); - ShowEnteringOptionsCommand=cmd(finishtweening;setstate,1;sleep,0.25;playcommand,"HidePressStartForOptions"); - HidePressStartForOptionsCommand=cmd(linear,0.4;cropleft,1.3); - }; - - Def.PaneDisplay { - MetricsGroup="PaneDisplay"; - PlayerNumber=PLAYER_1; - InitCommand=cmd(player,PLAYER_1;playcommand,"Set";x,SCREEN_CENTER_X-180;y,SCREEN_CENTER_Y+194); - - SetCommand=function(self) self:SetFromGameState() end; - CurrentStepsP1ChangedMessageCommand=cmd(playcommand,"Set"); - CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set"); - SortOrderChangedMessageCommand=cmd(playcommand,"Set"); - }; - - Def.PaneDisplay { - MetricsGroup="PaneDisplay"; - PlayerNumber=PLAYER_2; - InitCommand=cmd(player,PLAYER_2;playcommand,"Set";x,SCREEN_CENTER_X+180;y,SCREEN_CENTER_Y+194); - - SetCommand=function(self) self:SetFromGameState() end; - CurrentStepsP2ChangedMessageCommand=cmd(playcommand,"Set"); - CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set"); - SortOrderChangedMessageCommand=cmd(playcommand,"Set"); - }; - - Def.BPMDisplay { - File=THEME:GetPathF("BPMDisplay", "bpm"); - Name="BPMDisplay"; - InitCommand=cmd(horizalign,right;x,SCREEN_CENTER_X+294;y,SCREEN_CENTER_Y+1;shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");zoom,0.5;); - OnCommand=cmd(stoptweening;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - SetCommand=function(self) self:SetFromGameState() end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - LoadActor( "_bpm label" ) .. { - InitCommand=cmd(horizalign,left;x,SCREEN_CENTER_X+280;y,SCREEN_CENTER_Y); - OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - }; - LoadActor( "bpm meter" ) .. { - InitCommand=cmd(x,SCREEN_CENTER_X+230;y,SCREEN_CENTER_Y-12); - OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - }; - LoadActor( "stop icon" ) .. { - InitCommand=cmd(x,SCREEN_CENTER_X+296;y,SCREEN_CENTER_Y+6); - OnCommand=cmd(addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - SetCommand=function(self) - local b = false; - local song = GAMESTATE:GetCurrentSong(); - if song then - b = song:GetTimingData():HasStops(); - end; - self:visible( b ); - end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - - LoadFont("_regra 32 bold") .. { - InitCommand=cmd(horizalign,left;x,SCREEN_CENTER_X-14;y,SCREEN_CENTER_Y-14;zoom,0.5;settext,"/Senser";shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");maxwidth,360); - SetCommand=function(self) - local s = "---"; - local song = GAMESTATE:GetCurrentSong(); - if song then - local s2 = song:GetDisplayArtist(); - if s2 ~= "" then - s = "/" .. s2; - end; - end; - self:settext( s ); - end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - LoadFont("_regra 32 bold") .. { - InitCommand=cmd(horizalign,right;x,SCREEN_CENTER_X+228;y,SCREEN_CENTER_Y+4;zoom,0.5;settext,"_Hardcore Techno";shadowlengthx,0;shadowlengthy,2;shadowcolor,color("#000000");); - SetCommand=function(self) - local s = "---"; - local song = GAMESTATE:GetCurrentSong(); - if song then - local s2 = song:GetGenre(); - if s2 ~= "" then - s = "_" .. s2; - end; - end; - self:settext( s ); - end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - - Def.ActorFrame { - InitCommand=cmd(x,SCREEN_CENTER_X+26;y,SCREEN_CENTER_Y+5;); - LoadActor("star full") .. { InitCommand=cmd(x,16*-2); }; - LoadActor("star full") .. { InitCommand=cmd(x,16*-1); }; - LoadActor("star full") .. { InitCommand=cmd(x,16*0); }; - LoadActor("star empty") .. { InitCommand=cmd(x,16*1); }; - LoadActor("star empty") .. { InitCommand=cmd(x,16*2); }; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - - Def.CourseContentsList { - MaxSongs = 5; - - InitCommand=cmd(x,SCREEN_CENTER_X-160;y,SCREEN_CENTER_Y+96); - OnCommand=cmd(zoomy,0;bounceend,0.3;zoom,1); - OffCommand=cmd(zoomy,1;bouncebegin,0.3;zoomy,0); - ShowCommand=cmd(bouncebegin,0.3;zoomy,1); - HideCommand=cmd(linear,0.3;zoomy,0); - SetCommand=function(self) - self:SetFromGameState(); - self:setsecondsperitem(0.7); - self:SetSecondsPauseBetweenItems(0.7); - self:scrollwithpadding(0, 0); - end; - CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set"); - CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set"); - - Display = Def.ActorFrame { - InitCommand=cmd(setsize,270,44); - - LoadActor("_CourseEntryDisplay bar"); - - Def.TextBanner { - ArtistPrependString="/"; - SetCommand=TextBannerSet; - InitCommand=cmd(LoadFromString,"", "", "", "", "", ""); - Title = LoadFont("TextBanner","text") .. { - Name="Title"; - OnCommand=cmd(shadowlength,0); - }; - Subtitle = LoadFont("TextBanner","text") .. { - Name="Subtitle"; - OnCommand=cmd(shadowlength,0); - }; - Artist = LoadFont("TextBanner","text") .. { - Name="Artist"; - OnCommand=cmd(shadowlength,0); - }; - SetSongCommand=function(self, params) - if params.Song then - self:LoadFromSong( params.Song ); - self:diffuse( SONGMAN:GetSongColor(params.Song) ); - else - self:LoadFromString( "??????????", "??????????", "", "", "", "" ); - self:diffuse( color("#FFFFFF") ); - end - end; - }; - - LoadFont("CourseEntryDisplay","number") .. { - OnCommand=cmd(x,-118;shadowlength,0); - SetSongCommand=function(self, params) self:settext(string.format("%i", params.Number)); end; - }; - - LoadFont("Common","normal") .. { - OnCommand=cmd(x,SCREEN_CENTER_X-200;y,-8;zoom,0.7;shadowlength,0); - DifficultyChangedCommand=function(self, params) - if params.PlayerNumber ~= GAMESTATE:GetMasterPlayerNumber() then return end - self:settext( params.Meter ); - self:diffuse( CourseDifficutlyToColor(params.Difficulty) ); - end; - }; - - LoadFont("Common","normal") .. { - OnCommand=cmd(x,SCREEN_CENTER_X-192;y,SCREEN_CENTER_Y-230;horizalign,right;zoom,0.5;shadowlength,0); - SetSongCommand=function(self, params) self:settext(params.Modifiers); end; - }; - - LoadFont("CourseEntryDisplay","difficulty") .. { - OnCommand=cmd(x,SCREEN_CENTER_X-222;y,-8;shadowlength,0;settext,"1"); - DifficultyChangedCommand=function(self, params) - if params.PlayerNumber ~= GAMESTATE:GetMasterPlayerNumber() then return end - self:diffuse( CourseDifficutlyToColor(params.Difficulty) ); - end; - }; - }; - }; - - Autogen(PLAYER_1) .. { - BeginCommand=cmd(x,SCREEN_CENTER_X-290;y,SCREEN_CENTER_Y-15); - }; - Autogen(PLAYER_2) .. { - BeginCommand=cmd(x,SCREEN_CENTER_X-68;y,SCREEN_CENTER_Y-15); - }; - - DifficultyDisplay(PLAYER_1) .. { - BeginCommand=cmd(player,PLAYER_1;x,SCREEN_CENTER_X-254;y,SCREEN_CENTER_Y-20); - OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); - OffCommand=cmd(linear,0.5;zoomy,0); - }; - DifficultyDisplay(PLAYER_2) .. { - BeginCommand=cmd(player,PLAYER_2;x,SCREEN_CENTER_X-121;y,SCREEN_CENTER_Y-20); - OnCommand=cmd(zoomy,0;linear,0.5;zoomy,1); - OffCommand=cmd(linear,0.5;zoomy,0); - }; - - Def.ActorFrame{ - InitCommand=cmd(x,SCREEN_CENTER_X-190;y,SCREEN_CENTER_Y-32); - ShowCommand=cmd(linear,0.2;diffusealpha,1); - HideCommand=cmd(linear,0.2;diffusealpha,0); - - LoadActor("long balloon"); - LoadFont("_terminator two 32")..{ - Name="SongLength"; - InitCommand=cmd(x,-56;y,-10;shadowlength,0;diffuse,color("#E2E2E2");diffusebottomedge,color("#CECECE");strokecolor,color("#00000000")); - SetCommand=function(self) - local Song = GAMESTATE:GetCurrentSong(); - local time = Song:MusicLengthSeconds(); - time = SecondsToMSSMsMs(time); - time = string.sub(time, 0, string.len(time)-3); - self:settext( time ); - end; - }; - LoadFont("_venacti 24")..{ - Name="NumStages"; - InitCommand=cmd(x,32;y,-4;shadowlength,0;zoom,0.5;skewx,-0.2;diffusebottomedge,color("#068EE1FF");strokecolor,color("#FF000000")); - SetCommand=function(self) - local Song = GAMESTATE:GetCurrentSong(); - local postfix = " STAGES"; - if Song:IsLong() then self:settext("2"..postfix); - elseif Song:IsMarathon() then self:settext("3"..postfix); - end; - end; - }; - - SetCommand=function(self) - local Song = GAMESTATE:GetCurrentSong(); - self:playcommand( (Song and (Song:IsLong() or Song:IsMarathon())) and "Show" or "Hide" ); - end; - CurrentSongChangedMessageCommand=cmd(playcommand,"Set"); - }; - - LoadFont("_numbers2") .. { - InitCommand=cmd(x,SCREEN_CENTER_X+262;y,SCREEN_CENTER_Y); - OnCommand=cmd(shadowlength,0;addx,-SCREEN_WIDTH;bounceend,0.5;addx,SCREEN_WIDTH); - OffCommand=cmd(bouncebegin,0.5;addx,-SCREEN_WIDTH); - - SetCommand=function(self) - local Course = GAMESTATE:GetCurrentCourse() - if not Course then - self:hidden(1) - return - end - - self:hidden(0) - self:settext( Course:GetEstimatedNumStages() ); - end; - - CurrentCourseChangedMessageCommand=cmd(playcommand,"Set"); - }; - --LoadActor( "difficulties" ) .. { - -- InitCommand=cmd(x,SCREEN_CENTER_X-35;y,SCREEN_CENTER_Y-134); - -- OnCommand=cmd(finishtweening;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6); - -- OffCommand=cmd(finishtweening;bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6); - --}; -}; - -if not GAMESTATE:IsCourseMode() then - t[#t+1] = Def.DifficultyList { - Name="DifficultyList"; - OnCommand=cmd(x,SCREEN_CENTER_X+170;y,SCREEN_CENTER_Y+40); - CursorP1 = Def.ActorFrame { - InitCommand=cmd(x,-150;bounce;effectmagnitude,-5,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); - BeginCommand=cmd(visible,true); - StepsSelectedMessageCommand=function( self, param ) - if param.Player ~= "PlayerNumber_P1" then return end; - self:visible(false); - end; - children={ - LoadActor( "DifficultyList cursor p1" ) .. { - BeginCommand=cmd(player,"PlayerNumber_P1";); - PlayerJoinedMessageCommand=function(self,param ) - if param.Player ~= "PlayerNumber_P1" then return end; - self:visible( true ); - end; - }; - LoadFont( "_terminator two 32" ) .. { - InitCommand=cmd(x,-4;y,-3;settext,"P1";zoom,0.5;diffuse,color("#baa200");shadowlength,0;strokecolor,color("#00000000");); - BeginCommand=cmd(player,"PlayerNumber_P1";); - PlayerJoinedMessageCommand=function(self,param ) - if param.Player ~= "PlayerNumber_P1" then return end; - self:visible( true ); - end; - }; - } - }; - CursorP2 = Def.ActorFrame { - InitCommand=cmd(x,130;bounce;effectmagnitude,5,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); - BeginCommand=cmd(visible,true); - StepsSelectedMessageCommand=function( self, param ) - if param.Player ~= "PlayerNumber_P2" then return end; - self:visible(false); - end; - children={ - LoadActor( "DifficultyList cursor p2" ) .. { - BeginCommand=cmd(player,"PlayerNumber_P2";); - PlayerJoinedMessageCommand=function(self,param ) - if param.Player ~= "PlayerNumber_P2" then return end; - self:visible( true ); - end; - }; - LoadFont( "_terminator two 32" ) .. { - InitCommand=cmd(x,4;y,-3;settext,"P2";zoom,0.5;diffuse,color("#83b767");shadowlength,0;strokecolor,color("#00000000");); - BeginCommand=cmd(player,"PlayerNumber_P2";); - PlayerJoinedMessageCommand=function(self,param ) - if param.Player ~= "PlayerNumber_P2" then return end; - self:visible( true ); - end; - }; - } - }; - CursorP1Frame = LoadActor( "DifficultyList frame p1" ) .. { - InitCommand=cmd(bounce;effectmagnitude,-10,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); - }; - CursorP2Frame = LoadActor( "DifficultyList frame p2" ) .. { - InitCommand=cmd(bounce;effectmagnitude,10,0,0;effectperiod,1.0;effectoffset,0.0;effectclock,"bgm"); - }; - }; -end --- fade out -t[#t+1] = Def.Quad { - InitCommand=cmd(FullScreen;diffuse,color("#000000");diffusealpha,0); - OffCommand=cmd(linear,0.3;diffusealpha,1); -}; -return t; diff --git a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic underlay/default.lua b/stepmania/Themes/default/BGAnimations/ScreenSelectMusic underlay/default.lua deleted file mode 100644 index 1ecbe65398..0000000000 --- a/stepmania/Themes/default/BGAnimations/ScreenSelectMusic underlay/default.lua +++ /dev/null @@ -1,17 +0,0 @@ ---local OnCommand = cmd(diffusealpha,0;linear,0.5;diffusealpha,1) ---local OffCommand = cmd(linear,0.5;diffusealpha,0) ---local t = Def.ActorFrame { --- LoadActor( '_difficulty frame p1' ) .. { --- InitCommand = cmd(player,PLAYER_1;x,SCREEN_CENTER_X-275;y,SCREEN_CENTER_Y-15); --- OnCommand = OnCommand; --- OffCommand = OffCommand; --- }; --- LoadActor( '_difficulty frame p2' ) .. { --- InitCommand = cmd(player,PLAYER_2;x,SCREEN_CENTER_X-82;y,SCREEN_CENTER_Y-15); --- OnCommand = OnCommand; --- OffCommand = OffCommand; --- }; ---} ---return t - -return Def.Actor {}; diff --git a/stepmania/Themes/default/BGAnimations/ScreenWithMenuElements2 decorations/default.lua b/stepmania/Themes/default/BGAnimations/ScreenWithMenuElements2 decorations/default.lua index aae4282626..eb6840068c 100644 --- a/stepmania/Themes/default/BGAnimations/ScreenWithMenuElements2 decorations/default.lua +++ b/stepmania/Themes/default/BGAnimations/ScreenWithMenuElements2 decorations/default.lua @@ -1,15 +1,12 @@ local t = LoadActor( THEME:GetPathB('ScreenWithMenuElements','decorations') ) .. { - LoadActor( "bumper" ) .. { - OnCommand=cmd(x,SCREEN_CENTER_X-320;y,SCREEN_CENTER_Y); - }; - LoadActor( "bumper" ) .. { - OnCommand=cmd(x,SCREEN_CENTER_X+320;y,SCREEN_CENTER_Y;zoomx,-1); - }; + LoadActor( THEME:GetPathB('','_standard decoration'), "LeftFrame", "LeftFrame" ); + LoadActor( THEME:GetPathB('','_standard decoration'), "RightFrame", "RightFrame" ); + LoadActor( "top" ) .. { - OnCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_TOP;vertalign,top); + InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_TOP;vertalign,top); }; Def.ActorFrame { - OnCommand=cmd(x,SCREEN_CENTER_X-284;y,SCREEN_TOP+30); + InitCommand=cmd(x,SCREEN_CENTER_X-284;y,SCREEN_TOP+30); LoadActor( "bar" ) .. { InitCommand=cmd(horizalign,left;y,4); }; @@ -25,9 +22,6 @@ local t = LoadActor( THEME:GetPathB('ScreenWithMenuElements','decorations') ) .. InitCommand=cmd(x,-1.5); }; }; - LoadFont( "_venacti 80 bold" ) .. { - InitCommand=cmd(x,SCREEN_CENTER_X+276;y,SCREEN_TOP+24;shadowlength,0;zoom,0.5;settext,"45"); - }; }; local style = GAMESTATE:GetCurrentStyle(); diff --git a/stepmania/Themes/default/Fonts/MenuTimer numbers.redir b/stepmania/Themes/default/Fonts/MenuTimer numbers.redir index e80b6c4614..da301e35c1 100755 --- a/stepmania/Themes/default/Fonts/MenuTimer numbers.redir +++ b/stepmania/Themes/default/Fonts/MenuTimer numbers.redir @@ -1 +1 @@ -Combo numbers \ No newline at end of file +_venacti 80 bold timer \ No newline at end of file diff --git a/stepmania/Themes/default/Fonts/ScreenWithMenuElements StageDisplay.redir b/stepmania/Themes/default/Fonts/ScreenWithMenuElements StageDisplay.redir new file mode 100644 index 0000000000..c2ad940a89 --- /dev/null +++ b/stepmania/Themes/default/Fonts/ScreenWithMenuElements StageDisplay.redir @@ -0,0 +1 @@ +_sf square head 32 \ No newline at end of file diff --git a/stepmania/Themes/default/Fonts/_euromode stroke 44 [alt] 12x11.png b/stepmania/Themes/default/Fonts/_euromode stroke 44 [alt] 12x11.png deleted file mode 100755 index e0c53f1fc11948adb828911e4636b49cdd288094..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21607 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%0DG4218IAxx9mZvQzpKsj%e8+# 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 a@N$t-^jL+qgAa(Fx~rfrUwGU6>Hh`lReMzc diff --git a/stepmania/Themes/default/Fonts/_euromode stroke 44 [main] 16x16.png b/stepmania/Themes/default/Fonts/_euromode stroke 44 [main] 16x16.png deleted file mode 100755 index e3b1ac33afdda9ca010d2c2dc1ebf817a88436cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 93293 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

?^GKz0>@^YAFemkWjXAEl3y>K zf$5$O_0TA*-WsZJQTu$?!ulXX5!o-%a@IkqFAyzE53@}gbZ1Or+{{7&@>q9D8X%vX ziW@KF#H?kAoix_oJZJz5?|(WrMZJ#`#E&-#1(cP)Z)7t0gC6!h@c+LVLe7@peV$yZ77qW17pvQCM8yS3aB$ce}hx42N7TUNh^q$r+QjjG=GZ!mXET zF}DRJewhd$`GU;!(>z>XPrG;xmqLpFSqd5*^^4bz-7LmTZ%i^Z^Hs$r#j-E0$uagf z8f&|6pTW%nH(!z~$-Lpb*dA{tNht-9iw|I16EC|&0X21Xqg!bkBY{^UJpRlO5VLE_ zO16e(~Y=OAArbNkwV}9(EgNyxQE^dw>41YFV>)M$Larxwye_%#!h(BD$_4QLVIuw>P(Mx7H{NyVs>mKREse^OWp7K4Q)72F=#| zsfvFiX;xp$RR2j)xN5u06H;d}J1kjFt3K1%d+#Py`s0E?ls`KK#UwI~{b+mTM#r8d zXYAAFPNhRF{ZUwA6G8WMy0qCT`*k1up6j0rqkG@UKhlNV{!zOUvYois_+apOg#NKU zWgy!Yp)9ti$-bIQCL8buhpc3vyP}GB)&TkDi&Jw!*7m&Efoi@=hxJm{%ifw6^eCwf zCJguqktl?D>MWC+7#~@4NWK)SfF?-HAo4epQQ_)#*y3jAb=TEYTuz`9=V#t;1hB^ua1~ zinsZg-DxFTOCqW4G2CZI*1vk-CuU=r*nixkcXukNB=RTY!%hNXxAUrBvl`WuMwthO=lINTA!xd4vf zW5>o}b*!KuEH;N&aV@63NVUzj&(<4NF1sF21XPAJo6CR@H23-+((c zmW|o}IFRhV2tTw$XMWtX#1jMIjtxS!92#?8=r;JR1Y5oD}bvdD^~k`4&VCQ)K6+Lu)F<}WEZ35c z+k|+b4|mVby#`Ln3Z^~Vu9nT~km7bilO#Pduk6}VZr6lCE^a`kj2sjh{l~aZKnu9~ zV%8Ck+(exF^2Xf@KthczXnBKZXD8t)@2M!(HP*A!D>67HSLmaa`PnUJpAkQ>0+#o3 z{@oA(CnkX0*EWHLCFkP5-Xi7HMwu#HIH|$V#cgqbxTJeEU;=}tFj1m>K)F`siys7V zMl6SCx2R9>7lIaCIHrIY-u!XyflIY2V5wfO??pZ+!P<-mBDOMwKsF)CBb05jp?J-KDX!gOG*9QA5>W4@l0*v zlt-@)5z?lBuHJUK*d02cbSTXA4HHk5Z3dP|*6A7233Vn_?$kJy@JE?0xk_mRRfGo7 zZwRz@hcGS7qFMOW*@Si(emOOc`6prSa-*L7uBLnMzdQa$R8F>Ca?^2xtxBL}U(*E{ufvt70cayPJMMGlb9`Rggj{po!kRO03RJ8LMx_P^#48nQ%<@@CUQN8?5p3Gu# zc~X03aK)w_BK~O z>-B)ZjYsKwwk#wX+aY+6%GF`;N}tTc2Suy??~Z>$+{7jKhnA0SDlGpZ!n44|tX_m+ zE2~vpW%>HIuQ!s%B}a}X26n<85w)!^=2zV+l(1O-ku# zly-?CJKc`%_LxQy#Vl>idm}ew2W( z{#s+^!*fW$>ww_y=}bE|8Ikkz3B+e;y^L{xH%I-<07ITY6(;&%8WTpKh+4c?_gBlM zLX)y+ToZ!NEw2T#E4~Eg_Rp0{24Xj>Q$v#mjYCS=zCDi&-5fvnreX|n>l_NTNac}L zTFD|4GEift)ED`mNll?Spry#KIS!v`N|`bxS>!d{@36kPz(fhg-5o6FRy`gp-Ty7d z>r`+#VeNJ$-|X}ET^fiJCU5!_v9G+&1M_io(fD~c(G3}gnBt$Y_iyZCmY;!5kd$y+ z9LxJ@Zt8h~r%fJItloqhWUmta&Se52g(L6Gg0jceWq7yvUtM>T8|Kh_sAwW3p_4Y2 z)!=@O2<3@FH0+Z_p2Txl>7m5ht~f#9xu2O+lrMNHd`98mu1}U^Q5Zt?r&Nx{8%WLg zp_D~|YvUvcypv;mRu*S*hS-=c(-M+6+_-+U_t*Hs8Z4KGEBV2&W3$%n?T@>%(B;<1 zlRq)~PGJwG;sJW_#jVQW{s|p&!8J>J_EW;S=tT52DKmm>?mi*KZE|B{mmTf)2iOlb z#g2DI8!k~<&o>D^i-(%9*Q=7x+*Hf`F7G0>dzp! zRA>NeSvzf`yfCNCGg_%H9EBEuqAn0aQ>?)`ZZ zcyh96L~<2JN=j(HNTS7wrCiQ0OrE%O=#oAaKd>W*jZI+=9^~i1KYTsX%%pm(QT)he z43oApC5!W~mMHIuI-Kq(tMHh3Ma%JdQoiRWXd@fl)t>!1)h=W0^d4`YntQw+&o_I* zlnOnxiwy&_iZNC3Driz0#KEfNv=dYOZdY%HoD7h88gFqFu7cl%8Eri-_R}15rFGvn zHz(mq zw)zRP-p>2gV-?Gb)x5n1j0mnturl+TZ?ZhO(#dlZ@xy7k}U zL4CASIhT&2DMxXk|D>fua8sU8(>1+5ePB z;!+<_*~|z;pSPBlqK%=QMW-VK$({GT?nlRq1>M89yzQ|ns6v(W8f@MMxP4dR54GX@ z)ekMPoPrM@z64!rbqU-}Rf~&H{Yaq@9%gLLC`?@=ybW<2P3+l!?3mx#AiVj$>5XLb ze6cPOH1J0B<1XJL+J>-!%;m_i!zNBv(m(McH%8>xh-i; ziLu3!exmdecY+rJ!iPEz6!>lGow3W`pT}=f6i{rn9rFDM!dvZog|^o`%es4`jU4Ba zV3A>4=m!bQW**HhRy%(5Ywy&=2jIgr+02bNY1CxPUXPm2<`&wGeI}QerO60Q;1do^ zleQM{g0*xpB>8;O_L5vP#xZz4f6x@o>GO%Xnl~uD#*95$H54c}#@OQeN_MhR`827P zn-cR$h%4dCPH9H7Fyq05{CH4iDl$9>@ywI;yn=3I_|-Me6Sct{wdylS%ynxWh>%fn z_BJmYw~N614S;KK7od8JGq^)f@J5D_qI^VE%Qd?t2Gp5X2()I!+ua=Y!8P2BEf2@l zO2=ui_dlN{zPsgtpIv=%Cz$UuT`jT$`+Yn&OM!ppY9q0tZHJK692y=_Ko)X3e@(%b ztyZzZ_gep#loyZ|EpaA1K#WITqlf)!5Xs4AILNU!pKxH`8cpFSsrGv)^KIP!>bSgH z0ej_z3Plsf6{rUGQd5nqud=7mfuV=6K$Oe8gN%?fbd>=l(i4|lPA?ptgGdwAF>0^K z%aYT1<9fHE4uE3c%coRA;`hr3)x1ViYko4Z1q(yE)}$2jQD4+FQ+6Oi32)Kqv(%I0VmL6&a|z zqVpzuZeikGpS~ByomHf-p(LjsZh8xm=l(r0yov>1>ZTz!hS2NLQR@d6_7{w?pybvSPvD;9Kp|g8iTuxJu4V#+eyfy7> ztpy0fAPTBRcEOYX&i5CcvEeQac{d`*U(1-hepJwW(y+agUb@<#I3{Xei7_zYRq);Z z^tPJx9TzVyI~%pi@byfE{+hgSF3{3#;0CYVy7#c~=X>^ag;_hJ=R9?H-`QxWN|GCa zy1^deFi1-O%DX?@`G|}j(ztYUWbB#*yYkz~+FCUCDmbCH$84_8wCXEp_jW)o@?$yT zzG&A$)CPq;ppSUo{2sGCo%&3bF&aPOd1!c^)`hI-xR58 zBY*nXK*Bck9W~7AcZND4Bb&y5e5*&z9qIDQPPDW5Hw&&Z<@=$#xwv1MMBEL0q0I1i z2}XUF&lf$_rRYrvI~b)iVvo+v_*_Dc&(F1@pIiahu7Xxwe!g)um4x~_zJvlq^Grc^ zlpe6h>CU*Jm_oy;vqhc$tH@(|h=CmRo0_f@BuGzqWD2 zwJsB~vh#9r6DU(IPR^-eGRNRjz=VHSQ_oJGTW&Wpuw{;uFupiylKn-kHi;-~P(AGo zs1&fDVR5-W&Rgte<`dfE!8v{%@e#=0c7j1uv2aYES#@h1Vr}tctHuCN zryKc2<%U$$qORZ%r-ssn1R%)MmPyi+zt#W^?wWte3eQ8V!twchJ0a+Ksu}+`iyyli z%7YQEX$|&4Zl11r%>4}>?4AmVt7zBGs!q}e1KS{6kd5ds$KY~u@I>`1s?lE7rFM~D zOChhxO2Rv59a!TTWRxjB=?CuiYT;u&qQh0fcX&nxN~bLNVvUno!yH9i8aotIAD6L@ zUU$8@w9BI3P2&a6J(6T)`T@L4lO7PtO$+wgckx5bB|`%dVCoBDs?rf)28(+p_+c5}%L4 zJfNzbJ@$0sh?Z*@c6k(3t^dMe7zCd}K1x=EhO{8@_F>x2Vd_uEa-LpP+q?=#p9pNr zh5bm}LGZw0OTSGYU?rl|Tn{rn1f1J}j8iN8!}-dUt>yDNaB|c3=u=mb&r0tKmhZ<7 z$0DT@dzMLrEk}{%U@xr1x}YqdgK7?udN_M|qzrio`aLKf+5RAQ6rAvz@FGRxEvP+a zTd3o91B1+U@6m{+uLu6h4lG1tOp%f;shL=#?V192+v{dk>~^F}wsR;O^tJ!q%_VS+ z>ZU4Qxqi}2D5?70FxYrjz925E>mte!cYcogE@MetU!jW}xM|xNvBk9%+_fa&`m649 zyUrmk)k7CbL}Ao=VU6W4q<{n@3ngOu&=@k08AbH!C0p2C8gidZOoX|=yp83j5=)pe zS*Z7+mgygN`;K9tt17!oi$aVoz7Uv}K8?F;f9FIR8;pVx*qma=(f&S z9aS^&GUw~+;_HgY!0*m+P_sVq$zpy*p=d*L%bTTDQH^VB;}IpJ`ryU-ZoJc4{V}1> zrM;J${du}Z@Q|YN68W9jgaVJxgaLp*_!io0WeXqv>3_Wn$T9OQzpK7{fO!>EbdAG= z%!DgrS%sVR{7BrW^L_Mni;^krmng7O^UDnthqW;%7Ocq4HDJsbA)+ZRm!lJnN&DgP z8JoGQ0^tOn39@rOOxCq#=RMEq*F-0UTYw5V4hEWtGLv$d({!jGdgO05C+Z1W^JajW zJ2Y8*l-M95T`!mJ!z9;?KCQ0-32M{93g~aEut~>b3lb3nW<022SuNg- zibiYUwg!MktmhcuSoblcrulrxkOL&tXK=r14*T{7<)XuWAW^bqJ z<5bQ>zV!I*l>TD4dN1&~EEX^$9d!SFMby?x=iR8{ z>C+)9uczsM-#81+0>Vp!Gy6<#Sze~X0csv{5-w>Y0jo6^&~jMdTG3RdLiB_xWcWt< zH5Rg$5)G9f!QcAjs(@K3%vZbvs;|HQ_78VlkL(-YS|xX3(HT!h^}N(qu_q~A;CCfu z(F6PfQEel&?#es0#I%#KLVqsq=K$vJxXgIxctlqXdF#n>GT5n5rr1|1uKyQyZrCe?g3bu`Y+jXEIICoN*0OSdS(HzKAQn|LU z%8m&=Z(u=X`#Co>Q3G9oe36pKgsH?7)?!@h%x(T7Qsc9~EzY9*)MEZ=$fWv3SM&wB zR~WgH%56ZXVaV#vzVD`i^>9>Sd~t@99qqTRqo9gR3(w-cK&!8gJ#UYwwMWS$+W|t9 zpf;?rovL0>o2zSz2${gW5yAdqP#7?#-l2C$w*&2T~G9XKvqV95J~y7xotd19HxBpYpo$Q1S zDuwn-qrSA&Ec>ovGo(CN&#G5_Qi{&c68VOh1YYw`!q2^et1Ljeg9jzw=OFG?mW;;! z)Tml;F0nYJUYKZ$E8~#sX9iYwkGCrU(PTi~WA72|Z|0HmuTZ|}i!22@A-#SzGI;SL ze?G0TDU-=hd#(SM$>g*3KNR48p_7L*8HbVbtM3#ZZ|2f9TcvwV`qgh62)z;*`5Xd= z)Dn4XlgrNm?#gK+fV5J?n^r1kUGXe0k%g()w*47RK&iVC{7RRg6qTAY>++d^j2+be zkI#+z#>+X$4hJ-%n^u8D@Q|)?LPAE|%X0g@ZXuuSY1cac4a24>*Ev%)mF5JE620tEE<4v*&;pF`bskO{FF~VZjcxCr+@L` zy#vMRQF!ytpPZ#QWfHvKQuD|}8saiOZ=u|kY*-({`9yH;y)$Z$F+q;UQiKd!{^E-5 z1ynzbqOOlUWRx2jzMDY^9`#^{WUnJw=UnUj^TmXe=X3%D6&K9~E-y~0SuoT8;54}3 z{C%q6O~3c+AcNfxx}8Uven-hjH!io*ko79ZbdkwAK<2zuut?6o{$p5E?8f}L;CtJG zxJzD{%ejz=+Q)z{DFrMPlbrm~O8+xoB{8s=ee0$`&E(*__VmGP7mD)d?g@}H-}MDb zOCAAkfarQ*%;g0dv#@mV2tc^{rdXpi4^3gCYem~tlRIidiynyl>lcLdh^%4%V=~=) zMoWb~Bb!Y^m5|-63`(HLEJ*GdT)s_Uee7fH9iLN*oHEYX%LSNPr9v%>MJScn9hL3A z;QWnt4|6fr7Q$&&RUbd+D=Yhx*NmX>;s}Rj4lj65M!5r;R1e{%OaYd;`L1op9YeML z-D=7iKs5TCwHu9s0adKMO$;&`;KG;K7+c5yzt>5MNwV)8fX>`|5xD=F;2ZGZXpWxQ zu$i3l5&~do{?hFV981e19jriHt-A8AWYztYB zUI`58pCb3s%u)+^=C?Grr#$`yitok178Lp=O8Zyu0l8JNiz!=Dn5!$@wTkFlfCC++ zM;MY-W5~pGOl`YP*D+7N^-7*fKeJ;TKON{s9KLnm@AAL32whM!z%Nn)PgM4(J}Iyp zE(wj;);?}Pr(iQYg}Qt+BRAj3NvIbnKd#T0QzqC8;N&8tTMwecNz!I@8Pm^|Y~p#P zEZun%z(&>+pmaI|r+Ag`W`!36o&V%%ue17LoK1QnpJbthb z=yRV_IZ$64Sj%k-`=)RtH%HB+N2I&q%|@~;0GOH6=Bsri%RiluR0tS1oh%G*rGRS+ zm7XI-P9CA1&yKW5G@@MH^LDlfa*?_Qmv{d_nMdK~=a(Q;s6|Pb4WvoLoKS1h!x7jJiqbB~Ktp8V$ z(*G2@2ipE0NH!Pe*LRHN5cOcN_R7-L;WqjD+E zT4l{;L!1xV5&_bP3RB{hIs18(R0F7qP-QIv`gm$z$Z~!_hja6wuUeFHBK+MV+7DgI zM;O^kx%usv(rd$zgb&NM7Z7_)l%$w8m?7%;o?-mApPtS= zp6U1f;~}C#qBO!s@PCL}0Bo4mzp@TbdCzFy9gc4J zgHa)jZTwn!^`JqWVGl8`E2Y;2qI8yCCjJEXw_MO2jfqIIR~^U_UL5)fzM}`bj&tW( zvn$zLRq7w>XiOjl_Vph+`{p%mIL*D`M`cl!EJnRf$ES6c;Djnwcw z7pf8|+M35QRSt}PpS~qh&MItzf6vx>@8gEGBNHDR?|dp=MtO(gHDFkOHLvxtS~5`K zs$bjJVmk2PiERj4=~BYudGbXgV#I-Q=9FrR6-e0gc9}?Vf@;R2V?y53l^;0ajV!o2 z#V?&ba&s^sFqZ2RWHU+5$2o$NFIQeRvmmi4_1oA2-8nZ`Ea8s3p|=B`Bm?D#$t&jP z8tKcR{S&Lzmvv_(^^?ouuMKADAO8BJjvfItF}PfD!~awsG1hD6LL0UAnDmq1^EWO^ z>DQk=Q9|8}-PSx)JiDf!9RKkB1fa;j#JXahvt`X8s$U~1W&~OL@Z5aa67>&$r%-Y=2w!{;uwKo@pa$r&!kmYlXN2Hm+lwy;E+x^K z6|==;-NnH(2;X!S405&DJpSik@Ki!3^XBs_SUj)&exYt#?Zxr&y4g4jPV0r-L8_!& zC{lTSWY~GHNG@TD{9Az-Aqpu0CXxQn-l!PL6c2!O&EM0se zu$Z_xk@nK?SWf4_%7(Yb`ZLas&n#BF*j{lmc&b_5da=bnaLNDM081W%*C7~gm|tOZ zOwBVZCSGws8b+Sl{H=i1O0hq$lZF-g7Z%Wcf3EPszEDHp4KRw<cWX(B=$U1NtxtYBA)Waqfd%-Q*10wt)gsx|TFjgG5Yv8k;? zUo8U(4MdKhzOCW@8cF$h^4E-^ae_~1)?}u7_pDXap#NTa)5OXW4T09U%=F}e7U&4U zwlOV;`mtS;BtTP`PuEz9ywc9uP=UK;P?hc3le5Y`qh@8zlY&lC-gs|ezyt7gVUsCB z8JFDs;VCxM$RaT~b8y_0%%`nrBj|o6tXkoIEuR!qgBBt5u-ikMb6AOEKOX;}ZTwv)gPVHI-f+%z^>H0=Sa*qhrM?<_n(3@|VHV?|OL4nG8)N_WWt?*5C4AS*a;V)y z(wurIP4y(#;P>q!sZzqT92udm?~F>QEl4~OZD|X(OmP#R& zeiGUdtXgZb#$YwNC?l*Za+EAskHms?0(Rz5#(NVZs~|Uh>UXf>j)38Ez<}mTHY;HL z^6Or;*{R8<;b(oIRI+($^i{mQrwE(?*g{LwJX7RCLN z@9w%*Qp|^UZKCY&DVOz=pFpywI&-06G1`cE7Gt;3p(Pgi(NOnXcxCT!jjWjGpvr?zT|x_C;SkGiF&8bS98S`l_G&J?nC>FHkXDZG6908T@4xiQkm7s>pU1 zkcwG(UJdGoxxZJ1J?t>1#4c5Q{TkV@N@8}2cv-^YcS?x;?nk5iy#K2i%>MlmvYWpxQ3_-33|nxamMju+M%f@x_Bq_KdZ? zTluyP!dsrb$q&}wyGEgD{f2X685SOE(h15@nIpeiOjxNWkd|RdjA1Dw#=V#FX~}Ub z6)N$lq6C-D+?mHh_4i+PB4(Y>B$HlBG?Z^dW5g_bm|WWuG9|bjtRG!|Vyb8lZi|{S zmV(bZ-!l$+tj^asxQp=W2T5!Tw0V|>o}bd2-_4i*&if3K0`bc`9SYVRFHkFUw9pAu z_rvk;KY*ft`X+?)&LBQ{G;C|pvj2_Zy7h-dg;?|Y;WIka7zJT1qJ7(;2Cp?3+x#(E zvhE+1VC_P}Gx{^3E0ZU39Ci7%KbR3i=sbHt;V7eYyNR0*M{0u-1%z8}H%E@r($C@4 z{BV=IpGctt1X|xi4ATSRy8PwtxVZhFnWMOUwRlG`I3yydI}=qwJr9egxN6?u`$RH6 z<3PjR{hm{YhfZz=0!j>Mj^L|#qal5KghP)?)ZMo9XV=Cilz`tek3+n_vct1is`>Y> ztjFpCs&}9cfUshhs#sm87ySmt$IDQa=tyt7%{#`H*!Jhcnx`5Sw6}!k)Y~&jf0~R@ zMJ+u%+pY{aq{rg7?OmgDwx9BG_)|hpA z(nUFq-)#Y*4Kg@)%jc%pQM3Zgxa8B1YC|pjkHE@=UJ0=mSRlBD{NDvb9NwFpACX^;QknV^pg(c{$GwZgI+?T1 ztT|qj#~V+l@l;p1^fA2!&ACrMt!jQE5bk9g1Tok|&G2fls0#&(3vdEc7{z5ZQ@BG3CuTi^mqQ>CqRh2DHe0riqsBCSUse0E@*|mr zqk^hRz?aiq6bF;Lo&Y&!zHneoT|OyXf|0VCa2_|Qz?b-j%V)dGIIAz5#cuDIKP`yQ z>3DvVvzneLhw8tE!Sx93l!+G0I!VrVs7y?uod?%Adjkz>-&Z9hoeED#Bza$LzG+{)-TtN=Jt*(Uo<3HtiX~KnW#Q|G8JN7Dhx{!@Y$_$Fn%_c zSVo$U$G45oG5r;vIKQ@~HuU?3q8=ni9%ZQ!pw$H-Jm2iq9~b}v#o`wbHG)ttD}e)W z%Ivuv;j_iu{*1%=9bCIw15xu^(9mVyt_u>j`X2pw8K=S2sz+w{NqIB5hl(e1vtPRE zB;EJ4F26}(p_v#>jz6}|V?@4W#p9H)guYc+_&2Mkxdhew;O6_Sl?=R%3D9{!22<$8IJapyF zjKOU|FUvM?(xty`2BT6X-2%UQHgP_oObalXZ)TG?j_t7s>bad;uTDw;e{4RaQFB@f z`Y+ks$=l3Hg?JE8Bt5c$m<1v4fT-a@&?_4tP--JJS8^4ClSmws<74a2zHOdm z+sZg*wq+TIChyW?Q!rL$gd%5!*6);xgw1aF?0*+{pwM~%<%`W-RNnZ771^~@f6H9m zzaKkDAOGz&u*#qQaF5cg$*;WnBr7`eqxHgN@Qu|o;O#oN&2>U4l=qcn0aSn4I)-7^ z?M03~zx`n?_GE*6_$0OJ<{>+keE0`LFLUT20Y&uF>&%AMCy*!Q&q{wel5%O*wi8~j z^Yv8R$;$b64Cl>I{RapXDYOwjQ_Vvej(d9r|5lhhp+>Hrt4dT%z&-;rneZ zuv!-dyaL?=u)!Je9|ExC{k3{TU!(0R5uG|4k&pZv+Vfm*b07N+wpf7Ge$)ZzpAO2g zMI`HRiEV*Sy6nAnSia36j%slY#~v?~tlVZFqbi_)qbacJ7!vOiww>M!tv5*^XNJI! z6a*aem+F3M4>e(XC)5cCV%tLjv3JQFMNnWv2{^z+yg*wyC0*jdUD1g$kpJ(ZXqUr? z2`seOCM5p>?gHm@3Pp45Ry2p()=GlBX-b%?(Uz^FMW-7Of&=a}auE)=R*+?&R0ctH z5~4y|g}p(+MDgvcHap@E`x%v*E_!-m->KxouG?qzk+@}`P_pG`y=M>?@WjdR=gm$# zaAGP))zD!`UwSb2vPOT(<9D;xau}S3gGoOt#Y9ShUPDs(6kz5T6I5#d7u@Mw=UKa1 z3BqFm(Ws&jzLzEdZ!>@n^JJ$z**Z?oV~lYbAfj`woLPLbev4aaED;q>H2O9XrIHYt~Zexzmv0O{~1 zkkGzmRi!a|u6@~4(QSaD6mnwZJ)#0!B=YD8u=6_rFENbBVoHl}Z zn8rmvUiEJOQ{0sMsY|8kIO+O5zA9CbBpK(G>Aed;ngigdnz6ZOLBOTA8E|7PKzE)EuYGr#k;{3fpddN(bamuVi+0|R+XrUAIfBf6pZQP?7 z2IQK!xyFz3khEO2I3~;wmJM0+dycF-{zYT`kBv&( zcZ3f32-CtzpJi0LQxMxWX7_`%X|F8Bi5^F1^-qm-T=v%XdB;f6349h~IT~l0)xDmS z$TRP@BG4K0zXa>YVyH*D&CDT8KknCWf5gE~{Ade|WiJaO02q;B(t8l3`%%IJf_Ws( zJm{25ENRYwY^gfvw$K)dQ8WokI@_hnf5aC_);L<1RrXfz0~D+^f1hg5AO&oT*4zzI z)A@@GcIS2wKH5M687K$mO-S-*Ce|MfDb)1|YzqF?JR^lgf86%UmMhGieD-qReU+sx zGP7YlX3bN1{x`HS5s-A z{~eLi0YbT0Yk8j_3%!bS^v{U?RKPz%1{BusBgpquMQmOrjBhB0$Qgc?w zjU1&_8>>U>M>N`)-mKCTut)BtP$j^3+hdYXZ)oq@5SXX*aO3%1fXP_CD~0kwVHC@x zsjC9}ji}?(HUtvBz!^5e4W@NEg9>n0v6S=0FhE^VhNHE5*PDvag()9BHK`Aw@J!6+ z=}0%8!{icRJRC<(TrTdcQBb-HGp_sAfC92J;{%-`US4oASR$>5j8E zDCz+Ma)de2EVcBt(FgDxwpMoKFWj1o`z@w|LYqH{3mDGwp~KWZdF{6ofA24tDA?lb z`*^f1t2&`cuzw%&H00#|?K^_XvCDepsmmusu3#fg$R+H6Wb~O^QN7PfWCa~X3|NI@ z{Zw1uIL1eKUs3^*G8p9?L++J*a=__z*SqAQB8p!~`q692)@N7{Dsd$WFlhRC(a}R{ zy}0`V({rTnEcxiQ^#66Ymv|>7sjOAC81na!%0t_2@;;;h+S{tLeEBbzK6C8q#sw!n z+M^&K4*pB4UnM70hYZ!r@{t9F-_1sk@c8{@*tgMg$6L7<{M@q%RxGWN-@vC%C&axQBrRm*6_MySr;}3m#ksC%7j|zHi^F zSFg6VcI#H3uIV~`=k}f3r%(URf5KIiWHH{7yafON81iybY5)M7_3IXf^5*r3eXftz z>kidfPRA7hK*RmF!2!}Ui2#7N$~KacDk|1aZceV&PR>;Fl9E);E>4y<_7(tu*9uhK zN<;mSK;&-yT0$W#Fj2ut4IhO{O(HT7FOH7sJ?guUVefO7@l|`VrKJ%`f8>NA#KZ(f z;j6NsN4#A^-hH1J6PzCwG5WOSn{T(!akoG5r*RPktGI&JPa*f9peM_5tMUe-mr77z zZw3z!3~lYQi9z0ea0a|XsW*S``a%N-xDOB(W~S~z?gGGh&7q+HdOl_JaFB)m#X6Em z(}xTE3fJQnC!l~5hzAh!iIFG*h{?bOLR0C~0Xc{O<1sVS9e@fez?lBa{v03>dY|SC z2hdA=j}Mm<2cW{W2$KR>3jr#oK1WCcv^fBHmI?zvz!EEfLte{L4p7q!=$U+nRtG>q z2XLr{ePaY5`T~r9(9n1RzNP{2WG=OYFPN*|!I)lWDy>eq^#f2EqKCo?M%L0|qhOen zCuGLsGl4fr7h~)5P9x@m@L+9TjROEVarm!Sd-dWqiCHx{$rsavX~cTe{pK&Vsp-z2 zy{U3%F#ur8Enwyk3wu3DpwOE@hd+6=XNcB@XgTh8k(PB>VvT^D!xgP7=YMk}o%_9Y zd3kSlcj@DRgr3Q$mj55CKBFG37yE|*;pe-X&93ba5H16VEaLrU-}tp+A=y+s>Q~cW z`?0dm&1iq0$>*pCTB0{uH}x1Q}g0N}FSsrM%X3PPZD@Ya;)-*eFy*&JFxprw2~7yvMo`oN|! zS}!_`0su(mK$vR8Nw0f}SbE-&^&{ zCS&%WV&ptMs@5S1&X{a{nk|?j&RCBoC|SJ>9S~GR@gFF-Chu3m;7lX5X<|?a)4tum z@0CNuiTpq{5{9Qrtq{j6$Eg;fL8U22ektMt4-D0pX^Rv30pJRH4(X8POoY^_iu^=x zlx!{GC;2Lqhc<2Q#+e>Vkdra((m)~-#g_}4F1N;7i3LdxbMzb#A#)GdbFdBdOVkRm zpeC4&)lyfWmk*KDe6B!f55F;+s`W&~fk^kD@*#RkP?=DO%V{fWD=o>DP?3G$!Cpb- zM@9Im+DA{FP@>R4*M|KtKxE3r8LBPELbHGqi_8AbH%xMX{{v3ABo}?_cX;{Q0*zUm zS(#Z!HJU?~(hMFs5}JgO6?3~fWMCo-74wg8yU^YKUG81d-S?MzZ=t4Q;DUSgZ3eYb z+mFP1@Ai21-dLn^iEHMktF4vfYGCum>Pl4RHmOyshL+&+xTgarf(hgm3M=!H=18mw zt?z8A58T?Y*ODldQl_(e_h&_p_Qx%Jd=OT%R zH8}V=k5gf3SZPk0+DuJMe)w^tZ<9VI(It^Gv1^o;6_u@*p=n-ej%mb}8mjwO$!Kz` z@06ncOfJ_fgQ^^>ld4;l3YCPGS(P|xh!zCsyoA5e=~wJmmMl=ssWsZ^7@|TmBd+&i zd2feN9^ww+9iXe7SoZT^YEOM3Z;uoyE6oK;a)0F3s#m*8v=l|&Nd@0$x+$T;7>ZM_ z0wUJ&&Kb8ENsD+CTRAQC?aGoEmU50^KicZDr-kq>VGJp0LjTeW< z;u~3X?Kk!4AKt8@PZ9|a@`9a&$=QcjFH|KB`o$y*O_EGfw!X%-&Isqv%S6jyMcEAL z?|j&C7;+fOr+Y*9o=)M@(WkR?wNI@@j736RsUH+XM%s5fAot8GDhe!W;wYod4Ow!3!dO- z!S(dX%rjB{!RzEhb}Q|vcT-E;J59J_i~}}M^^7@LD?+PQ*WjzL$Z&pd8GD>o1KJVhU*}raF&gLZY5vhXrrht8 zW%O-B@(ayh^S?fSX8^^4v~X4k;Sh0%9{kh2kKg<57*WAhi`%;8Q}L*rR&jjs*r3Xw zz23_A);~_ZSH8c4rB238+F*WD2{>4oMmE_uiR=$Rr~elEO)Eq+#yL!zWQH?^*K_8V zr0a&%qg1lgdWIFJGO(KUBQF!EjLlYfg};rbO>~IOQfGW#8>%gDuRsQ5W2)kFwC~z@ zKD`RvhHj(n_!6eF|1fa&&YkSL{#Hy-%7()tm@K9krX-N~Tl^hU2|*O?C9WrJ%vg$ZFrxW30mBTiu^Q$H-=OiX`L_yZY}HNII-mwh6Q|?#qpRQfGtaaCp5pZ3Y{fSfhA3#Ul56jGR@egTgu&jc zZ+GyKm_t6lsSs|7Xkv1hS1v!*N~sFyr1SY?2Qlm&4eD)#vpYu9e7pC}|M=J9se!UK zyUs?V$zuqV6oelhQH8fkn1cUhiQ$*m9%-o4Xm{GL#D>!HfmZV=%UR3A{dLwXJHP;M~vl_28@l*4W~D^(yQz#6AY{E!A+8_`Q5@T9TvqSlM_Os8U-5H8jl)$XR~XK zCX4ruGiRi}9k)Cu^Q(FtcQ2rku2oGq%}?`|^A=C?PxW`ARpDia_sLHV29-(<;L~A* zS%ep48qB7})}Qm_vmzR5u?x({vY5k^U4NkGo~#&r7@Ee86c~al z9#Os(TgY>i9^_W!?6wl=m+3MY>gi8czLs}~q*?rvYuBCL7X*J7=CgnzYn@j< zPIrTMHyZ?N0WS0}lVk16p7dvx9m*X>*J7vQ%aUuM^P+lxel4B<`eNJTnR7MsOZM)~ zx8SKiaW}D8l1Q;>v11_^A;(z)ARusC)aB*yxma?_e2OlM@K4^Ku_{6W_JI5OeZpXA&RaMFK$l5>(5W8y`H~3$1_=|{;di89^&AR%UZz5WWe-Z}(YGeGKR1;o5Q<=%BeF6Y{XaRu0U;yCZ z@9X{$0C4930FI0S0KrrMfY2%4Xix?KkgS!L64&rrIqCcoMFvaTcql!~GBQuNO4wB? zkon0TAJ2L`8ISH%kPt0bEXo3BblvP9xogy*G8x`brfOn(1_SzO${{*-SgVBj?GcDJfI zZ!mx37Z}1bQB`*5e^lxua(?xvE>R67hzjL`hKBAPqWC)q!K;zVLHeHt5!+h)-G7ZZ zqVE6e@W1qe3)I)D?lRpA?6_LqPb|i&3A87*s(>GTa3XHONX%5G-MjNCm|R$GzW;<& z18Ed&Uvsl(`bh+!JF+K6A_bw>oc&5^xObsH(JQTYAa2pL(&ILwjJchu5$sA|tFwU1 zkGYT~6OT!EH(qXqTU2Kdc!G#HQ1~LZ94)b)vbTbb%f?uz+>Hk>_L3;t>DQXh$&E{u zD)dl%edKeh^~`zA^a4lVDa&2d+Lh4(Lq}JpU z!4))kgNBeyelw5^rm72~m1dq5O%)(TokWB(%x2kVYmZp=iLd!syWx@8AJb=KWh?B; zIGE@hg%}gAUt1CI;t=7D%8<_hhqjbymX@IR%!eh6jz@I9RpKmPze7}9>t$cA#Tdcm zjGbXrH_n*7ae`DA<;tmfS+NRE)ZywNo0%W=%vg$$HZBZjzXMhlFh|i}?=9;*5ggkK z#ZH9k-9LsHz%r9R4u|sv88*m}fp7QIWYgaFyK0j;Bc}bxGyub8WP{i4=qeDhxqBzF z@RFr5)i)Rg)>U%W81`$uGmg9ZRE&e{O0f^5&+-?%8!z%A)x=2F65#pH?ZL{nw9rko zS|`#xhbz(uvbF6Ew9TD!+!>kanLXbs9Z7~FmFwKiGpkgap@;W6hW*>d1Ka4+v4i4u z9YX@5=BYMX-nM%g+a!`Aj4U6Yh&sE{K8!I(T@}HEJMHUhPKj*g2Jv(ZO@gwyMzOP> zxO#bSBmJX^Y5MCiP6WT17R>F9OIbTt3&e6sQdSG~{lb8OZ6Z9_Gc z{&fhP`NX1A@MhH07>16xWOubXSv>F9!5-bho)^j0sVp2+w+?#5**6z=AiSLsf&=E{ zZxe?0ElgEuODyE@iflC7^-{9yJJ~eF zDg^d93GOc^_3_ANs*~N^S;p_^>I@HbL5%!1rbqe1CSrCA1#D;PeRo6fSC_R&Rj=W) zd4^-MqMtPwFnzU!V0_^@W)dOQUepH?@VWvQP3J@jAlB0X>1jUi#SBY!*|302SCz*! z^CBynJ_c&s$k2wX+kgnkW;1>171MYTRQs)gwJx2k>!k(+Y_}Hm&Ko(Vv0MO*sc9?I z%t3ccKG81O_VZo{Vtq$7ZWpf#t+qJoI&EnUFZIF zAt_xlvga}oJziA}Jh;-IJ^_bIE@MnkuU5S4pmL|**5s{i$iLD#o#DW|`SQ`odc`+pqIcl~Ob&~Mqr|*zUo6zh9TN zR*ida@tdWbj|9fKZqQ=0_fWA9nohKHoA{jFjuEnHWgW=3{h*>#l4H1CkBv`e;r@_% z;kWKKsDpW6EBnwF(1|M9sn!stSI0)JN9bslRM3i`!|hRnoc{oMikOx*SG-QEXaHX= zZ$<@iq-*G$_iMx{f+xSer-FAV9?uQ_sZ}^_2yPMGo?5$l@Hm5@Gzc`Hytey#6gS^D zC2uPHcsCol$(elF1pHbL$ik zp-PZHi7(SbKHQac**1^fsDox9Q+*NigQ}mtD(?$XPa+G%45EdA&QsRI{H6^W;0-v1 z`3^2lDM*Jdb+qjd*=QfRVS^L5UlCdeVOVmC-l)A_B7W!`a0QnH%@AGRGU)i1wU;kT$sP#+ji zIVV5Ae=NrM9@|aW|D&q$Wc@Q33#B1y z`(Oe^F!~mrp=OL`(l^yIa8Y&F%p{npd-iPNt$O%~II?d@eq`2{O0YPYl`>I-GCg!GnNie`QG?egZt& zYZnmt1*x3Xea<0ZAFo!i9R*Qtz@Z_w^=mt*T46fBTH`n4@oyVwqgS>?PzY~h2P=Ym znrlV!O)sgZ#gSIr-sAmqtvqh)zqunCE*&tZ`8+7BsZ@V5l0c9ur*cg;#7&0bEd!j0 zx2xY1i4mjsqcdryIZzB8WrJU9zh&YApxe3s{m7DMHOSsFY1f5)qurMW;+-#&#u4i-B);|Pp@2-6Q&ozy~L+22EmQ*rDjd|6;Y;amjL(u~p!Rcbv2>x+~#RKwh zTIGj+cQIu3c%WWmZt4mm3LacgPg76NER`yk!@ka3cwg%YgRe>Ddw2ep zR`>kdT45)&DPap7Y!NoKr5IA<&g9}u{In9Biwm2Y1Zm*~?y3)BIhvu(nC%lbc*q#Bui+EsGfRD- zY3vIX`x3#GUW)J=p8uZiw6Zb17G8r8JA!hUhLszD>lBk-r@6CfhD!AL@{KZC}pz?=m{F zpf@||VNpJp>m%>1yLpv|Of`pCx@YZuxosF@;&*1#1Vghzi5#j9-4BA4>kIFYbdm6u za)yfsm7sSp^Yx7T6z?oys|FW3d)cJ!>V^C63jC7QJi`mS6CyOXp{vjOCao~;>DN$a zD^mG&J)c+q{+YkPquM$Qe@0yZYK)y-0zHw9^mpbe~$7mhF{C@z#DMi;xu*+@(H00-(xP`1Kqqj@kBAIsNp|ignl(yz92l=<~4#IY&KLJEWEi#whjMcxmQX_DAGr~iM}WR znW!h{_X+V#b$)Zvz7Y}0;&xWa@NdjG;=>D*(sj?oxLFNvetLN6oSB>C8FcJXma*R# zFXYfya`vhwrxuM~EeYd*SMsGoVt-un?PP(Y8oy-2&}Kva1=6MEwYsKz-gc-3U58+; z9P8aLRTpxO=OMOEM{Ek$yhGi2tC|O#h>^BK=;=5$li-lyfN2&wC0B1LD>P>TS1+vB z2X*ZWl}2c+awN219L#bRqNLxq{Z=Pnuq9vm&tfOM{@Li$=TgkIPSLtsz?0c7j_dcF zLZW_{xbcSqS5}1Vn-VA{c5KY4ht7e_?xMvP^hkGGAgpqZWFz*os4IE-(cL`!aHU>P z7n_hDY6~K&{}8BOjjCe?6ST9!^a+*J71FKXrz3{pO3cj=iH(J#@wG zcNbvBzp%_ESUkq!PGj9hRcL9ea8-ke-jrZ{z6@ zEqY)9d2>IUELT8@(3;)lAiJ|>ZgF-$1$|r(Q z8vY;iUx)u&um5)Qzv*irTz^ra#&pEs9pd{mbms7X3}iN}P(#Wo5Z{jSyC@+M zqZ>Jl4#0)0axXBx*HI2`g{dUK7S)8q1ol(%zp?iBQzrke zOph((1`ahs;A?*FdhYaS^dyU+3Zxi^g792r*Nx#)j|ZuciQLb6QKkulxoGE$`@OQ- zcUEbba5gYSk^NsBcgem+x#oYwpgx3rceGp&7fT>=|7voqR9lQpbI57T&Oub~LOWC3 z@AL1p#Y&v~E!o*Ew1&5zIJjc+D|wy!6vHr~QkSSKPV6Yx-)ZQ)FQQe(GIl|=a(+TS z5DHkzoA78#Fx0H-W2{r$zV>Vt_b3aoq2q(Df^ew;y*CR|jXS-HpIDq0u9H>sge)0& zT`-BW51We&{?<6II5~3CGsk}9<}hc{u{@XfaHC^~Ug z|8~xjAg#r@SekT>bWUMZrSqwyZoYD4a`6b~nx@IW%Fcs*#_>5zD12u5lF1jj^vbbx<0-Q%@!iFV->Da_ z+>2?~GSAf32|KjN$c-8e(%qt{-%=&d2Wf*B1OG$94OtE4!;6Ka>-i?YKNPOYTBuPG!e zhcBBXUI<+Eq-mDL;d9BUzg?RQ6`qknE%QX`CV*^|)i+C64@P)zc&#b2?*pgOl#2KT zam6zP-OGnp;gAI7fIB2xNR94x+U@~!SSLA68=HcZbq6TJ(OF(K?PeR5_MI0STkR9a zSgq^ow=rj+Hg$C@*I)PR8V^!JMTj%22CuU&$nv55}#N{6P{Hk zy$tD>1-05o_7C0dW1ia%SGeWf&!D-@AF$3pUIcWHxs_ys@xSLZVa5tOr(!WWdqs-S z`mS}&pfxz23scthnCwd>8Qk@d2_Vk1pvK zi~=WpEkAE{uwgkT!(qAt-LZLuhkAQ5?j4s%@KRLti~BpKH6;kJ5cz$W9PcP0YazUvg;WvAb`AeQT=6H?ueJFkZ$kiEjE zyymqE$}<%j#g6m&&n!qX=nN_?d4QrCaF_*RDN68w!o~(zRJ3xFA|Uq z55>Wor|p-e*nta}B>$5N)Z&4{$ez3z3W0~pwSlUOo;q3lU7`4(+bI7cR}fjJm{wHO z%;SZ474Fal81MW2&n?CxuLLv@wSl~fMhY3_NWzXg9b}9xZoQvA(TnO^zL0GzO#HN6 zHtK2$CUO{^0j-e1gRj)DwNK)zR4Q#CUPND_$96M4{*CtpRO;Q^^afdceZr+C8o7)U z_V0)}9g#oJP5%g4SiH>2wH0vJ_Z|Xy@^oS+iD?{v z3wHE41`Ku(%xmH>O<&x_2|o!;NNXtxPFY1c8%0PxqPc+5uc9tquGq%ER3;ooPZkJ_ z=f(K0P@K`_3vBCzqO;qm8e~n4a3=*0Cd41o#MVaI5b$IaGe$Hmhj(eFZGYc-VRo%` zMZ5A;%URTi8NlLunT);Zyc5P8Sey-e?WKjnbA;%La1~uOaic!MBMCBsw*47nz!2}- zyCq%5$|8O`pv0i_p5UHNG{@|>2O-93{7T)$Xv_Ov^^^TiOdS(>^x1Uq&~ZWG)9^fI z(+w2h?%`PJa>rf%!5BJRJ5TM4F3Mr_o}-r-9=w0(VBO$s&wv}EUo`w0E2n)iOlko^Egg=}W^XK6l;55!p*s?gs zuXRvk8GUds**yEsD)VQvxjC$D{UHO4n4f~wM%E_@EnYJiNTQEePmVwg?Q&T|9F9J& z6l^~?=125_K7M!+L}KYj`Y4s7*Ld?|tsCb3{?aanOEM&-7TwA`nnPiRx1U3qb{~xq z=>mHYm@LfwJWgzq&cbd&?C4lVv@n`|>a_XW@cnKZaXAEV}6}mLAPrbmtINCF6^V-Z_ zMMMEF6ZXb8%rar3^2H*Jf5|3MZN!dmsz@=18InEa4&s+{|1h;K-m+Ei0`-PbY53og z7x?N$O4Cele8yj|BM5wPe3K_j5+nAPRdY+Z68?A2 z=e=`|A6U83`=Kaq%}5GP4b?Xd6YZU*rqiYSHW%Ow@&o2YP49x}D>sXc-ZK=Qp7Sz` zKb?(YFD=%AngOw7_1YbB?K{H3c~Ut-j`ao09jiB=GCEhgmAzloD z@EE^0%7A~Im=#`1Fax=U1I^5Vn0`o6SJF7*#jJUXzK90cly@q$u$g2gLmjitkD=_(&A5O zpp8M(#zB4A>RXYa%DgG=pp!I@) z_16jQS{Og8s~KYXFV?l3ARr*{d_arN&iuS^=7s@a4~F$0RSWSQgi@2m2T<|5A%H z<2=9nmE1vQl_zcDq=XVwye%8aImxV!qH}f}uh2D1^jMmkM#RebC>D;|p;0D|8qMC) z8Kb}KZuz=Jg?O@sW4M%@{I+pPhAg@NCHE>wpLGxxdW_xc;m-2A?iMt1d`-s6;bdyk z`c~y}MDX*!`2s!*=a=j_y6Rn(lojJohskFrO0aF#n{v&TRu~xFXdsG+QRro4s%_O= zcvqaA3lV*RIG%4^WYK?u7m=&7+wK@*8Fl6>87xkp(88sf_5eW6tdelioq0ZFWOGDe zDrC*x#fv?$k2?uUwvJQL`-dzJhMb|fwNJ2hi{CSCUdZS133Oj=`(^N}3S0R7@`$nF zW2ZIF8x_34EiKcRB$lq7QZq?*fXLAII>h9o>#-0pr*|@oByFqcw!!%5SF~pjf;FEm#T*gOpDn=uk`-icSMb!)38DXR`e`ge|F7^1&RYiut6 zh@;0+srTXh;_pXN1zGd$+VdO~H>bC5pIxUQZ{8OGou(f>KeMdg6!4dY z*VH~i$hXm%J3bbt&{`J{#={h;9oC~vSnzgqO}A}!u0sZ8!OBk8hKLTx!XO=0shUSm zHlII%x$b<~MEkir)258IWZ7}3a4+laE(YJKo3MEXEH`@Hq+aU= z^LDTN8L3S%hSHb1)$}<%9^<5A8|MH@R``S6On;lpjBMV%YnJ;E!+)<0-?D@x_Afi< zIAg5Q(DyU62J%^O(I-El0+)e7$5+T}eh>6kzV7(WptlObs@f*sQN@Qgw4Tz)b#hGj zMrB%gL*6PkC9Q|ebOrx|PHWJgLkvz{d5O}=xE3(G#8l&~$Bru$S)JYDclAm-k=~RU zMkbu%tjR;5bA#5Z+1CdFaDBo4=e$3%FLw}Td&0C*X8jO(aQ%%LB(S^H#LlOQd3 zl$!w)`vsI?!PTLh+)RAOv&f&&?14hw!G6ItgWx-vquKRPwf_Kc0p5Xe-ooOMrhJWNI5(PZ za$(z*&4i8A@}++t(>aa^b}L~l`sjGGW(DU{(6~L=+2JgJM`cWM@HBH|05*4Z>i_$X99=A_jRTt1{XV%d*Opl&SED2riNG? z6I=?;L5<10D7q@!0x#jB9M;%R!L$%);xG|Z5B?Uj@uIz!;@dlFg_!7moJ05lQH(@$ z$a;$nsnh2<*6fd{1Tc;xr_muF2w&qji_hvzqX85hCw}|KXZ?Jzha%>?Xar_CH_$`%dP2JG}+KfiyG^B#Xt4QbG(Jp!*dmu*Sl0RVes~rnNfQ8vrOvy z{**xZigugATE1#+M6p_wakHx}0*`esn1dCyDNE9}AM5{?|y_)5!Q zcBQ2!{Gn0KlDe0=b4e^yHkEGdN?TZ|(v@Q+F=U&jtYd=9%I~j#kSk|%;g@T{p;zjJ zZrsnsCtCc2bmflEIT>}~Xw>LtK-LC;d!CFYF5ORdrJlOgmzBfd|YojVji; z?09#jzXS5PkdATyp5b<8QT5lqzu!cQ;w)LF-DzO6h3ji^PBLJ)tZIwmm|zQ7 zF#!+JFyTI@Vi)lWDLeBPVf-%NRXMr1w{-@4tXf3rOwjqBJ!Y8}!wmU+l<=>LQZ@}nCDL{!MRs9%rJL-A$ST)?(a8^2N~Y^6SMsy zKc*-?0G{9XTI$sMF<&2>KZL}d@97x#Ty>axx5=k{se~S5M&QTsVjt`;o%Ft0q#wRB zRXesKhJ}6Z^4AX^L`nF3Ds*JFaV}AD^xcZz$!2fdc$g!iX{7y?AjE|kx|xBxQanM# zi+99b>zl$B1YVLtQ<}2dNZ1E&^qV|<($^C*W0Jgf@0*m}QqUn?*5uEu(Th`*psg8NL%Ve$498*(q&b|QytI07kk3f^|CpgJK@}H zEhf&g_KJy^1GYTqY-S;%o8h7F{HSTQ*7;dPxM;NZklK~i6><7#`F+I)?INqlzW%jT zD?(PB;r+6I%{{`B0^Iiz&x?jTtNK)*Md)P)d2ZIfh(al=O`+K(L67d2FaFuxceFew z0o&}b`qe5mg(KcfwuWIl(?i2q`6Wx<5+`Y&fg{jVyZ&4YXVXU6+JhqhT|Q4}pG#6T z*eAEgLg}%9$ToYW+kf`=w>{91|EVQhG%GZidiqqB`fM^;-jZr4FJ(_&IrLLUzLk?z z{Gj=X$b{)=aXkkmO?#VY^p~ev*xh6CXsFDht0yMk=$Dk%gE^o8Ei^cO+nN<;xe9eN z<&_~?Q@yItI#F28=JkE47CaSWf1g`4O>ifzo@vzmXiidFo?;<1OW#+K>Fz9i`ICIL zaSEySbV`^MUp*vCybeKe%ZQUx@=cXp_0oQu2@@I`UK?fs8uH;~aI%^n?QpYDMA=B0 zau+m0D7ZkfN!c#F+@}IQdR9x-%RW>x9vGKTnr4uuX8Rf5b22x|_MYHbAOrkb+YW{` zymgzsX`1rtJFCD~@dQFt0&n`ud^PZS2>y=WjA{B2ZQ6cflj+(02>dLtC~fwu za?ut}S4fbT6rqq)UO`0bbnb-s9?<}uDoVZzG^k=7p>X!n|toffA__?*cR zWw*kKAH#8ME9?A4(BF^je}%+TQv`otTw((Uw#Bv&_@o%Gn|H^y?bypJA@L`iw4g(xH@6ykh<%;}mRN zkNshubutbSQbj^R+K?sgK&~Z}k#u}PFmQ1Z0;@5=zRV5jep%w?vI*}mS$Zt_UW2k? z?%(p1y5*|ndPZf1F_yDrfoGs0oKHIX`cljm7%V-%5HOBw;t)yTO#BD4vmtqj$z zRDR4Uo~-(Uqq=eW?N1~hbz^)ZN9$nTfFkHQNvP>bw!}D+u4+iz;Sc=%5tr#r^j;Z{ z^?#Ba@VLdP57PpC<*TCL`%ZIP*OAIYe&aFukt}?rE5u%kluF~CXs>~Q6bUyXk6uD{ zKnGD!`-2PGQ4wXz!}oyv(nWQ$%}=8p6R#p112asH$iYY%%nH9*QmjFNZbA=4|Csj_ zT-sx~o-_yXV@~J4*@E9Y5*<6%&eLUT3oq9E(R0U)c-4C#yIp@`bB;j1r?6Cy&!!%J z?exh(ir!K~1Q&2dl%1ae@1XX1Fwo=KV{;~inXuXP{8djv*(v6vwu$}2xjC zqCR+HxB${>QGv6xTC=lp7ku_3s0qF1ZRoSCwLKf9|2zK>FB!)5+A0L!^MK~jRrCRs z9DJl~o{x;G*bU1Ft5YB)*BR_^j)NqWw$DvSu|yl&vBaAen%? z6S{8T;ZRKnObm`?nutyfvqc#0Aiqj-m~OGJ(~r9d)0KfunQmwt>TB zt0Doq&WIlIG}WdQB)v)5F@%l|{T@~Tgn)N0p*d~aL11W35;bzfb@WCIIq1K2% z0|#>JS;ySdpPuo83d{!QLzNx;dhn-aqiN4f7~$Yg$!QZJtsBJY)p(M$lWPHr4{vZ& znwLh}HR)1|R?P3$EtFxK#*tQ2g4vLEklN;3XQ;3F;_KbnoN#`FJw#}BDFzx6kZsxb zS-KqO?E5grNhshc#WTf77cDyyCdO~dU)}@UPea@xhooP)^$R|EV!kn9uSo&ERpirY z(vk}o``f(`Cd=V*VLA6Bx89F*6&K?)Hy#Dz5gX5VMUnPZYDWH*4qAI=l_v&5e}1kw zM$7$UkYb47P?He&>zBCc^!*B&@rRvxmj>sh4_CyA}OT5RUP=$@*y+6W@z0+)FH)>kfa);VzV^MSX+XGL8F+k zWy69g*j~yHGE|iUL-NiSoSxE(`=k^-)Ck+CrbU}NlnT5Ui?FuMcGLDl%Ip8JR&r*a z^!y*hGG0OG>|tWE11R{$%MU!oKa{RPL>X43Ft5R}RxhqFI_&tldD(-l2+ zPdo(n3QLD95nmaeugC?<@EC;UkW=`8H^pCSx8by@09@|r?tc@n->QHpZbUL2sgDcXx zDFAM>POoYgx_Js{M`uhHM4UdqE5~S$6bmITFmHfuUeFD91Y@9ce&W5>nCGuCm{QN) z*%?DqVeyS2gEESLe}iJCTIfZs5H-wF)!^`mk|&^Pc5V=|!<#q<2&b>!YJJ^mCB z``)tlUgjk4&<&-*H@5G+Whu{z1`GH#acJ-soOWsd6UEts{khSkkb1fl@8HuL0n>W` zLF-(Rz+(Mmw%J8pFSal5)`4=AvpsKV-U2*u2q0VIwP2(9DmLioWS#b0I&3A>%(BLz zviHFJOk?*Td?vpqA4FpTU)eycyzkvG)o{>jP7SU)dk>V!juShds}lN71e*XRFfFta zE}ha4(f5XDx{L!7w1wT8vjT+FGUE7g0_Jz%D|x_^oSzCuTywncstk1Pzya`8szeCW z8cPYsJJi#;(z3wQEmB_L{!F@I={moe>k=k}pMv9D?u%?ByypoN%Q~;6Gza?hTO(-x zNj;mCN?qogU{%3RGI1?`LF97bjolLX`L=6aGv7p&=i20$@;DQc@~t)|?}=L-?1O7m zHxD^;sR-5VBw!cT(n z5d@7CAvH= zq0QT2*Eqy1zvdD{k8IZne>e?HlHQQW7`adGd#01!WQ|dH%-J2ljk9W%&nT6i@*nf7 zz+jaZP8HD)1hjve)WGFx4e;cCkPG2?zEF6iP7ik07(;0|eyB1>9ht{N^pf|S*4k7b zdYOD^cA@mZev@s^+c4Sdo@L{r0STCFk@?KC3Z!b zhSQ(|581pZUQ}1sKVw~l7xc&EF#m)JzUEWpPMn3OgfjsTWv?0CwZ5lj6JbP25+01T zdZk%@efTdX@5PO$pF=LXy=>1;xyVieF5F(u>NM7FNnbE{;s#MRLqCBWOZ0)eKEVavSfllza`r<@V%z?Mm^bg8NH zr$IyRKpC!69)*Xd82nau=6HW z_<9|O41OEKNVeCsid4#^v##8eXlB*HvL>Tov99Bk6eB}+S`tSbxgtfnLbhJ&{WRar zLk`oGaf`89^d#$LLZx14bBH~d9eyp7e7APFP`Yr6w^kP7kZGfkqo7znF<4y8tenL@ybelq4$3n)dsRz0c55FG!ld!d0m^#PvD z^xp)gi!ZuoFP9x^AtXfRrj zzzzAT#~dglz}jrWI#OY!anWaJD)?UGi27iK)S*{4>MxC^VYsU84uTA@D13~TfVT5h zB8^M;BmZ?B-_SvW36MPQuibw(g&kMdPtkvpg)~SecONVV5QOJo0LzjeL@SVv7Kg~U zK1hdslheZ^f@x;&@4JU*VNkxAL(#nvL#*_(!c6zTOl}#%@TiS`1d&F1)=Hk&GjdHb zPTibR+`g{JqKO!9Tgkmged{%TxRxZ}%jX*y&w}v++{<2J3-=%9bDeXp>-=~Azpwj!-sgSp`+nZ<^SK`-FmEC1TAl+4 z4~WDHnLpwAwiXwI{CC_ux@wy%+Cb!ala8O94pHC_e^!Aa*@OvkK0U(3wRaJpRs%|T z5(0CM^`&VRF?x7jaV$ORLd*#1B6EZa`$!Wapo0R5mFSL_77RV+Q{u{n_~P{Co~(91#&WbE!AL`;~y)K0adyG>4ptGQKaVR2RB-5 z+W^BEy@?#Qf{~~E1=y?{cz<@Kny2Bzipp=gKc`<&4$QEDt*A^tQFRZw?W79&z*iv4 zsG73FC4@`kIND$rV|<~sC|{>WHyFyb@6*K>+YrVbt}!6R4#A|W>TGvdJcvK1xO)LS ze@0(SE}D~n6|O4uF}*m`=#HT31MJ%FFM7PE9*KSUnd6Qj#;|N{Pgina*&r**um+*U zOM5;iiQ(35zm~0^*Nb|*SrVYcvwTljz!-_0j4*RAZ{hP{rR9-{sxU6)(d74Uj;p&j z@cy+GZ^eFi;{QSiEX+Q%I7&!$WiQ{SKg^N_+70nNnyHa87=z91{}&eUH+}fuh{1ow z6aPI|_)k{c*^W0(womf?X|3NSANw;-DD7@&kI{v zlG7nc$W{cV_NHmE8~04=A+Zxo^GD+Pne8A?A;!Nl`?Th35Nzw7I%$vjpj?-UJE!Sw zq?}QO*+$MFXCrG+=j=`^(3&!^mg5@~mhtFJU(_wuT0j8JRH*Z$%N2C@9usfXBMFV^ zBnnYBFO+Wc4nP3uGPbvo$LR~Bx%$8~#itn>(e=ScDacdKH~c2X;e{>WjC^ zlyHNwO$*?pyQI^k_7^;asgF4s1@*>4MAbWklTN$dOFVqQ~RB-e`WAH4%wmpU@)vu5WU-WBuzl{uhe}9ZyZF{pRkC4e)*|& zCb61G!|GVcs^0120h{^nen>I@cd0L)Tnj<=nTM*dSw&dtvCyw!^}CSUo)dM1Ie(`8wIcB1p-kt(+zb+ zMWr{S-$UL077ti4idiLB-IlUIi;t-+5MRre(vl-e2EV9x&9jI3L|Zm zW)MB)`fggF<_w~HYr^V>-1o4CIMi>WB>LFwRFvL8r2rxmw;wg=J;0o<#!NWKFDFOU z23tN)%>@>P(AX-N;(Yj^SUsro{7vtli|4;j%lS{MI4;Gel-z(7el0e5X6y2!%kRwL zj7#O$UlsRMbFL2aUkptmkC!VDL-S;|9x!nSYjTBP!(P&L>jKi#m4}7xLm$YUZ9U#5 zq7^`tux0@}*Zj_!E!Y%4cSYWn9HU&0o!h2s zRB~)B{ms;0tr?SYOLoB1#MatxKtd_Lvz9vfw^AvK<`~Yjm9|pmDo8k|1lv^-Em64z z2sughDk5!a^1^Uy5Wa7@#bnhi2>ne~gct(cB~$%!Bs)Q?SKFiKZKgjFXS7q5QCH;~ z^7WJM?j2rJ56h9I>{?R-=WB>#Ae--X=2vuVBQ694a|@9#&oFPDkqg?_4iGQpXk_X!VpU&+Ea_|1Fzd@MzKz5IK;cj-TWlH=^>wQi>)H4!jXB#}2- z%T|;H)tId90a1Gb7UdD9tO^#boF4stHJI~neP0TK%3SDYnNKq`;EI8%W*7-|wMBAd zmWVAl*Nc@pClKom8yBuX>RxRrLWv%<0B0&YgdsC~&Sy3<_aMb?@y7TiU{<3|%ci1c zzEHR*6Cl+LVU=HR_ouf+fJ94KIIUPuyy4MQI@h?}4vHS*4ot!6mnG?yM|u<@;Rw1c zY6c~$Qj|DxxmTe~`cu06_L(SjfJ_gj zL~&h0TJFtY#}6R_)P4_+EKZWS_ud(CJj6doeY@)bCr26zIICR4+GRB}>H5?R8@ATko9!5(x$gKv5>ob#(~)Tk`qAw;P_v@WITA2!cG z(Rp;}0AtcQWv;Ms!@J#Dni7uv9r_e#uT3qP#%`^g#|b5^t55lH#(Z{#>VONSO4subTU zD#f5pYNW(mfUGDJA{Nm%fsmtC#Hi$BY`CHW{BD(t&HQM3%PF}tHO zXxB^BaZ0rXb_7BcTZ1vMMlJ}e_jtfzQUqP~tuqNFuaFnv-)~gI*?{>+$j%Hr2ey330lHbyyadtU&<_rCC_1Oe~v^TQU zb7Zq(86RV{3k6|h--N;E&3UDhrN$J;jRC48TPri^tbV0nbZr){Qs?aITKAsx(Z*H3 z>hUB&A|q1dq!!*Ayy(0y`}xW)Z&6V{ymBLoZu75Rq$Mo9&9fD`&zz~Y@|mt6vuC=k zUnuSm*kI~OuLw)d9}EBa+KT@fLKxmVWaw-?{Icd(J%{@7}g3Kb<68Aat7N zbwbXJ`^+48dBf`!ywikKfX=d+-zJUB5V?7j!-{ijGR|Mi*Wi3;j8-p=@=p(6O4O2=)ZnVb#}Dt@$B4!Dpx9c zoJuCu$nc=buNDYvdwJf|P3Y1*%%@Uq{yZ;lsoD8ADv^kj-VXgf^B1#ORjuy0@3KBg zyq+!31RFuHjn}emV|z{d=cN25r$q6~C&&5yOJn@On42o3Nb}N@Ph1|x%*(GVyK)lX zlhGc%jOz9ehc?W&t^}_aHV?blHh}d>+eEsjk?Jwg(9U9jUF~Q;=ZV1d>zTT8s94(2 zzlcgaenOQtHYu7_%?FS5E@j{AEP8luYOXA+p6)LFEK34}&FH^z)0KhqlHhdjr7J$& zVe(AU@!_FCm42Q%nB%CEk)d1KdDJ^c^KS_m5HyyA^`>9F^whBIGuT+qrihK&+4-rn z2vKL5AZj(gJ+|X^18XKF5(%9#4B0T@l$--RjgA5a=Mi;mQdGnP>-%Hw!-4AjFbFmK zY$~JIwH-qVa@P*asKuqMb{vRu+?VFqF>W4M*pB$#bH;6CjgX8&kSwB&6h)1uCza1} z-MnhlFXp414s{$m%8iOXH#)sgcU+S&hCUO49lcg{{mU8Vy}j?d`3hjaz>%07*qoM6N<$f?)F8 AMgRZ+ literal 0 HcmV?d00001 diff --git a/stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/mod bar.png b/stepmania/Themes/default/Graphics/OptionIconRowGameplay filled (doubleres).png similarity index 100% rename from stepmania/Themes/default/BGAnimations/ScreenGameplay decorations/mod bar.png rename to stepmania/Themes/default/Graphics/OptionIconRowGameplay filled (doubleres).png diff --git a/stepmania/Themes/default/Graphics/OptionIconRowGameplay icon empty.redir b/stepmania/Themes/default/Graphics/OptionIconRowGameplay icon empty.redir new file mode 100644 index 0000000000..04b2ead777 --- /dev/null +++ b/stepmania/Themes/default/Graphics/OptionIconRowGameplay icon empty.redir @@ -0,0 +1 @@ +_blank \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/ScreenEvaluation StageDisplay.lua b/stepmania/Themes/default/Graphics/ScreenEvaluation StageDisplay.lua deleted file mode 100644 index 4ca35e236a..0000000000 --- a/stepmania/Themes/default/Graphics/ScreenEvaluation StageDisplay.lua +++ /dev/null @@ -1,7 +0,0 @@ -local t = LoadActor("ScreenWithMenuElements stage/stage" ) .. { - BeginCommand=cmd(playcommand,"Set", { - StageToShow = SCREENMAN:GetTopScreen():GetStageStats():GetStage(); - StageNumber = SCREENMAN:GetTopScreen():GetStageStats():GetStageIndex(); - } ); -}; -return t; diff --git a/stepmania/Themes/default/Graphics/ScreenGameplay LeftFrame.redir b/stepmania/Themes/default/Graphics/ScreenGameplay LeftFrame.redir new file mode 100644 index 0000000000..538f7db46c --- /dev/null +++ b/stepmania/Themes/default/Graphics/ScreenGameplay LeftFrame.redir @@ -0,0 +1 @@ +_bumper \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/ScreenGameplay RightFrame.lua b/stepmania/Themes/default/Graphics/ScreenGameplay RightFrame.lua new file mode 100644 index 0000000000..8b53c9f051 --- /dev/null +++ b/stepmania/Themes/default/Graphics/ScreenGameplay RightFrame.lua @@ -0,0 +1,3 @@ +return LoadActor("ScreenGameplay LeftFrame") .. { + InitCommand=cmd(zoomx,-1;); +}; \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/ScreenSelectPlayMode icon/default.lua b/stepmania/Themes/default/Graphics/ScreenSelectPlayMode icon/default.lua index 05c255838f..5b691d989c 100755 --- a/stepmania/Themes/default/Graphics/ScreenSelectPlayMode icon/default.lua +++ b/stepmania/Themes/default/Graphics/ScreenSelectPlayMode icon/default.lua @@ -29,11 +29,8 @@ local t = Def.ActorFrame { LoadFont( "_terminator two 92" ) .. { InitCommand=cmd(x,94;settext,string.upper(gc:GetText());shadowlength,0;zoom,0.7;zoomtowidth,300;rotationz,-90;diffuse,c;shadowlengthx,4;shadowlengthy,0;); }; - LoadFont( "_euromode stroke 44" ) .. { - InitCommand=cmd(horizalign,right;vertalign,bottom;x,72;y,150;settext,ScreenString(gc:GetName().."Explanation");shadowlength,0;zoom,0.5;maxwidth,500;diffuse,color("#000000");diffusealpha,0.35); - }; LoadFont( "_euromode 44" ) .. { - InitCommand=cmd(horizalign,right;vertalign,bottom;x,72;y,150;settext,ScreenString(gc:GetName().."Explanation");shadowlengthx,0;shadowlengthy,3;zoom,0.5;maxwidth,500;diffuse,c;); + InitCommand=cmd(horizalign,right;vertalign,bottom;x,72;y,150;settext,ScreenString(gc:GetName().."Explanation");shadowlengthx,0;shadowlengthy,3;zoom,0.5;maxwidth,500;diffuse,c;strokecolor,color("#000000");); }; }; Def.ActorFrame { diff --git a/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay.lua b/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay.lua new file mode 100644 index 0000000000..40ed2d203d --- /dev/null +++ b/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay.lua @@ -0,0 +1,39 @@ +local stages = Def.ActorFrame { + BeginCommand=cmd(playcommand,"Set";); + CurrentSongChangedMessageCommand=cmd(playcommand,"Set";); +}; + +local ScreenName = Var "LoadingScreen"; + +function MakeBitmapTest() + return LoadFont(ScreenName,"StageDisplay") .. { + InitCommand=cmd(shadowlength,0;uppercase,true;); + }; +end + +for _, s in ipairs(Stage) do + if s == "Stage_Next" then + stages[#stages+1] = MakeBitmapTest() .. { + SetCommand=function(self, params) + local StageToShow = THEME:GetMetric( ScreenName, "StageDisplayStageToShow" ); + local StageIndex = THEME:GetMetric( ScreenName, "StageDisplayStageIndex" ); + self:visible( StageToShow == s ); + self:settext( string.upper(FormatNumberAndSuffix(StageIndex+1)) ); + self:diffuse( StageToColor(s) ); + self:strokecolor( StageToStrokeColor(s) ); + end; + }; + else + stages[#stages+1] = MakeBitmapTest() .. { + SetCommand=function(self, params) + local StageToShow = THEME:GetMetric( ScreenName, "StageDisplayStageToShow" ); + self:visible( StageToShow == s ); + self:settext( StageToLocalizedString(StageToShow) ); + self:diffuse( StageToColor(s) ); + self:strokecolor( StageToStrokeColor(s) ); + end; + } + end +end + +return stages; diff --git a/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/default.lua b/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/default.lua deleted file mode 100644 index f18d932c86..0000000000 --- a/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/default.lua +++ /dev/null @@ -1,11 +0,0 @@ -local t = LoadActor("stage" ) .. { - BeginCommand=cmd(playcommand,"Update"); - CurrentSongChangedMessageCommand=cmd(playcommand,"Update"); - UpdateCommand=cmd(playcommand,"Set", { - StageToShow = GAMESTATE:GetCurrentStage(); - StageIndex = GAMESTATE:GetStageIndex(); - } ); -}; - -return t; - diff --git a/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/stage.lua b/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/stage.lua deleted file mode 100644 index 451f315bdd..0000000000 --- a/stepmania/Themes/default/Graphics/ScreenWithMenuElements StageDisplay/stage.lua +++ /dev/null @@ -1,31 +0,0 @@ -local stages = Def.ActorFrame {}; - -function MakeBitmapTest() - return LoadFont(Var "LoadingScreen","StageDisplay") .. { - InitCommand=cmd(shadowlength,0;uppercase,true;); - }; -end - -for _, s in ipairs(Stage) do - if s == "Stage_Next" then - stages[#stages+1] = MakeBitmapTest() .. { - SetCommand=function(self, params) - self:visible( params.StageToShow == s ); - self:settext( string.upper(FormatNumberAndSuffix(params.StageIndex+1)) ); - self:diffuse( StageToColor(s) ); - self:strokecolor( StageToStrokeColor(s) ); - end; - }; - else - stages[#stages+1] = MakeBitmapTest() .. { - SetCommand=function(self, params) - self:visible( params.StageToShow == s ); - self:settext( StageToLocalizedString(params.StageToShow) ); - self:diffuse( StageToColor(s) ); - self:strokecolor( StageToStrokeColor(s) ); - end; - } - end -end - -return stages; diff --git a/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 LeftFrame.redir b/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 LeftFrame.redir new file mode 100644 index 0000000000..538f7db46c --- /dev/null +++ b/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 LeftFrame.redir @@ -0,0 +1 @@ +_bumper \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 RightFrame.lua b/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 RightFrame.lua new file mode 100644 index 0000000000..98c9ec02fe --- /dev/null +++ b/stepmania/Themes/default/Graphics/ScreenWithMenuElements2 RightFrame.lua @@ -0,0 +1,3 @@ +return LoadActor("ScreenWithMenuElements2 LeftFrame") .. { + InitCommand=cmd(zoomx,-1;); +}; \ No newline at end of file diff --git a/stepmania/Themes/default/Graphics/StreamDisplay hot.png b/stepmania/Themes/default/Graphics/StreamDisplay hot.png index 43aee7b55e0adb5727103af3b1ba3fb47de5bd25..6c6956e44e5b735d911b41c6b822b7eff64c0345 100644 GIT binary patch delta 1016 zcmVHq&P?!z`)5?_!B*=3khW}9%eWmyFJNB$LvwBZ+VyPY*^ zPwVG={&Tj!8trUHFCM1-{rsoWX2!a$>tp^7^UQ6p#$PdeC?fy={VE#N?L|#{9P2hB zhU(5u&lTncW~CAjYDX7hTX3z!e}5g58Qa>t-m3*>N0O5m{|;{@2)0ALfgmpyy*A*j z?mCS|9iUb$1-qAoq5rXTkuIVl{klR7Q_{fUlCi+8<@Uf7ErM=i2$ChIw(q)b8$pe` z(KoCZ=iUZ9h1c5+g~c>*ZD?Ajdj;=o($Z>Htg$x~vG0exBr&OK48ROdmw(oH_;a!j z>kbon0E(cQLtHep22jKN!t;RND6NKB%Eg0)XlzMvV$pU_5d_{O+VdvD!*ZQH9&_8Y zdxWBmtMLzaU%Cj+h>DpNCx{WfwMK+W*iy&aqZZ}+c?>+xSYDxqby!S@tau7XuNK60 zN<(cwD?vDk0n2<@JqpNd!G9Ev-iY?Lc7r*X(ShNW7CNTesl?0y#K1Wf>DS4*F!KFO z4{YjHZ*Z+1!TxA953oB`vUIHsjA48j!6XVoGUM!9JOHc4w1EZTSZ)erNU(4Ryl+f^p~tcMSu%+Hc?#>;~3?y z@8AHD2e=qDWj^9X!l}Z#-~ka!ly!D=P~2m?q6yP;BOFc$=7Us#W8jN4`DzdjGU20U zu!)vZl5ORB&xh-Jx_`L^luC5L*82cd60s@^XIapeE6J(LBL-8fG9QfZcLDdEagyj5@YzU{T$PkjKz|t)grW!Jcl4-#A>q@| zTXbrH*woJpnOlB@C2;7bq470bH3;weE(ovL*;6funN5_!h}qm56xjTp3BqJRUV|Vv z5qowRM+QL_Qlo3(#2c7&1_Aqi=mFdB1M5h46eM#-<0%$?@z mAfPPq8+QV_HO@UKe+K}-CBCwC)qnc{00009)471Vgw%-5$ukT@E3nWfKsG=j-q%K;9^exe3+$`Xlh9{O-CYsA+8RFAVP);=Z)A3CDQRyIZ41fB1;v^O; ziRD;CpPclbaXGwXaxc89z~y>S9#qjl4ujAYRNYnSokgkwC<8(*3+j4MDjnMreNY6? zGWl}?ryS}lS`-j^wUN&+8YeGmTC%0l3Hr)f#K36))5WAz^_+mUi&$M3PL$3kU?mmJ zHB{X#v7nPSsbDgb=_qr}G9XkO-2vGuE02oO{{Zmft1+suGk*X8002ovPDHLkV1jJ= B%E15t diff --git a/stepmania/Themes/default/Graphics/StreamDisplay normal.png b/stepmania/Themes/default/Graphics/StreamDisplay normal.png index 72af0d1e2c449bd93871034466cf989bd62cb4ba..734a4c6750f7b577bd2931b40a292bac26d84a9c 100644 GIT binary patch delta 1184 zcmV;R1Yi4@8N41LiBL{Q4GJ0x0000DNk~Le0001h0000W2m$~A098Qea)Z!)l!Pu%7?15C2!h6-Ms;LXr6B(K1ppNI zlXiiC@Ee`XYlZW{u|$( zKG1uHc#eD?%=Hl9J^eSn1A}KgkAMG&;R_*;84!-^zISflnQ$)ednqg%Q7US6f7icgl zKRL>P^F=lpz}nOk2vZL}U)lj}P)##H5woNSyv4rNv>9Qc_(%{p5x8E3_${%N*jQDtj*EEgbXz<*GAxHzt9R!hb z${>=el5wd%ub4idp;p;351W(awoYDdsr{1Y_!lqCWP3?GMh^E9m z=-c+ynD+ti4?#P1keSjM?3sz6#B7u{Vn~A^AttA^Zd6rYmIjtPW@JY!k%|1b?SwVJ zrOi22<`pEk#?7o~NPkAgV5N|JJ_OOUO|wK+0rU(jUDd|s!Xfq{DoCd?bXNw!{VLu& zLC`7#8VF(wK{^9j1uL=MSN1g;IGRWizlo>s)CX8yVciFylL3=1K!X%HS60!%Y}~RC z<36_vx}O6ES`e8?SO*nb>V>KKv)kB@&of>^QGf)qm{+#uziio)rf?w-Iws zRYN)OkroDfHau_BpjeA@@GqY;VKdMMeUQ|*?gy0i*%PtAZH1gVCMMFz0W zfNiKd%h4PzXMeWRH@8H^*Y5)!&+tRou>AqqND-qIv217!_DgcW{c&^Bw$7aCb-h;E zvh~dn@9hL2ODST)0vF~$c$JuL!%J;3BbCU{n)}COz@`@T7c^r1 z^6)-6ns@1C_p<&(iXcVE9xs(5F3JF!2B{}B;0 delta 503 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 diff --git a/stepmania/Themes/default/Graphics/_shared options header.lua b/stepmania/Themes/default/Graphics/_shared options header.lua deleted file mode 100644 index a2c639bf5c..0000000000 --- a/stepmania/Themes/default/Graphics/_shared options header.lua +++ /dev/null @@ -1,7 +0,0 @@ -return Def.ActorFrame{ - -- timer background - LoadActor(THEME:GetPathB("","_frame 3x1"), "headers", 48)..{ - --InitCommand=cmd( x,SCREEN_CENTER_X+(SCREEN_WIDTH/5.35) ); - InitCommand=cmd( x,SCREEN_RIGHT-(SCREEN_WIDTH/3.1825) ); - }; -}; \ No newline at end of file diff --git a/stepmania/Themes/default/Scripts/Colors.lua b/stepmania/Themes/default/Scripts/Colors.lua index 5214f65fcd..5e711cd79f 100644 --- a/stepmania/Themes/default/Scripts/Colors.lua +++ b/stepmania/Themes/default/Scripts/Colors.lua @@ -76,7 +76,7 @@ function StageToColor( stage ) end function StageToStrokeColor( stage ) - local c = StageToColor(ddt); + local c = StageToColor(stage); return { c[1]/2, c[2]/2, c[3]/2, c[4] }; end diff --git a/stepmania/Themes/default/Scripts/StageMods.lua b/stepmania/Themes/default/Scripts/StageMods.lua index c031c34899..b5afbea321 100644 --- a/stepmania/Themes/default/Scripts/StageMods.lua +++ b/stepmania/Themes/default/Scripts/StageMods.lua @@ -48,7 +48,7 @@ function ScreenSelectMusic:setupmusicstagemods() GAMESTATE:SetCurrentSteps( pn, steps ) GAMESTATE:GetPlayerState(pn):SetPlayerOptions( "ModsLevel_Stage", po ) GAMESTATE:SetPreferredDifficulty( pn, difficulty ) - MESSAGEMAN:Broadcast( "PlayerOptionsChangedP" .. (Reverse[pn]+1) ) + MESSAGEMAN:Broadcast( "PlayerOptionsChanged", {PlayerNumber = pn} ) end GAMESTATE:SetSongOptions( "ModsLevel_Stage", so ) @@ -68,7 +68,7 @@ function ScreenSelectMusic:setupcoursestagemods() for pn in ivalues(GAMESTATE:GetHumanPlayers()) do GAMESTATE:GetPlayerState(pn):SetPlayerOptions( "ModsLevel_Stage", po ) - MESSAGEMAN:Broadcast( "PlayerOptionsChangedP" .. (Reverse[pn]+1) ) + MESSAGEMAN:Broadcast( "PlayerOptionsChanged", {PlayerNumber = pn} ) end GAMESTATE:SetSongOptions( "ModsLevel_Stage", so ) diff --git a/stepmania/Themes/default/metrics.ini b/stepmania/Themes/default/metrics.ini index 5c6f58e979..272b0b613a 100644 --- a/stepmania/Themes/default/metrics.ini +++ b/stepmania/Themes/default/metrics.ini @@ -139,12 +139,11 @@ Choice1="screen,ScreenSelectStyle2" [ScreenProfileLoad] Class="ScreenProfileLoad" -Fallback="ScreenWithMenuElements" +Fallback="ScreenWithMenuElementsBlank" NextScreen=ScreenCautionBranch() PrevScreen=ScreenTitleBranch() TimerSeconds=-1 LoadEdits=true -FooterOnCommand=visible,false [ScreenProfileSave] Class="ScreenProfileSave" @@ -174,6 +173,14 @@ FoldOnJoin=true [ScreenWithMenuElements2] Fallback="ScreenWithMenuElements" +LeftFrameX=SCREEN_CENTER_X-320 +LeftFrameY=SCREEN_CENTER_Y +LeftFrameOnCommand= +LeftFrameOffCommand= +RightFrameX=SCREEN_CENTER_X+320 +RightFrameY=SCREEN_CENTER_Y +RightFrameOnCommand= +RightFrameOffCommand= [ScreenSelectStyle2] Fallback="ScreenWithMenuElements2" @@ -982,6 +989,14 @@ SecondaryScoreP2X=SCREEN_CENTER_X+20 SecondaryScoreP2Y=SCREEN_CENTER_Y+0 SecondaryScoreP2OnCommand= SecondaryScoreP2OffCommand= +LeftFrameX=SCREEN_CENTER_X-320 +LeftFrameY=SCREEN_CENTER_Y +LeftFrameOnCommand= +LeftFrameOffCommand= +RightFrameX=SCREEN_CENTER_X+320 +RightFrameY=SCREEN_CENTER_Y +RightFrameOnCommand= +RightFrameOffCommand= PlayerOptionsP1X=SCREEN_CENTER_X+0 PlayerOptionsP1Y=SCREEN_CENTER_Y+194 PlayerOptionsP1OnCommand=zoom,0.5;addy,100;linear,0.5;addy,-100 @@ -1156,6 +1171,8 @@ PlayerType="PlayerShared" [ScreenEvaluation] Fallback="ScreenWithMenuElements" Class="ScreenEvaluation" +StageDisplayStageIndex=SCREENMAN:GetTopScreen():GetStageStats():GetStageIndex() +StageDisplayStageToShow=SCREENMAN:GetTopScreen():GetStageStats():GetStage() Summary=false TimerSeconds=15 PlayerOptionsSeparator="," @@ -2037,6 +2054,8 @@ Fallback="Screen" AllowDisabledPlayerInput=false StyleIcon=true ShowStageDisplay=false +StageDisplayStageToShow=GAMESTATE:GetCurrentStage() +StageDisplayStageIndex=GAMESTATE:GetStageIndex() MemoryCardIcons=true CancelTransitionsOut=false HeaderX=SCREEN_LEFT+(SCREEN_WIDTH/4.25) @@ -2062,8 +2081,7 @@ MemoryCardDisplayP2OnCommand=draworder,97; MemoryCardDisplayP2OffCommand= //MemoryCardDisplayP2OffCommand=bouncebegin,0.5;addx,25; TimerMetricsGroup="MenuTimer" -//TimerX=SCREEN_CENTER_X+270 -TimerX=SCREEN_RIGHT-60 +TimerX=SCREEN_CENTER_X+270 TimerY=SCREEN_TOP-11 TimerOnCommand=draworder,97;linear,0.25;addy,33 TimerOffCommand=linear,0.25;addy,-44; @@ -2554,9 +2572,20 @@ TextZoom=0.5 Uppercase=false [OptionIconRow] +NumOptionIcons=6 + +[OptionIconRowSelectMusic] +Fallback="OptionIconRow" SpacingX=46 SpacingY=0 -NumOptionIcons=6 + +[OptionIconRowGameplay] +Fallback="OptionIconRow" +SpacingX=0 +SpacingY=30 + +[OptionIconRowEvaluation] +Fallback="OptionIconRowGameplay" [TransitionOniFade] BannerWidth=512