diff --git a/BGAnimations/ScreenEvaluation common/Shared/EventOverlay.lua b/BGAnimations/ScreenEvaluation common/Shared/EventOverlay.lua index adb446f81..e3be52bb7 100644 --- a/BGAnimations/ScreenEvaluation common/Shared/EventOverlay.lua +++ b/BGAnimations/ScreenEvaluation common/Shared/EventOverlay.lua @@ -12,7 +12,7 @@ local borderWidth = 2 local SetRpgStyle = function(eventAf) eventAf:GetChild("MainBorder"):diffuse(RpgYellow) eventAf:GetChild("BackgroundImage"):visible(true) - eventAf:GetChild("BackgroundColor"):diffuse(color("0,0,0,0.3")) + eventAf:GetChild("BackgroundColor"):diffuse(color("0,0,0,0.8")) eventAf:GetChild("HeaderBorder"):diffuse(RpgYellow) eventAf:GetChild("HeaderBackground"):diffusetopedge(color("0.275,0.510,0.298,1")):diffusebottomedge(color("0.235,0.345,0.184,1")) eventAf:GetChild("Header"):diffuse(RpgYellow) @@ -504,7 +504,7 @@ for player in ivalues(PlayerNumber) do -- Main Black cement background Def.Sprite { Name="BackgroundImage", - Texture=THEME:GetPathG("", "_VisualStyles/SRPG5/Overlay-BG.png"), + Texture=THEME:GetPathG("", "_VisualStyles/SRPG6/Overlay-BG.png"), InitCommand=function(self) self:CropTo(paneWidth, paneHeight) end diff --git a/BGAnimations/ScreenEvaluationStage in/default.lua b/BGAnimations/ScreenEvaluationStage in/default.lua index e6a56567d..1d4fb8d96 100755 --- a/BGAnimations/ScreenEvaluationStage in/default.lua +++ b/BGAnimations/ScreenEvaluationStage in/default.lua @@ -1,22 +1,75 @@ -- assume that all human players failed -local img = "failed text.png" +local failed = true -- loop through all available human players for player in ivalues(GAMESTATE:GetHumanPlayers()) do -- if any of them passed, we want to display the "cleared" graphic if not STATSMAN:GetCurStageStats():GetPlayerStageStats(player):GetFailed() then - img = "cleared text.png" + failed = false end end -return Def.ActorFrame { - Def.Quad{ - InitCommand=function(self) self:FullScreen():diffuse(Color.Black) end, - OnCommand=function(self) self:sleep(0.2):linear(0.5):diffusealpha(0) end, - }, +if ThemePrefs.Get("VisualStyle") ~= "SRPG6" then + local img = failed and "failed text.png" or "cleared text.png" - LoadActor(img)..{ - InitCommand=function(self) self:Center():zoom(0.8):diffusealpha(0) end, - OnCommand=function(self) self:accelerate(0.4):diffusealpha(1):sleep(0.6):decelerate(0.4):diffusealpha(0) end + return Def.ActorFrame { + Def.Quad{ + InitCommand=function(self) self:FullScreen():diffuse(Color.Black) end, + OnCommand=function(self) self:sleep(0.2):linear(0.5):diffusealpha(0) end, + }, + + LoadActor(img)..{ + InitCommand=function(self) self:Center():zoom(0.8):diffusealpha(0) end, + OnCommand=function(self) self:accelerate(0.4):diffusealpha(1):sleep(0.6):decelerate(0.4):diffusealpha(0) end + } + } +else + local af = Def.ActorFrame { + InitCommand=function(self) + self:xy(_screen.cx, _screen.cy) + end, + Def.Quad{ + InitCommand=function(self) + self:zoomto(_screen.w, 100):diffuse(Color.Black):diffusealpha(0):fadetop(0.2):fadebottom(0.2) + end, + OnCommand=function(self) + self:linear(0.25):diffusealpha(0.7):sleep(2):linear(0.25):diffusealpha(0) + end, + }, } -} \ No newline at end of file + + if failed then + af[#af+1] = Def.Sprite { + Texture=THEME:GetPathG("", "_VisualStyles/SRPG6/YouDied.png"), + InitCommand=function(self) self:zoom(0.36):diffusealpha(0) end, + OnCommand=function(self) + self:linear(0.25):diffusealpha(1):linear(2):zoom(0.38):linear(0.25):diffusealpha(0):zoom(0.39) + SOUND:PlayOnce(THEME:GetPathS("", "SRPG6-YouDied.ogg")) + end + } + else + local image = THEME:GetPathG("", "_VisualStyles/SRPG6/EnemyFelled.png") + if not GAMESTATE:IsCourseMode() and GAMESTATE:GetCurrentSong():GetLastSecond() > 16 * 60 then + image = THEME:GetPathG("", "_VisualStyles/SRPG6/GreatEnemyFelled.png") + end + + af[#af+1] = Def.Sprite { + Texture=image, + InitCommand=function(self) self:zoomx(0.4):zoomy(0.38):diffusealpha(0) end, + OnCommand=function(self) + self:linear(0.25):diffusealpha(0.15):decelerate(2):zoomx(0.44):linear(0.25):diffusealpha(0) + SOUND:PlayOnce(THEME:GetPathS("", "SRPG6-EnemyFelled.ogg")) + end + } + + af[#af+1] = Def.Sprite { + Texture=image, + InitCommand=function(self) self:zoom(0.38):diffusealpha(0) end, + OnCommand=function(self) + self:linear(0.25):diffusealpha(1):linear(2):linear(0.25):diffusealpha(0) + end + } + end + + return af +end \ No newline at end of file diff --git a/BGAnimations/ScreenGameplay underlay/PerPlayer/StepStatistics/Scorebox.lua b/BGAnimations/ScreenGameplay underlay/PerPlayer/StepStatistics/Scorebox.lua index 5ab53f9ff..d71cff139 100644 --- a/BGAnimations/ScreenGameplay underlay/PerPlayer/StepStatistics/Scorebox.lua +++ b/BGAnimations/ScreenGameplay underlay/PerPlayer/StepStatistics/Scorebox.lua @@ -259,10 +259,10 @@ local af = Def.ActorFrame{ }, -- SRPG Logo Def.Sprite{ - Texture=THEME:GetPathG("", "_VisualStyles/SRPG5/logo_small (doubleres).png"), - Name="SRPG5Logo", + Texture=THEME:GetPathG("", "_VisualStyles/SRPG6/logo_main (doubleres).png"), + Name="SRPG6Logo", InitCommand=function(self) - self:diffusealpha(0.4):zoom(0.32):addy(3):diffusealpha(0) + self:diffusealpha(0.4):zoom(0.05):addy(3):diffusealpha(0) end, LoopScoreboxCommand=function(self) if cur_style == 1 then diff --git a/BGAnimations/ScreenOptionsService overlay/Support.lua b/BGAnimations/ScreenOptionsService overlay/Support.lua index 69a4c26b3..f70863df9 100644 --- a/BGAnimations/ScreenOptionsService overlay/Support.lua +++ b/BGAnimations/ScreenOptionsService overlay/Support.lua @@ -21,8 +21,8 @@ local a = Def.Actor{} a.OnCommand=function(self) SCREENMAN:GetTopScreen():AddInputCallback( InputHandler ) end a.BeginCommand=function(self) - -- In case we switched into SRPG5 and had Rainbow Mode enabled, disable it. - if ThemePrefs.Get("VisualStyle") == "SRPG5" and ThemePrefs.Get("RainbowMode") == true then + -- In case we switched into SRPG6 and had Rainbow Mode enabled, disable it. + if ThemePrefs.Get("VisualStyle") == "SRPG6" and ThemePrefs.Get("RainbowMode") == true then ThemePrefs.Set("RainbowMode", false) end diff --git a/BGAnimations/ScreenPromptToSetSrpgVisualStyle background.redir b/BGAnimations/ScreenPromptToSetSrpgVisualStyle background.redir new file mode 100644 index 000000000..9c3798722 --- /dev/null +++ b/BGAnimations/ScreenPromptToSetSrpgVisualStyle background.redir @@ -0,0 +1 @@ +_dark bg \ No newline at end of file diff --git a/BGAnimations/ScreenPromptToSetSrpgVisualStyle overlay.lua b/BGAnimations/ScreenPromptToSetSrpgVisualStyle overlay.lua new file mode 100644 index 000000000..1b3b34db4 --- /dev/null +++ b/BGAnimations/ScreenPromptToSetSrpgVisualStyle overlay.lua @@ -0,0 +1,103 @@ +local text_width = 420 + +local _zoom = { + active = WideScale(1.15,1.1), + inactive = WideScale(0.55,0.5) +} +local active_index = 0 +local choice_actors = {} +local af + +local InputHandler = function(event) + if not event.PlayerNumber or not event.button then return false end + + if event.type == "InputEventType_FirstPress" then + if event.GameButton == "MenuRight" or event.GameButton == "MenuLeft" then + -- old active choice loses focus + choice_actors[active_index]:diffuse(1,1,1,1):finishtweening():linear(0.1):zoom(_zoom.inactive) + -- update active_index + active_index = (active_index + (event.GameButton=="MenuRight" and 1 or -1)) % 2 + -- new active choice gains focus + choice_actors[active_index]:diffuse(PlayerColor(PLAYER_2)):finishtweening():linear(0.1):zoom(_zoom.active) + --play sound + af:queuecommand("DirectionButton") + + elseif event.GameButton == "Start" then + -- if the player wants to change to the SRPG6 style. + if active_index == 0 then + SL.SRPG6:ActivateVisualStyle() + -- Set the event so that this screen doesn't show up again. + else + ThemePrefs.Set("LastActiveEvent", "SRPG6") + end + + local top_screen = SCREENMAN:GetTopScreen() + top_screen:SetNextScreenName("ScreenTitleMenu"):StartTransitioningScreen("SM_GoToNextScreen") + end + end +end + +local t = Def.ActorFrame{ OnCommand=function(self) af=self; SCREENMAN:GetTopScreen():AddInputCallback(InputHandler) end } + +t[#t+1] = LoadFont("Common Normal")..{ + Text=ScreenString("Paragraph1"), + InitCommand=function(self) + self:xy(_screen.cx, 90):_wrapwidthpixels(text_width):diffusealpha(0):zoom(WideScale(2.15,2)) + end, + OnCommand=function(self) self:linear(0.15):diffusealpha(1) end +} + +t[#t+1] = LoadFont("Common Normal")..{ + Text=ScreenString("Paragraph2"), + InitCommand=function(self) + self:xy(_screen.cx, 350):_wrapwidthpixels(text_width):diffusealpha(0):zoom(WideScale(1.15,1)) + end, + OnCommand=function(self) self:linear(0.15):diffusealpha(1) end +} + +local choices_af = Def.ActorFrame{ + InitCommand=function(self) self:diffusealpha(0):y(225) end, + OnCommand=function(self) self:sleep(0.333):linear(0.15):diffusealpha(1) end, +} + +choices_af[#choices_af+1] = Def.ActorFrame{ + InitCommand=function(self) + self:x(_screen.cx-80):diffuse( PlayerColor(PLAYER_2) ):zoom(_zoom.active) + choice_actors[0] = self + end, + + LoadFont("Common Bold")..{ + Text=THEME:GetString("ScreenPromptToResetPreferencesToStock","Yes"), + InitCommand=function(self) self:zoom(1.1) end + }, + LoadFont("Common Normal")..{ + Text=ScreenString("YesInfo"), + InitCommand=function(self) self:y(32) end, + } +} + + +choices_af[#choices_af+1] = Def.ActorFrame{ + InitCommand=function(self) + self:x(_screen.cx+80):zoom(_zoom.inactive) + choice_actors[1] = self + end, + + LoadFont("Common Bold")..{ + Text=THEME:GetString("ScreenPromptToResetPreferencesToStock","No"), + InitCommand=function(self) self:zoom(1.1) end + }, + LoadFont("Common Normal")..{ + Text=ScreenString("NoInfo"), + InitCommand=function(self) self:y(32) end, + } +} + +t[#t+1] = choices_af + +-- sound effect +t[#t+1] = LoadActor( THEME:GetPathS("ScreenSelectMaster", "change") )..{ + DirectionButtonCommand=function(self) self:play() end +} + +return t \ No newline at end of file diff --git a/BGAnimations/ScreenSelectColor underlay.lua b/BGAnimations/ScreenSelectColor underlay.lua index f340e6855..d5264efc4 100644 --- a/BGAnimations/ScreenSelectColor underlay.lua +++ b/BGAnimations/ScreenSelectColor underlay.lua @@ -8,7 +8,7 @@ local ColorSelected = false local NumHeartsToDraw = IsUsingWideScreen() and 11 or 7 local style = ThemePrefs.Get("VisualStyle") -local colorTable = (style == "SRPG5") and SL.SRPG5.Colors or SL.DecorativeColors +local colorTable = (style == "SRPG6") and SL.SRPG6.Colors or SL.DecorativeColors local factionBmt local text @@ -33,10 +33,12 @@ input = function(event) if event.GameButton == "MenuRight" then wheel:scroll_by_amount(1) underlay:GetChild("change_sound"):play() + underlay:playcommand("Preview") elseif event.GameButton == "MenuLeft" then wheel:scroll_by_amount(-1) underlay:GetChild("change_sound"):play() + underlay:playcommand("Preview") elseif event.GameButton == "Start" then ColorSelected = true @@ -78,8 +80,9 @@ local wheel_item_mt = { self.heart = subself subself:diffusealpha(0) subself:zoom(0.25) - if style == "SRPG5" then - subself:shadowlength(3) + if style == "SRPG6" then + subself:blend("BlendMode_Add") + subself:zoom(0.35) end end, OnCommand=function(subself) @@ -141,9 +144,9 @@ local wheel_item_mt = { self.container:effectmagnitude(0,0,0) end - if style == "SRPG5" and has_focus then + if style == "SRPG6" and has_focus then local idx = self.color_index % #colorTable + 1 - factionBmt:settext(SL.SRPG5.GetFactionName(idx)) + factionBmt:settext(SL.SRPG6.GetFactionName(idx)) end end, @@ -183,30 +186,30 @@ local t = Def.ActorFrame{ CaptureCommand=function(self) SCREENMAN:GetTopScreen():AddInputCallback(input) end, - FinishCommand=function(self) - self:GetChild("start_sound"):play() - + PreviewCommand=function(self) SL.Global.ActiveColorIndex = FindInTable(wheel:get_info_at_focus_pos(), colorTable) SL.Global.ActiveColorIndex = (SL.Global.ActiveColorIndex % #colorTable) + 1 ThemePrefs.Set("SimplyLoveColor", SL.Global.ActiveColorIndex) ThemePrefs.Save() - + MESSAGEMAN:Broadcast("ColorSelected") - + end, + FinishCommand=function(self) + self:GetChild("start_sound"):play() SCREENMAN:GetTopScreen():RemoveInputCallback(input) SCREENMAN:GetTopScreen():StartTransitioningScreen("SM_GoToNextScreen") end, wheel:create_actors( "ColorWheel", NumHeartsToDraw, wheel_item_mt, _screen.cx, _screen.cy ) } -if style == "SRPG5" then +if style == "SRPG6" then t[#t+1] = Def.BitmapText{ Font="Common Normal", Text="Choose your faction!", InitCommand=function(self) self:xy(_screen.cx, 80) self:zoom(1.5) - self:diffuse(color(SL.SRPG5.TextColor)) + self:diffuse(color(SL.SRPG6.TextColor)) self:shadowlength(0.5) end } @@ -219,7 +222,7 @@ if style == "SRPG5" then self:xy(_screen.cx, _screen.h - 110) self:zoom(2.0) - self:diffuse(color(SL.SRPG5.TextColor)) + self:diffuse(color(SL.SRPG6.TextColor)) self:shadowlength(0.5) self:wrapwidthpixels(150) end diff --git a/BGAnimations/ScreenSelectMusic background.lua b/BGAnimations/ScreenSelectMusic background.lua index cb07817a3..a0db484b8 100755 --- a/BGAnimations/ScreenSelectMusic background.lua +++ b/BGAnimations/ScreenSelectMusic background.lua @@ -1,4 +1,4 @@ -if not ThemePrefs.Get("RainbowMode") and ThemePrefs.Get("VisualStyle") ~= "SRPG5" then return Def.Actor{ InitCommand=function(self) self:visible(false) end } end +if not ThemePrefs.Get("RainbowMode") and ThemePrefs.Get("VisualStyle") ~= "SRPG6" then return Def.Actor{ InitCommand=function(self) self:visible(false) end } end return Def.ActorFrame{ Def.Quad{ @@ -9,7 +9,7 @@ return Def.ActorFrame{ Def.Quad{ InitCommand=function(self) - self:diffuse(ThemePrefs.Get("VisualStyle") == "SRPG5" and Color.Black or Color.White):Center():FullScreen() + self:diffuse(ThemePrefs.Get("VisualStyle") == "SRPG6" and Color.Black or Color.White):Center():FullScreen() :sleep(0.6):linear(0.5):diffusealpha(0) :queuecommand("Hide") end, diff --git a/BGAnimations/ScreenSystemLayer overlay.lua b/BGAnimations/ScreenSystemLayer overlay.lua index 427b4fe6e..23ed33502 100644 --- a/BGAnimations/ScreenSystemLayer overlay.lua +++ b/BGAnimations/ScreenSystemLayer overlay.lua @@ -3,8 +3,8 @@ local t = Def.ActorFrame{ InitCommand=function(self) - -- In case we loaded the theme with SRPG5 and had Rainbow Mode enabled, disable it. - if ThemePrefs.Get("VisualStyle") == "SRPG5" and ThemePrefs.Get("RainbowMode") == true then + -- In case we loaded the theme with SRPG6 and had Rainbow Mode enabled, disable it. + if ThemePrefs.Get("VisualStyle") == "SRPG6" and ThemePrefs.Get("RainbowMode") == true then ThemePrefs.Set("RainbowMode", false) ThemePrefs.Save() end @@ -38,8 +38,8 @@ local function CreditsText( player ) local screenName = screen:GetName() if screenName == "ScreenTitleMenu" or screenName == "ScreenTitleJoin" or screenName == "ScreenLogo" then - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - textColor = color(SL.SRPG5.TextColor) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + textColor = color(SL.SRPG6.TextColor) shadowLength = 0.4 end elseif (screen:GetName() == "ScreenEvaluationStage") or (screen:GetName() == "ScreenEvaluationNonstop") then @@ -171,8 +171,8 @@ t[#t+1] = LoadFont("Common Footer")..{ local textColor = Color.White local screenName = screen:GetName() if screen ~= nil and (screenName == "ScreenTitleMenu" or screenName == "ScreenTitleJoin" or screenName == "ScreenLogo") then - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - textColor = color(SL.SRPG5.TextColor) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + textColor = color(SL.SRPG6.TextColor) end end self:diffuse(textColor) @@ -344,13 +344,24 @@ local NewSessionRequestProcessor = function(res, gsInfo) local events = data["activeEvents"] local easter_eggs = PREFSMAN:GetPreference("EasterEggs") local game = GAMESTATE:GetCurrentGame():GetName() + local style = ThemePrefs.Get("VisualStyle") if events ~= nil and easter_eggs and game == "dance" then local last_active_event = ThemePrefs.Get("LastActiveEvent") for event in ivalues(events) do - if event["shortName"] == "SRPG5" and last_active_event ~= "SRPG5" then - SL.SRPG5:ActivateVisualStyle() - break + if event["shortName"] == "SRPG6" then + -- If we're already on the SRPG6 theme, then set the last_active_event + -- if it's not already set to SRPG so that we don't bring up the prompt. + if last_active_event ~= "SRPG6" and style == "SRPG6" then + ThemePrefs.Set("LastActiveEvent", "SRPG6") + last_active_event = "SRPG6" + end + + if last_active_event ~= "SRPG6" then + local top_screen = SCREENMAN:GetTopScreen() + top_screen:SetNextScreenName("ScreenPromptToSetSrpgVisualStyle"):StartTransitioningScreen("SM_GoToNextScreen") + break + end end end end @@ -382,8 +393,8 @@ local function DiffuseText(bmt) if ThemePrefs.Get("RainbowMode") and not HolidayCheer() then textColor = Color.Black end - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - textColor = color(SL.SRPG5.TextColor) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + textColor = color(SL.SRPG6.TextColor) shadowLength = 0.4 end diff --git a/BGAnimations/ScreenTitleMenu underlay/Logo.lua b/BGAnimations/ScreenTitleMenu underlay/Logo.lua index 86fec229d..0d004e9b3 100644 --- a/BGAnimations/ScreenTitleMenu underlay/Logo.lua +++ b/BGAnimations/ScreenTitleMenu underlay/Logo.lua @@ -29,10 +29,10 @@ af[#af+1] = Def.Sprite{ self:playcommand("LoadImage") end, LoadImageCommand=function(self) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - self:Load(THEME:GetPathG("", "_VisualStyles/SRPG5/"..SL.SRPG5.GetLogo())) - self:zoom(0.7):vertalign(top) - self:y(-120):shadowlength(0) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + self:Load(THEME:GetPathG("", "_VisualStyles/SRPG6/"..SL.SRPG6.GetLogo())) + self:zoom(0.55):vertalign(top) + self:y(-165):shadowlength(0) else local style = ThemePrefs.Get("VisualStyle") local image = THEME:GetPathG("", "_VisualStyles/"..style.."/TitleMenu (doubleres).png") @@ -49,7 +49,7 @@ af[#af+1] = Def.Sprite{ } -if ThemePrefs.Get("VisualStyle") ~= "SRPG5" then +if ThemePrefs.Get("VisualStyle") ~= "SRPG6" then -- decorative arrows for current game (dance, pump, techno, etc.) af[#af+1] = LoadActor(resolved_path)..{ InitCommand=function(self) @@ -74,9 +74,9 @@ if ThemePrefs.Get("VisualStyle") ~= "SRPG5" then end end, VisualStyleSelectedMessageCommand=function(self) - -- In case we auto-switch to SRPG5, then it's possible this actor may have been added to the screen. - -- If so, we want to hide the logo as it interferes with the SRPG5 logo. - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + -- In case we auto-switch to SRPG6, then it's possible this actor may have been added to the screen. + -- If so, we want to hide the logo as it interferes with the SRPG6 logo. + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:visible(false) end end diff --git a/BGAnimations/ScreenTitleMenu underlay/UserContentText.lua b/BGAnimations/ScreenTitleMenu underlay/UserContentText.lua index fb5dcd2e4..cdf444b61 100644 --- a/BGAnimations/ScreenTitleMenu underlay/UserContentText.lua +++ b/BGAnimations/ScreenTitleMenu underlay/UserContentText.lua @@ -64,8 +64,8 @@ return LoadFont("Common Normal")..{ if ThemePrefs.Get("RainbowMode") and not HolidayCheer() then textColor = Color.Black end - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - textColor = color(SL.SRPG5.TextColor) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + textColor = color(SL.SRPG6.TextColor) shadowLength = 0.4 end diff --git a/BGAnimations/ScreenTitleMenu underlay/default.lua b/BGAnimations/ScreenTitleMenu underlay/default.lua index 396ee133f..f9ae8d755 100644 --- a/BGAnimations/ScreenTitleMenu underlay/default.lua +++ b/BGAnimations/ScreenTitleMenu underlay/default.lua @@ -3,8 +3,8 @@ -- this is defined in: ./Scripts/SL_Init.lua InitializeSimplyLove() -if ThemePrefs.Get("VisualStyle") == "SRPG5" then - SL.SRPG5:MaybeRandomizeColor() +if ThemePrefs.Get("VisualStyle") == "SRPG6" then + SL.SRPG6:MaybeRandomizeColor() end -- ----------------------------------------------------------------------- diff --git a/BGAnimations/_shared background/Normal.lua b/BGAnimations/_shared background/Normal.lua index 7c2c47860..a0bbb57c3 100644 --- a/BGAnimations/_shared background/Normal.lua +++ b/BGAnimations/_shared background/Normal.lua @@ -13,7 +13,7 @@ local anim_data = { local t = Def.ActorFrame { InitCommand=function(self) local style = ThemePrefs.Get("VisualStyle") - self:visible(not ThemePrefs.Get("RainbowMode") and style ~= "SRPG5") + self:visible(not ThemePrefs.Get("RainbowMode") and style ~= "SRPG6") end, OnCommand=function(self) self:accelerate(0.8):diffusealpha(1) end, HideCommand=function(self) self:visible(false) end, @@ -21,7 +21,7 @@ local t = Def.ActorFrame { VisualStyleSelectedMessageCommand=function(self) local style = ThemePrefs.Get("VisualStyle") - if ThemePrefs.Get("RainbowMode") or style == "SRPG5" then + if ThemePrefs.Get("RainbowMode") or style == "SRPG6" then self:linear(0.6):diffusealpha(0):queuecommand("Hide") else self:visible(true):linear(0.6):diffusealpha(1) diff --git a/BGAnimations/_shared background/RainbowMode.lua b/BGAnimations/_shared background/RainbowMode.lua index 9db6302f9..d2e1fffc0 100644 --- a/BGAnimations/_shared background/RainbowMode.lua +++ b/BGAnimations/_shared background/RainbowMode.lua @@ -15,13 +15,13 @@ local delay = 0 local af1 = Def.ActorFrame{ InitCommand=function(self) local style = ThemePrefs.Get("VisualStyle") - self:visible(ThemePrefs.Get("RainbowMode") and style ~= "SRPG5") + self:visible(ThemePrefs.Get("RainbowMode") and style ~= "SRPG6") end, OnCommand=function(self) self:Center():bob():effectmagnitude(0,50,0):effectperiod(8) end, VisualStyleSelectedMessageCommand=function(self) local style = ThemePrefs.Get("VisualStyle") - if ThemePrefs.Get("RainbowMode") and style ~= "SRPG5" then + if ThemePrefs.Get("RainbowMode") and style ~= "SRPG6" then self:visible(true):linear(0.6):diffusealpha(1) else self:linear(0.6):diffusealpha(0):queuecommand("Hide") diff --git a/BGAnimations/_shared background/Static.lua b/BGAnimations/_shared background/Static.lua index a17cbc126..50f59c403 100644 --- a/BGAnimations/_shared background/Static.lua +++ b/BGAnimations/_shared background/Static.lua @@ -3,8 +3,8 @@ local file = ... --- We want the yellow BG to be used on the following screens. -local yellowSrpg = { +-- We want the Shared BG to be used on the following screens. +local SharedBackground = { ["ScreenInit"] = true, ["ScreenLogo"] = true, ["ScreenTitleMenu"] = true, @@ -36,46 +36,73 @@ local yellowSrpg = { ["ScreenThemeOptions"] = true, } -local sprite = Def.Sprite { - Texture=file, +local StaticBackgroundVideos = { + ["Unaffiliated"] = THEME:GetPathG("", "_VisualStyles/SRPG6/Fog.mp4"), + ["Democratic People's Republic of Timing"] = THEME:GetPathG("", "_VisualStyles/SRPG6/Ranni.mp4"), + ["Footspeed Empire"] = THEME:GetPathG("", "_VisualStyles/SRPG6/Malenia.mp4"), + ["Stamina Nation"] = THEME:GetPathG("", "_VisualStyles/SRPG6/Melina.mp4"), +} + +local shared_alpha = 0.6 +local static_alpha = 1 + +local af = Def.ActorFrame { InitCommand=function(self) - self:xy(_screen.cx, _screen.cy):zoomto(_screen.w, _screen.h) self:diffusealpha(0) - local style = ThemePrefs.Get("VisualStyle") - self:visible(style == "SRPG5") - -- Used to prevent unnecessary self:Loads() - self.IsYellow = true + self:visible(style == "SRPG6") + self.IsShared = true + end, + OnCommand=function(self) + self:accelerate(0.8):diffusealpha(1) end, - OnCommand=function(self) self:accelerate(0.8):diffusealpha(1) end, ScreenChangedMessageCommand=function(self) local screen = SCREENMAN:GetTopScreen() local style = ThemePrefs.Get("VisualStyle") - if style == "SRPG5" then - if screen and not yellowSrpg[screen:GetName()] and self.IsYellow then - self:Load(THEME:GetPathG("", "_VisualStyles/" .. style .. "/Overlay-BG.png")) - self.IsYellow = false + if screen and style == "SRPG6" then + local static = self:GetChild("Static") + local video = self:GetChild("Video") + if SharedBackground[screen:GetName()] and not self.IsShared then + static:visible(true) + video:Load(THEME:GetPathG("", "_VisualStyles/SRPG6/Fog.mp4")) + video:rotationx(180):blend("BlendMode_Add"):diffusealpha(shared_alpha):diffuse(color("#ffffff")) + self.IsShared = true end - - if screen and yellowSrpg[screen:GetName()] and not self.IsYellow then - self:Load(THEME:GetPathG("", "_VisualStyles/" .. style .. "/SharedBackground.png")) - self.IsYellow = true + if not SharedBackground[screen:GetName()] and self.IsShared then + local faction = SL.SRPG6.GetFactionName(SL.Global.ActiveColorIndex) + -- No need to change anything for Unaffiliated. + -- We want to keep using the SharedBackground. + if faction ~= "Unaffiliated" then + static:visible(false) + video:Load(StaticBackgroundVideos[faction]) + video:rotationx(0):blend("BlendMode_Normal"):diffusealpha(static_alpha):diffuse(GetCurrentColor(true)) + self.IsShared = false + end end end end, VisualStyleSelectedMessageCommand=function(self) local style = ThemePrefs.Get("VisualStyle") - - local new_file = THEME:GetPathG("", "_VisualStyles/" .. style .. "/SharedBackground.png") - self:Load(new_file) - self:zoomto(_screen.w, _screen.h) - - if style == "SRPG5" then + if style == "SRPG6" then self:visible(true) else self:visible(false) end - end + end, + Def.Sprite { + Name="Static", + Texture=THEME:GetPathG("", "_VisualStyles/SRPG6/SharedBackground.png"), + InitCommand=function(self) + self:xy(_screen.cx, _screen.cy):zoomto(_screen.w, _screen.h):diffusealpha(shared_alpha) + end, + }, + Def.Sprite { + Name="Video", + Texture=THEME:GetPathG("", "_VisualStyles/SRPG6/Fog.mp4"), + InitCommand= function(self) + self:xy(_screen.cx, _screen.cy):zoomto(_screen.w, _screen.h):rotationx(180):blend("BlendMode_Add"):diffusealpha(shared_alpha) + end, + }, } -return sprite +return af diff --git a/Graphics/MusicWheelItem Course NormalPart.lua b/Graphics/MusicWheelItem Course NormalPart.lua index 42fa5023d..20ffd66c0 100755 --- a/Graphics/MusicWheelItem Course NormalPart.lua +++ b/Graphics/MusicWheelItem Course NormalPart.lua @@ -10,5 +10,8 @@ return Def.ActorFrame{ InitCommand=function(self) self:x(WideScale(28,33)) end, Def.Quad{ InitCommand=function(self) self:horizalign(left):diffuse(0, 10/255, 17/255, 0.5):zoomto(item_width, _screen.h/num_visible_items) end }, - Def.Quad{ InitCommand=function(self) self:horizalign(left):diffuse(DarkUI() and {1,1,1,0.5} or {10/255, 20/255, 27/255, 1}):zoomto(item_width, (_screen.h/num_visible_items)-1) end } + Def.Quad{ InitCommand=function(self) + self:horizalign(left):diffuse(DarkUI() and {1,1,1,0.5} or {10/255, 20/255, 27/255, 1}):zoomto(item_width, (_screen.h/num_visible_items)-1) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffusealpha(0.5) end + end } } \ No newline at end of file diff --git a/Graphics/ScreenTitleMenu scroll.lua b/Graphics/ScreenTitleMenu scroll.lua index 0410d9d42..2c1f22acc 100755 --- a/Graphics/ScreenTitleMenu scroll.lua +++ b/Graphics/ScreenTitleMenu scroll.lua @@ -27,7 +27,7 @@ t[#t+1] = LoadFont("Common Bold")..{ UpdateColorCommand=function(self) if has_focus then local textColor = PlayerColor(PLAYER_2) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then textColor = GetCurrentColor(true) end self:diffuse(textColor) @@ -36,8 +36,8 @@ t[#t+1] = LoadFont("Common Bold")..{ if ThemePrefs.Get("RainbowMode") then textColor = Color.White end - if ThemePrefs.Get("VisualStyle") == "SRPG5" then - textColor = color(SL.SRPG5.TextColor) + if ThemePrefs.Get("VisualStyle") == "SRPG6" then + textColor = color(SL.SRPG6.TextColor) end self:diffuse(textColor) end diff --git a/Graphics/_VisualStyles/SRPG5/Overlay-BG.png b/Graphics/_VisualStyles/SRPG5/Overlay-BG.png deleted file mode 100644 index 0178403fb..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/Overlay-BG.png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/SelectColor.png b/Graphics/_VisualStyles/SRPG5/SelectColor.png deleted file mode 100644 index 573f37676..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/SelectColor.png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/SharedBackground.png b/Graphics/_VisualStyles/SRPG5/SharedBackground.png deleted file mode 100644 index c8cf89a76..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/SharedBackground.png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_dprt (doubleres).png b/Graphics/_VisualStyles/SRPG5/logo_dprt (doubleres).png deleted file mode 100644 index 6e5c9a2af..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_dprt (doubleres).png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_fe (doubleres).png b/Graphics/_VisualStyles/SRPG5/logo_fe (doubleres).png deleted file mode 100644 index 7c1997ef7..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_fe (doubleres).png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_main (doubleres).png b/Graphics/_VisualStyles/SRPG5/logo_main (doubleres).png deleted file mode 100644 index 15553422c..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_main (doubleres).png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_main.png b/Graphics/_VisualStyles/SRPG5/logo_main.png deleted file mode 100644 index 1d1608cb2..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_main.png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_small (doubleres).png b/Graphics/_VisualStyles/SRPG5/logo_small (doubleres).png deleted file mode 100644 index 47fbd9622..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_small (doubleres).png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/logo_sn (doubleres).png b/Graphics/_VisualStyles/SRPG5/logo_sn (doubleres).png deleted file mode 100644 index 2a2bb02a3..000000000 Binary files a/Graphics/_VisualStyles/SRPG5/logo_sn (doubleres).png and /dev/null differ diff --git a/Graphics/_VisualStyles/SRPG5/Combo 1000milestone swoosh.png b/Graphics/_VisualStyles/SRPG6/Combo 1000milestone swoosh.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/Combo 1000milestone swoosh.png rename to Graphics/_VisualStyles/SRPG6/Combo 1000milestone swoosh.png diff --git a/Graphics/_VisualStyles/SRPG5/Combo 100milestone minisplode.png b/Graphics/_VisualStyles/SRPG6/Combo 100milestone minisplode.png similarity index 100% rename from Graphics/_VisualStyles/SRPG5/Combo 100milestone minisplode.png rename to Graphics/_VisualStyles/SRPG6/Combo 100milestone minisplode.png diff --git a/Graphics/_VisualStyles/SRPG5/Combo 100milestone splode.png b/Graphics/_VisualStyles/SRPG6/Combo 100milestone splode.png similarity index 100% rename from Graphics/_VisualStyles/SRPG5/Combo 100milestone splode.png rename to Graphics/_VisualStyles/SRPG6/Combo 100milestone splode.png diff --git a/Graphics/_VisualStyles/SRPG6/EnemyFelled.png b/Graphics/_VisualStyles/SRPG6/EnemyFelled.png new file mode 100644 index 000000000..a50c7a83d Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/EnemyFelled.png differ diff --git a/Graphics/_VisualStyles/SRPG6/Fog.mp4 b/Graphics/_VisualStyles/SRPG6/Fog.mp4 new file mode 100644 index 000000000..505f515f1 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/Fog.mp4 differ diff --git a/Graphics/_VisualStyles/SRPG5/GameplayIn minisplode.png b/Graphics/_VisualStyles/SRPG6/GameplayIn minisplode.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/GameplayIn minisplode.png rename to Graphics/_VisualStyles/SRPG6/GameplayIn minisplode.png diff --git a/Graphics/_VisualStyles/SRPG5/GameplayIn splode.png b/Graphics/_VisualStyles/SRPG6/GameplayIn splode.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/GameplayIn splode.png rename to Graphics/_VisualStyles/SRPG6/GameplayIn splode.png diff --git a/Graphics/_VisualStyles/SRPG6/GreatEnemyFelled.png b/Graphics/_VisualStyles/SRPG6/GreatEnemyFelled.png new file mode 100644 index 000000000..99890377d Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/GreatEnemyFelled.png differ diff --git a/Graphics/_VisualStyles/SRPG6/Malenia.mp4 b/Graphics/_VisualStyles/SRPG6/Malenia.mp4 new file mode 100644 index 000000000..02d7aea26 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/Malenia.mp4 differ diff --git a/Graphics/_VisualStyles/SRPG6/Melina.mp4 b/Graphics/_VisualStyles/SRPG6/Melina.mp4 new file mode 100644 index 000000000..94200e0d6 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/Melina.mp4 differ diff --git a/Graphics/_VisualStyles/SRPG6/Overlay-BG.png b/Graphics/_VisualStyles/SRPG6/Overlay-BG.png new file mode 100644 index 000000000..9cebcfa8b Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/Overlay-BG.png differ diff --git a/Graphics/_VisualStyles/SRPG6/Ranni.mp4 b/Graphics/_VisualStyles/SRPG6/Ranni.mp4 new file mode 100644 index 000000000..5d478282b Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/Ranni.mp4 differ diff --git a/Graphics/_VisualStyles/SRPG6/SelectColor.png b/Graphics/_VisualStyles/SRPG6/SelectColor.png new file mode 100644 index 000000000..38e9011f6 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/SelectColor.png differ diff --git a/Graphics/_VisualStyles/SRPG6/SharedBackground.png b/Graphics/_VisualStyles/SRPG6/SharedBackground.png new file mode 100644 index 000000000..78f6f5ed9 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/SharedBackground.png differ diff --git a/Graphics/_VisualStyles/SRPG5/TitleMenu flybottom.png b/Graphics/_VisualStyles/SRPG6/TitleMenu flybottom.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/TitleMenu flybottom.png rename to Graphics/_VisualStyles/SRPG6/TitleMenu flybottom.png diff --git a/Graphics/_VisualStyles/SRPG5/TitleMenu flycenter.png b/Graphics/_VisualStyles/SRPG6/TitleMenu flycenter.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/TitleMenu flycenter.png rename to Graphics/_VisualStyles/SRPG6/TitleMenu flycenter.png diff --git a/Graphics/_VisualStyles/SRPG5/TitleMenu flytop.png b/Graphics/_VisualStyles/SRPG6/TitleMenu flytop.png old mode 100755 new mode 100644 similarity index 100% rename from Graphics/_VisualStyles/SRPG5/TitleMenu flytop.png rename to Graphics/_VisualStyles/SRPG6/TitleMenu flytop.png diff --git a/Graphics/_VisualStyles/SRPG6/YouDied.png b/Graphics/_VisualStyles/SRPG6/YouDied.png new file mode 100644 index 000000000..2bc6831b3 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/YouDied.png differ diff --git a/Graphics/_VisualStyles/SRPG6/logo_main (doubleres).png b/Graphics/_VisualStyles/SRPG6/logo_main (doubleres).png new file mode 100644 index 000000000..0c31660d2 Binary files /dev/null and b/Graphics/_VisualStyles/SRPG6/logo_main (doubleres).png differ diff --git a/Graphics/_footer.lua b/Graphics/_footer.lua index 85d52e71b..176d97af7 100755 --- a/Graphics/_footer.lua +++ b/Graphics/_footer.lua @@ -6,7 +6,7 @@ return Def.Quad{ Name="Footer", InitCommand=function(self) self:draworder(90):zoomto(_screen.w, 32):vertalign(bottom):y(32) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) elseif DarkUI() then self:diffuse(dark) @@ -18,12 +18,12 @@ return Def.Quad{ if SCREENMAN:GetTopScreen():GetName() == "ScreenSelectMusicCasual" then self:diffuse(dark) end - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) end end, ColorSelectedMessageCommand=function(self) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) end end, diff --git a/Graphics/_header.lua b/Graphics/_header.lua index a699c395f..da77cc991 100755 --- a/Graphics/_header.lua +++ b/Graphics/_header.lua @@ -8,7 +8,7 @@ return Def.ActorFrame{ Def.Quad{ InitCommand=function(self) self:zoomto(_screen.w, 32):vertalign(top):x(_screen.cx) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) elseif DarkUI() then self:diffuse(dark) @@ -21,13 +21,13 @@ return Def.ActorFrame{ if SL.Global.GameMode == "Casual" and (topscreen == "ScreenEvaluationStage" or topscreen == "ScreenEvaluationSummary") then self:diffuse(dark) end - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) end self:visible(topscreen ~= "ScreenCRTTestPatterns") end, ColorSelectedMessageCommand=function(self) - if ThemePrefs.Get("VisualStyle") == "SRPG5" then + if ThemePrefs.Get("VisualStyle") == "SRPG6" then self:diffuse(GetCurrentColor(true)) end end, diff --git a/Languages/de.ini b/Languages/de.ini index c1d8c6e64..3e1997508 100644 --- a/Languages/de.ini +++ b/Languages/de.ini @@ -337,6 +337,13 @@ No=Nein NoInfo=behalten wie ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Stamina RPG 6 hat begonnen! +Paragraph2=Möchten Sie zum visuellen Stil von SRPG6 wechseln? +YesInfo=Wechseln Sie zu SRGP6! +NoInfo=Aktuellen Stil beibehalten + + [ScreenTestInput] Player=Spieler diff --git a/Languages/en.ini b/Languages/en.ini index c9afac5e4..1bb4559d3 100755 --- a/Languages/en.ini +++ b/Languages/en.ini @@ -332,12 +332,17 @@ HeaderText=System Options [ScreenPromptToResetPreferencesToStock] Paragraph1=Simply Love has modified many global StepMania preferences (for example, Timing Windows) in order to emulate ITG.\n\nDo you want to reset these preferences back to the default SM5 values before switching themes? Paragraph2=Choosing Yes will only reset the preferences that Simply Love forcibly modified. It will not reset any preferences you changed yourself.\n\nChoosing No will cause ITG-like settings to persist into your next theme. -#' Yes=Yes YesInfo=make it like SM5 No=No NoInfo=keep it like ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Stamina RPG 6 has Started! +Paragraph2=Do you want to change to the SRPG6 Visual Style? +YesInfo=Change to SRGP6! +NoInfo=Keep current style + [ScreenTestInput] Player=Player diff --git a/Languages/es.ini b/Languages/es.ini index 09f4bb4ad..816a18904 100755 --- a/Languages/es.ini +++ b/Languages/es.ini @@ -382,6 +382,12 @@ Paragraph2=Si escoges "sí", solo reiniciará las preferencias que Simply Love h Yes=Si No=No +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=¡Stamina RPG 6 ha comenzado! +Paragraph2=¿Quiere cambiar al estilo visual SRPG6? +YesInfo=¡Cambia a SRGP6! +NoInfo=Mantener el estilo actual + [ScreenVisualOptions] HeaderText=Opciones graficas y de sonido diff --git a/Languages/fr.ini b/Languages/fr.ini index 7263a9962..b62b5b8cb 100644 --- a/Languages/fr.ini +++ b/Languages/fr.ini @@ -270,6 +270,12 @@ YesInfo=Mettre comme SM5 No=Non NoInfo=Conserver comme ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Stamina RPG 6 a commencé! +Paragraph2=Voulez-vous passer au style visuel SRPG6? +YesInfo=Passez à SRGP6! +NoInfo=Conserver le style actuel + [ScreenInputOptions] HeaderText=Options d'entree diff --git a/Languages/it.ini b/Languages/it.ini index b1ab173e4..226a826e8 100644 --- a/Languages/it.ini +++ b/Languages/it.ini @@ -359,6 +359,12 @@ YesInfo=Rendilo come SM5 No=No NoInfo=Continua con lo standard ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Stamina RPG 6 è iniziato! +Paragraph2=Vuoi passare allo stile visivo SRPG6? +YesInfo=Passa a SRGP6! +NoInfo=Mantieni lo stile attuale + [ScreenTestInput] Player=Giocatore diff --git a/Languages/ja.ini b/Languages/ja.ini index 872a886f9..902bbc64a 100644 --- a/Languages/ja.ini +++ b/Languages/ja.ini @@ -239,9 +239,15 @@ HeaderText=System Options [ScreenPromptToResetPreferencesToStock] Paragraph1=Simply Loveを使っていただき、ありがとうございました。\n\nSimply Loveは、よりITGに近い挙動を再現するため、StepMania全体の設定を多く変更しています(タイミングオフセットなど)。これらの設定値をデフォルト値に戻したい場合は、'Yes'を選択してください。 -Paragraph2='Yes'がリセットする設定は、Simply Loveによって強制的に変更された設定のみです。ご自身で設定した項目については元に戻ることはありません。\n\n'No'を選択すると、Simply Loveが行った変更が次のテーマにも引き継がれます。 -Yes=Yes -No=No +Paragraph2='はい'がリセットする設定は、Simply Loveによって強制的に変更された設定のみです。ご自身で設定した項目については元に戻ることはありません。\n\n'いいえ'を選択すると、Simply Loveが行った変更が次のテーマにも引き継がれます。 +Yes=はい +No=いいえ + +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=スタミナRPG6が始まりました! +Paragraph2=SRPG6ビジュアルスタイルに変更しますか? +YesInfo=SRGP6に変更しよう! +NoInfo=現在のスタイルを維持する [ScreenTestInput] Player=Player diff --git a/Languages/pl.ini b/Languages/pl.ini index 61f96ddc8..9006300f9 100644 --- a/Languages/pl.ini +++ b/Languages/pl.ini @@ -331,12 +331,17 @@ HeaderText=Opcje Systemu [ScreenPromptToResetPreferencesToStock] Paragraph1=Simply Love zmienił wiele globalnych ustawień StepManii (np. Okienka Czasowe) w celu emulacji ITG.\n\nCzy przed zmianą motywu chcesz przywrócić je do wartości domyślnych dla SM5? Paragraph2=Wybranie "Tak" przywróci tylko te ustawienia, których zmianę wymusiło Simply Love. Nie będzie to miało wpływu na żadne ustawienia zmienione ręcznie.\n\nWybranie "Nie" spowoduje zachowanie ustawień podobnych do ITG w następnym motywie. -#' Yes=Tak YesInfo=zresetuj do SM5 No=Nie NoInfo=pozostań jak ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Wytrzymałość RPG 6 wystartowała! +Paragraph2=Czy chcesz przejść na styl wizualny SRPG6? +YesInfo=Zmień na SRGP6! +NoInfo=Zachowaj aktualny styl + [ScreenTestInput] Player=Gracz diff --git a/Languages/pt-br.ini b/Languages/pt-br.ini index a2b9baafb..a8787e2cd 100644 --- a/Languages/pt-br.ini +++ b/Languages/pt-br.ini @@ -1247,12 +1247,17 @@ HeaderText=Opcoes do Sistema [ScreenPromptToResetPreferencesToStock] Paragraph1=O Simply Love mudou varias variáveis globais do StepMania (por exemplo, janela de acerto) em ordem de emular o modo ITG.\n\nVocê quer resetar essas preferencias para as originais do SM5 antes de mudar de tema? Paragraph2=Escolhendo Sim vai resetar apenas as preferencias que o Simply Love modificou à força. Ele não vai resetar nenhuma preferencia que você mudou.\n\nEscolhendo Não vai fazer com que as configurações do tipo ITG continuem no seu proximo tema. - Yes=Sim YesInfo=faça como SM5 No=Nao NoInfo=continue como ITG +[ScreenPromptToSetSrpgVisualStyle] +Paragraph1=Stamina RPG 6 começou! +Paragraph2=Você quer mudar para o estilo visual SRPG6? +YesInfo=Mude para SRGP6! +NoInfo=Manter o estilo atual + [ScreenOptionsManageProfiles] HeaderText=Perfis diff --git a/Scripts/99 SL-ThemePrefs.lua b/Scripts/99 SL-ThemePrefs.lua index 5d84ddb0e..47c3392b7 100644 --- a/Scripts/99 SL-ThemePrefs.lua +++ b/Scripts/99 SL-ThemePrefs.lua @@ -14,9 +14,29 @@ if type(ThemePrefs) ~= "table" or type(ThemePrefs.Get) ~= "function" then } end +SL_CustomPrefs.Get = function() + -- emojis are our lingua franca for the 21st century + local visualStyleChoices = { "❤", "↖", "🐻", "🦆", "😺", "🎃", "🌈", "⭐", "🤔" } + local visualStyleValues = { "Hearts", "Arrows", "Bears", "Ducks", "Cats", "Spooky", "Gay", "Stars", "Thonk" } + local year = Year() + local month = MonthOfYear()+1 + local day = DayOfMonth() + local today = year * 10000 + month * 100 + day + + if today >= 20220617 then + visualStyleChoices[#visualStyleChoices+1] = "💍" + visualStyleValues[#visualStyleValues+1] = "SRPG6" + else + local prefs = IniFile.ReadFile("/Save/ThemePrefs.ini") + local theme = PREFSMAN:GetPreference("Theme") + local lastActiveEvent = nil + if prefs[theme] and prefs[theme].LastActiveEvent == "SRPG6" then + visualStyleChoices[#visualStyleChoices+1] = "💍" + visualStyleValues[#visualStyleValues+1] = "SRPG6" + end + end -SL_CustomPrefs.Get = function() return { AllowFailingOutOfSet = { @@ -30,8 +50,6 @@ SL_CustomPrefs.Get = function() Choices = { 0,1,2,3,4,5,6,7,8,9 }, Values = { 0,1,2,3,4,5,6,7,8,9 } }, - - HideStockNoteSkins = { Default = false, @@ -73,9 +91,8 @@ SL_CustomPrefs.Get = function() VisualStyle = { Default = "Hearts", - -- emojis are our lingua franca for the 21st century - Choices = { "♡", "↖", "🐻", "🦆", "😺", "🎃", "🌈", "⭐", "🤔", "🗡" }, - Values = { "Hearts", "Arrows", "Bears", "Ducks", "Cats", "Spooky", "Gay", "Stars", "Thonk", "SRPG5" }, + Choices = visualStyleChoices, + Values = visualStyleValues }, RainbowMode = { Default = false, @@ -105,7 +122,6 @@ SL_CustomPrefs.Get = function() Choices = { 1,2,3,4,5,6,7,8,9,10,11,12 }, Values = { 1,2,3,4,5,6,7,8,9,10,11,12 } }, - -- - - - - - - - - - - - - - - - - - - - -- Save the last seen song in Edit Mode to disk so that ScreenEditMenu -- can load with it already selected, instead of the first song in the @@ -126,7 +142,6 @@ SL_CustomPrefs.Get = function() { Default = "", }, - -- - - - - - - - - - - - - - - - - - - - -- MenuTimer values for various screens ScreenSelectMusicMenuTimer = @@ -198,7 +213,6 @@ SL_CustomPrefs.Get = function() Choices = { THEME:GetString("ThemePrefs","Yes"), THEME:GetString("ThemePrefs", "No") }, Values = { true, false } }, - -- - - - - - - - - - - - - - - - - - - - -- Casual GameMode Settings CasualMaxMeter = { @@ -206,7 +220,6 @@ SL_CustomPrefs.Get = function() Choices = range(5, 15, 1), Values = range(5, 15, 1) }, - -- - - - - - - - - - - - - - - - - - - - -- SM5.1's ImageCache System (used in CasualMode) UseImageCache = { @@ -214,7 +227,6 @@ SL_CustomPrefs.Get = function() Choices = { THEME:GetString("ThemePrefs","Yes"), THEME:GetString("ThemePrefs", "No") }, Values = { true, false } }, - -- - - - - - - - - - - - - - - - - - - - -- nice meme -- 0 is off, 1 is visuals only, 2 is visuals and sound. @@ -223,7 +235,6 @@ SL_CustomPrefs.Get = function() Choices = { THEME:GetString("ThemePrefs","Off"), THEME:GetString("ThemePrefs","On"), THEME:GetString("ThemePrefs","OnWithSound") }, Values = { 0, 1, 2 } }, - -- - - - - - - - - - - - - - - - - - - - LastActiveEvent = { diff --git a/Scripts/SL-Colors.lua b/Scripts/SL-Colors.lua index 959bf2675..45e7e8dcd 100644 --- a/Scripts/SL-Colors.lua +++ b/Scripts/SL-Colors.lua @@ -10,8 +10,8 @@ function GetHexColor( n, decorative ) if decorative then colorTable = SL.DecorativeColors end - if style == "SRPG5" then - colorTable = SL.SRPG5.Colors + if style == "SRPG6" then + colorTable = SL.SRPG6.Colors end -- use the number passed in to lookup a color in the corresponding color table @@ -19,7 +19,7 @@ function GetHexColor( n, decorative ) local clr = ((n - 1) % #colorTable) + 1 if colorTable[clr] then local c = color(colorTable[clr]) - if style == "SRPG5" and not decorative then + if style == "SRPG6" and not decorative then c = LightenColor(c) end return c diff --git a/Scripts/SL_SRPG5.lua b/Scripts/SL_SRPG6.lua similarity index 77% rename from Scripts/SL_SRPG5.lua rename to Scripts/SL_SRPG6.lua index 5a8709f16..b87118061 100644 --- a/Scripts/SL_SRPG5.lua +++ b/Scripts/SL_SRPG6.lua @@ -1,4 +1,4 @@ -SL.SRPG5 = { +SL.SRPG6 = { Colors = { "#666000", "#3d6526", -- green (main) @@ -13,23 +13,13 @@ SL.SRPG5 = { "#c32020", -- red (Stamina Nation) "#954f00", }, - TextColor = "#272024", + TextColor = "#ffffff", -- internal flag firstRun = false, GetLogo = function() - local idx = SL.Global.ActiveColorIndex - - if idx <= 3 then - return "logo_main (doubleres).png" - elseif idx <= 6 then - return "logo_dprt (doubleres).png" - elseif idx <= 9 then - return "logo_fe (doubleres).png" - else - return "logo_sn (doubleres).png" - end + return "logo_main (doubleres).png" end, GetFactionName = function(idx) if idx <= 3 then @@ -43,9 +33,9 @@ SL.SRPG5 = { end end, ActivateVisualStyle = function(self) - ThemePrefs.Set("VisualStyle", "SRPG5") + ThemePrefs.Set("VisualStyle", "SRPG6") ThemePrefs.Set("RainbowMode", false) - ThemePrefs.Set("LastActiveEvent", "SRPG5") + ThemePrefs.Set("LastActiveEvent", "SRPG6") ThemePrefs.Save() MESSAGEMAN:Broadcast("VisualStyleSelected") diff --git a/Sounds/SRPG6-EnemyFelled.ogg b/Sounds/SRPG6-EnemyFelled.ogg new file mode 100644 index 000000000..bd49c8f5a Binary files /dev/null and b/Sounds/SRPG6-EnemyFelled.ogg differ diff --git a/Sounds/SRPG6-GameOver.ogg b/Sounds/SRPG6-GameOver.ogg new file mode 100644 index 000000000..f575ec639 Binary files /dev/null and b/Sounds/SRPG6-GameOver.ogg differ diff --git a/Sounds/SRPG6-YouDied.ogg b/Sounds/SRPG6-YouDied.ogg new file mode 100644 index 000000000..e9edc7c7c Binary files /dev/null and b/Sounds/SRPG6-YouDied.ogg differ diff --git a/Sounds/ScreenGameOver music.lua b/Sounds/ScreenGameOver music.lua index e3c4705a8..44302b89d 100755 --- a/Sounds/ScreenGameOver music.lua +++ b/Sounds/ScreenGameOver music.lua @@ -1,8 +1,8 @@ local audio_file = "serenity in ruin.ogg" local style = ThemePrefs.Get("VisualStyle") -if style == "SRPG5" then - audio_file = "dreams of will arrange.ogg" +if style == "SRPG6" then + audio_file = "SRPG6-GameOver.ogg" end return THEME:GetPathS("", audio_file) diff --git a/Sounds/_common menu music/SRPG6 (loop).ogg b/Sounds/_common menu music/SRPG6 (loop).ogg new file mode 100644 index 000000000..9783730da Binary files /dev/null and b/Sounds/_common menu music/SRPG6 (loop).ogg differ diff --git a/Sounds/_common menu music/default.lua b/Sounds/_common menu music/default.lua index d5247c586..02c1dd4dd 100644 --- a/Sounds/_common menu music/default.lua +++ b/Sounds/_common menu music/default.lua @@ -8,7 +8,7 @@ local songs = { Gay = "Mystical Wheelbarrow Journey", Stars = "Shooting Star - faux VRC6 remix", Thonk = "Da Box of Kardboard Too (feat Naoki vs ZigZag) - TaroNuke Remix", - SRPG5 = "Free Will" + SRPG6 = "SRPG6" } -- retrieve the current VisualStyle from the ThemePrefs system diff --git a/Sounds/dreams of will arrange.ogg b/Sounds/dreams of will arrange.ogg deleted file mode 100644 index ed7219418..000000000 Binary files a/Sounds/dreams of will arrange.ogg and /dev/null differ diff --git a/metrics.ini b/metrics.ini index 3b617f94e..bf422d4b5 100755 --- a/metrics.ini +++ b/metrics.ini @@ -273,7 +273,7 @@ NextScreen=Branch.AfterInit() HeaderOnCommand=visible,false ShowCreditDisplay=false ShowPlayerAvatar=true -TimerSeconds=(ThemePrefs.Get("VisualStyle") == "SRPG5") and 135 or 23 +TimerSeconds=(ThemePrefs.Get("VisualStyle") == "SRPG6") and 135 or 23 ForceTimer=true TimerOnCommand=visible,false PlayMusic=true @@ -934,6 +934,14 @@ HeaderOnCommand=visible,false FooterOnCommand=visible,false ShowCreditDisplay=false +[ScreenPromptToSetSrpgVisualStyle] +Fallback="ScreenWithMenuElements" +PrevScreen="ScreenTitleMenu" +NextScreen="ScreenTitleMenu" +HeaderOnCommand=visible,false +FooterOnCommand=visible,false +ShowCreditDisplay=false + # ScreenGameplaySyncMachine is currently not accessible in Simply Love. # I haven't thought of a good way to handle/explain ITG's +9ms bias in a way # that the average player can easily comprehend in order to make an informed @@ -1098,11 +1106,11 @@ Fallback="ScreenOptionsServiceChild" OptionRowNormalMetricsGroup="OptionRowSimplyLoveOptions" LineNames=(function() \ - local lines = "VisualStyle" \ - if ThemePrefs.Get("VisualStyle") ~= "SRPG5" then lines = lines .. ",RainbowMode" end \ + local lines = "VisualStyle" \ + if ThemePrefs.Get("VisualStyle") ~= "SRPG6" then lines = lines .. ",RainbowMode" end \ lines = lines.. ",,MusicWheelSpeed,,MusicWheelStyle,AutoStyle,DefaultGameMode,AllowFailingOutOfSet,NumberOfContinuesAllowed,CasualMaxMeter,SelectProfile,SelectColor,EvalSummary,NameEntry,GameOver,HideStockNoteSksins,DanceSolo,Nice,WriteCustomScores,KeyboardFeatures" \ - if Sprite.LoadFromCached ~= nil then lines = lines .. ",UseImageCache" end \ - return lines \ + if Sprite.LoadFromCached ~= nil then lines = lines .. ",UseImageCache" end \ + return lines \ end)() LineCasualMaxMeter="lua,ThemePrefsRows.GetRow('CasualMaxMeter')"