diff --git a/Themes/themekit/BGAnimations/ScreenSelectMusic decorations.lua b/Themes/themekit/BGAnimations/ScreenSelectMusic decorations.lua index f5a37674cd..b76210c621 100644 --- a/Themes/themekit/BGAnimations/ScreenSelectMusic decorations.lua +++ b/Themes/themekit/BGAnimations/ScreenSelectMusic decorations.lua @@ -3,7 +3,7 @@ -- these elements. local t = LoadFallbackB(); --- Legacy StepMania 4 Function +-- local function CreateStepDisplay(pn) local function set(self, player) self:SetFromGameState( player ); @@ -23,9 +23,7 @@ local function CreateStepDisplay(pn) return t; end - - - +-- Create StepsDisplay for each Player. for pn in ivalues(PlayerNumber) do local MetricsName = "StepsDisplay" .. PlayerNumberToString(pn); t[#t+1] = CreateStepDisplay(pn) .. { @@ -44,4 +42,5 @@ for pn in ivalues(PlayerNumber) do end; }; end + return t \ No newline at end of file diff --git a/Themes/themekit/BGAnimations/ScreenWithMenuElements decorations - Copy.lua b/Themes/themekit/BGAnimations/ScreenWithMenuElements decorations.lua similarity index 74% rename from Themes/themekit/BGAnimations/ScreenWithMenuElements decorations - Copy.lua rename to Themes/themekit/BGAnimations/ScreenWithMenuElements decorations.lua index 0a6c72ce04..02dddd67f5 100644 --- a/Themes/themekit/BGAnimations/ScreenWithMenuElements decorations - Copy.lua +++ b/Themes/themekit/BGAnimations/ScreenWithMenuElements decorations.lua @@ -24,4 +24,13 @@ t[#t+1] = StandardDecorationFromFileOptional("TextHeader","TextHeader") .. { }; -- Image displayed on the bottom of the screen t[#t+1] = StandardDecorationFromFileOptional("Footer","Footer"); +t[#t+1] = StandardDecorationFromFileOptional( "HelpDisplay", "HelpDisplay" ) .. { + InitCommand=function(self) + local s = THEME:GetString(Var "LoadingScreen","HelpText"); + self:SetTipsColonSeparated(s); + end; + SetHelpTextCommand=function(self, params) + self:SetTipsColonSeparated( params.Text ); + end; +}; return t \ No newline at end of file diff --git a/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/default.lua b/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/default.lua new file mode 100644 index 0000000000..72fd7fce4a --- /dev/null +++ b/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/default.lua @@ -0,0 +1,14 @@ +local t = Def.ActorFrame { + InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y); +}; +-- +t[#t+1] = LoadActor("grid") .. { + InitCommand=cmd(zoomto,SCREEN_WIDTH,SCREEN_HEIGHT;customtexturerect,0,0,SCREEN_WIDTH/16,SCREEN_HEIGHT/16); + OnCommand=cmd(diffuse,color("0,0,0,0.125")); +}; +t[#t+1] = LoadActor("grid") .. { + InitCommand=cmd(zoomto,SCREEN_WIDTH,SCREEN_HEIGHT;customtexturerect,0,0,SCREEN_WIDTH/32,SCREEN_HEIGHT/32); + OnCommand=cmd(diffuse,color("0,0,0,0.25")); +}; +-- +return t \ No newline at end of file diff --git a/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/grid.png b/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/grid.png new file mode 100644 index 0000000000..9d3c6ad15d Binary files /dev/null and b/Themes/themekit/BGAnimations/ScreenWithMenuElements underlay/grid.png differ diff --git a/Themes/themekit/Graphics/Banner all music.png b/Themes/themekit/Graphics/Banner all music.png new file mode 100644 index 0000000000..8e49185765 Binary files /dev/null and b/Themes/themekit/Graphics/Banner all music.png differ diff --git a/Themes/themekit/Graphics/Banner mode.png b/Themes/themekit/Graphics/Banner mode.png new file mode 100644 index 0000000000..5d9b9917c4 Binary files /dev/null and b/Themes/themekit/Graphics/Banner mode.png differ diff --git a/Themes/themekit/Graphics/Banner random.png b/Themes/themekit/Graphics/Banner random.png new file mode 100644 index 0000000000..2a19b14c37 Binary files /dev/null and b/Themes/themekit/Graphics/Banner random.png differ diff --git a/Themes/themekit/Graphics/Banner roulette.png b/Themes/themekit/Graphics/Banner roulette.png new file mode 100644 index 0000000000..aa6116cb21 Binary files /dev/null and b/Themes/themekit/Graphics/Banner roulette.png differ diff --git a/Themes/themekit/Graphics/Common fallback background.png b/Themes/themekit/Graphics/Common fallback background.png new file mode 100644 index 0000000000..335bd214fb Binary files /dev/null and b/Themes/themekit/Graphics/Common fallback background.png differ diff --git a/Themes/themekit/Graphics/Common fallback banner.png b/Themes/themekit/Graphics/Common fallback banner.png new file mode 100644 index 0000000000..45098f5999 Binary files /dev/null and b/Themes/themekit/Graphics/Common fallback banner.png differ diff --git a/Themes/themekit/Graphics/MusicWheelItem Song ColorPart.lua b/Themes/themekit/Graphics/MusicWheelItem Song ColorPart.lua deleted file mode 100644 index d3d0df30f3..0000000000 --- a/Themes/themekit/Graphics/MusicWheelItem Song ColorPart.lua +++ /dev/null @@ -1,14 +0,0 @@ -return Def.ActorFrame { - Def.Quad { - InitCommand=cmd(x,-128+4;zoomto,4,46); --- OnCommand=cmd(diffuse,color("0,0,0,0.5")); - }; ---[[ Def.Quad { - InitCommand=cmd(x,-128+16+6;zoomto,32,46); --- OnCommand=cmd(faderight,1;diffusealpha,0.5); - }; --]] ---[[ Def.Quad { - InitCommand=cmd(x,2;y,23;zoomto,320,1); --- OnCommand=cmd(diffuse,color("0,0,0,0.5")); - }; --]] -}; \ No newline at end of file diff --git a/Themes/themekit/Graphics/MusicWheelItem Song NormalPart.lua b/Themes/themekit/Graphics/MusicWheelItem Song NormalPart.lua deleted file mode 100644 index 7c5b876099..0000000000 --- a/Themes/themekit/Graphics/MusicWheelItem Song NormalPart.lua +++ /dev/null @@ -1,6 +0,0 @@ -return Def.ActorFrame { - Def.Quad { - InitCommand=cmd(x,4;zoomto,256-4,46); - OnCommand=cmd(diffuse,color("0,0,0,0.5")); - }; -}; \ No newline at end of file diff --git a/Themes/themekit/Graphics/ScreenWithMenuElements HelpDisplay.lua b/Themes/themekit/Graphics/ScreenWithMenuElements HelpDisplay.lua new file mode 100644 index 0000000000..cdf9d37389 --- /dev/null +++ b/Themes/themekit/Graphics/ScreenWithMenuElements HelpDisplay.lua @@ -0,0 +1,3 @@ +return Def.HelpDisplay { + File = THEME:GetPathF("HelpDisplay", "text"); +}; \ No newline at end of file diff --git a/Themes/themekit/Languages/en.ini b/Themes/themekit/Languages/en.ini new file mode 100644 index 0000000000..9e55b7e42c --- /dev/null +++ b/Themes/themekit/Languages/en.ini @@ -0,0 +1,56 @@ +[Screen] +HelpText=&BACK; Exit &START; Select &SELECT; Options &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move + +[ScreenWithMenuElements] +HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move + +[ScreenTitleMenu] +HelpText=&BACK; Exit &START; Select &MENUUP;&MENUDOWN; Move + +[ScreenTitleJoin] +HelpText=Press &START; to Play +HelpTextJoin=Press &START; to Play +HelpTextWait=Insert Credits... + +[ScreenProfileLoad] +HelpText=... Loading profiles, please wait ... + +[ScreenSelectProfile] +HelpText=&MENUUP;&MENUDOWN; Switch Profile &START; Choose/Join &BACK; Unselect + +[ScreenSelectMaster] +HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move + +[ScreenSelectPlayMode] +HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move + +[ScreenSelectPlayStyle] +HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move + +[ScreenGameInformation] +HelpText=&BACK; Exit &START; Skip + +[ScreenSelectMusic] +HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&AUXWHITE;+[KEY] Sort To [KEY] +AlternateHelpText=&SELECT;+&MENULEFT;&MENURIGHT; Change Difficulties &SELECT;+&START; Quick Sort + +[ScreenSelectCourse] +HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&UP;&DOWN;&UP;&DOWN; for other course types + +[ScreenOptions] +HelpText=&BACK; Exit &START; Choose &SELECT; Go Up &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move + +[ScreenStageInformation] +HelpText= + +[ScreenGameplay] +HelpText= + +[ScreenEvaluation] +HelpText=&BACK; Exit &START; Move On &MENULEFT;+&MENURIGHT; or &SELECT; Snapshot + +[OptionNames] +Custom=Special + +[ScreenTestInput] +HelpText=Hold &BACK; or &START; to exit. diff --git a/Themes/themekit/metrics.ini b/Themes/themekit/metrics.ini index 3489476bb4..d499697eee 100644 --- a/Themes/themekit/metrics.ini +++ b/Themes/themekit/metrics.ini @@ -12,29 +12,39 @@ CreditsP2Y=SCREEN_BOTTOM-4 CreditsP2OnCommand=horizalign,right;vertalign,bottom;zoom,0.675;shadowlength,1;diffusebottomedge,ColorLightTone( PlayerColor(PLAYER_2) );strokecolor,Color("Black"); [ScreenWithMenuElements] # Header ( Top of Screen ) +# Header 'Height' is 48px ShowHeader=true HeaderX=SCREEN_CENTER_X -HeaderY=SCREEN_TOP +HeaderY=SCREEN_TOP+4 HeaderOnCommand=vertalign,top;addy,-64;decelerate,0.35;addy,64; HeaderOffCommand= # Text Header ( Text displayed at top of screen on top of header ) ShowTextHeader=true TextHeaderX=SCREEN_CENTER_X-256-32 -TextHeaderY=SCREEN_TOP+32+8-1.5 +TextHeaderY=SCREEN_TOP+32+8+4-1.5 TextHeaderOnCommand=horizalign,left;vertalign,bottom;skewx,-0.125;shadowlength,1;diffusealpha,0;addx,-16;sleep,0.35;decelerate,0.125;diffusealpha,1;addx,16; TextHeaderOffCommand= # Footer ( Bottom Of Screen ) +# Footer 'Height' is 64px ShowFooter=true FooterX=SCREEN_CENTER_X -FooterY=SCREEN_BOTTOM +FooterY=SCREEN_BOTTOM-32 FooterOnCommand=vertalign,bottom;addy,48;decelerate,0.35;addy,-48 FooterOffCommand= # Menu Timer TimerX=SCREEN_CENTER_X+256+32 -TimerY=SCREEN_TOP+32+8-1.5 +TimerY=SCREEN_TOP+32+8+4-1.5 # We animate the timer in [MenuTimer], since diffusion doesn't work here. TimerOnCommand= TimerOffCommand= +# Help Text +ShowHelpDisplay=true +HelpDisplayX=SCREEN_CENTER_X +HelpDisplayY=SCREEN_BOTTOM-32-16 +HelpDisplayOnCommand=SetSecsBetweenSwitches,4;shadowlength,1;draworder,105;zoom,0.675;maxwidth,640/0.675; +HelpDisplayOffCommand=linear,0.175;zoomy,0 +[HelpDisplay] +TipShowTime=4 [MenuTimer] # Text associated with the menutimer Text1OnCommand=stopeffect;stoptweening;horizalign,right;vertalign,bottom;shadowlength,1;diffusealpha,0;x,16;sleep,0.35;decelerate,0.125;diffusealpha,1;x,0; @@ -279,20 +289,29 @@ IconChoiceEndlessDisabledCommand=diffuse,color("1,0,0,0.5"); IconChoiceEndlessOffUnfocusedCommand=linear,0.1175;zoomx,0 IconChoiceEndlessOffFocusedCommand=stopeffect;sleep,0 [ScreenSelectMusic] +BannerX=SCREEN_CENTER_X-128-32 +BannerY=SCREEN_TOP+128-8 +BannerOnCommand=scaletoclipped,256,80 +BannerOffCommand= +# +MusicWheelX=SCREEN_CENTER_X+128+64 +MusicWheelY=SCREEN_CENTER_Y +MusicWheelOnCommand=draworder,-1 +MusicWheelOffCommand= +# + +# ShowStepsDisplayP1=true -StepsDisplayP1X=SCREEN_CENTER_X-192 -StepsDisplayP1Y=SCREEN_BOTTOM-64 +StepsDisplayP1X=SCREEN_CENTER_X-128-32 +StepsDisplayP1Y=SCREEN_BOTTOM-64-16 StepsDisplayP1OnCommand= StepsDisplayP1OffCommand= # ShowStepsDisplayP2=true -StepsDisplayP2X=SCREEN_CENTER_X-192 -StepsDisplayP2Y=SCREEN_BOTTOM-64 +StepsDisplayP2X=SCREEN_CENTER_X+128+32 +StepsDisplayP2Y=SCREEN_BOTTOM-64-16 StepsDisplayP2OnCommand= StepsDisplayP2OffCommand= -# -MusicWheelX=SCREEN_RIGHT-128-18 -MusicWheelOnCommand=draworder,-1 [MusicWheel] HighlightOnCommand=blend,Blend.Add;diffuseramp;effectclock,'beatnooffset' # diff --git a/Xcode/stepmania.xcodeproj/project.pbxproj b/Xcode/stepmania.xcodeproj/project.pbxproj index a2ffdb9277..f8a7209385 100644 --- a/Xcode/stepmania.xcodeproj/project.pbxproj +++ b/Xcode/stepmania.xcodeproj/project.pbxproj @@ -3312,6 +3312,7 @@ 2BC6132313773C8E00CC8BBD /* pngwutil.c */, ); name = libpng; + path = ../extern/libpng; sourceTree = ""; }; 2BDB87261371F7FF00E6FD3A /* extern */ = { @@ -5026,6 +5027,7 @@ 2BD06FE3137240CF0018CB9F /* json_writer.cpp */, ); name = json; + path = ../extern/jsoncpp; sourceTree = ""; }; /* End PBXGroup section */ @@ -7211,7 +7213,7 @@ LIBRARY_SEARCH_PATHS = ( "$(SRCROOT)/build/$(CONFIGURATION)", "$(SRCROOT)/Libraries", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; LINKER_DISPLAYS_MANGLED_NAMES = NO; @@ -7324,7 +7326,7 @@ "$(SRCROOT)/Libraries", "$(SRCROOT)/build/$(CONFIGURATION)", "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; OBJROOT = "$(SRCROOT)/build"; @@ -7372,7 +7374,7 @@ "$(SRCROOT)/Libraries", "$(SRCROOT)/build/$(CONFIGURATION)", "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; OBJROOT = "$(SRCROOT)/build"; @@ -7422,7 +7424,7 @@ "$(SRCROOT)/Libraries", "$(SRCROOT)/build/$(CONFIGURATION)", "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; OBJROOT = "$(SRCROOT)/build"; @@ -7857,7 +7859,7 @@ LIBRARY_SEARCH_PATHS = ( "$(SRCROOT)/build/$(CONFIGURATION)", "$(SRCROOT)/Libraries", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; LINKER_DISPLAYS_MANGLED_NAMES = NO; @@ -7934,7 +7936,7 @@ "$(SRCROOT)/Libraries", "$(SRCROOT)/build/$(CONFIGURATION)", "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; OBJROOT = "$(SRCROOT)/build"; @@ -8086,7 +8088,7 @@ LIBRARY_SEARCH_PATHS = ( "$(SRCROOT)/build/$(CONFIGURATION)", "$(SRCROOT)/Libraries", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; LINKER_DISPLAYS_MANGLED_NAMES = NO; @@ -8214,7 +8216,7 @@ LIBRARY_SEARCH_PATHS = ( "$(SRCROOT)/build/$(CONFIGURATION)", "$(SRCROOT)/Libraries", - "\"$(SRCROOT)/../src/mad-0.15.1b/msvc++/Release\"", + "\"$(SRCROOT)/../extern/mad-0.15.1b/msvc++/Release\"", ); LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build\""; LINKER_DISPLAYS_MANGLED_NAMES = NO; diff --git a/src/GameManager.cpp b/src/GameManager.cpp index 8709814bdd..a3185e35fb 100644 --- a/src/GameManager.cpp +++ b/src/GameManager.cpp @@ -69,8 +69,10 @@ static const StepsTypeInfo g_StepsTypeInfos[] = { { "ds3ddx-single", 8, true, StepsTypeCategory_Single }, // beatmania { "bm-single5", 6, true, StepsTypeCategory_Single }, // called "bm" for backward compat + { "bm-versus5", 6, true, StepsTypeCategory_Single }, // called "bm" for backward compat { "bm-double5", 12, true, StepsTypeCategory_Double }, // called "bm" for backward compat { "bm-single7", 8, true, StepsTypeCategory_Single }, // called "bm" for backward compat + { "bm-versus7", 8, true, StepsTypeCategory_Single }, // called "bm" for backward compat { "bm-double7", 16, true, StepsTypeCategory_Double }, // called "bm" for backward compat // dance maniax { "maniax-single", 4, true, StepsTypeCategory_Single }, diff --git a/src/Makefile.am b/src/Makefile.am index 044b03e9bc..2a60163c84 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -389,8 +389,17 @@ Lua = ../extern/lua-5.1/src/lapi.c ../extern/lua-5.1/src/lauxlib.c ../extern/lua ../extern/lua-5.1/src/lstring.h ../extern/lua-5.1/src/ltable.h ../extern/lua-5.1/src/ltm.h ../extern/lua-5.1/src/luaconf.h ../extern/lua-5.1/src/lua.h ../extern/lua-5.1/src/lualib.h \ ../extern/lua-5.1/src/lundump.h ../extern/lua-5.1/src/lvm.h ../extern/lua-5.1/src/lzio.h -jsoncpp = ../extern/jsoncpp/src/lib_json/json_reader.cpp ../extern/jsoncpp/src/lib_json/json_value.cpp \ -../extern/jsoncpp/src/lib_json/json_writer.cpp +jsoncpp = ../extern/jsoncpp/src/lib_json/json_reader.cpp \ +../extern/jsoncpp/src/lib_json/json_value.cpp \ +../extern/jsoncpp/src/lib_json/json_writer.cpp \ +../extern/jsoncpp/include/json/autolink.h \ +../extern/jsoncpp/include/json/config.h \ +../extern/jsoncpp/include/json/features.h \ +../extern/jsoncpp/include/json/forwards.h \ +../extern/jsoncpp/include/json/json.h \ +../extern/jsoncpp/include/json/reader.h \ +../extern/jsoncpp/include/json/value.h \ +../extern/jsoncpp/include/json/writer.h RageFile = \ RageFileBasic.cpp RageFileBasic.h \ @@ -594,6 +603,9 @@ libtomcrypt_a_CPPFLAGS = -I$(srcdir)/libtomcrypt/src/headers $(AM_CPPFLAGS) noinst_LIBRARIES += libtomcrypt.a +main_CPPFLAGS = -I$(top_srcdir)/extern/jsoncpp/include \ +-I$(top_srcdir)/extern/glew-1.5.8/include + main_SOURCES = $(PNG) \ $(Screens) \ $(DataStructures) \ @@ -613,6 +625,8 @@ main_LDADD = \ libtomcrypt.a libtommath.a nodist_stepmania_SOURCES = ver.cpp + +stepmania_CPPFLAGS = $(main_CPPFLAGS) stepmania_SOURCES = $(main_SOURCES) stepmania_LDADD = $(main_LDADD) diff --git a/src/NotesLoaderJson.cpp b/src/NotesLoaderJson.cpp index a70e281756..e460a0eaba 100644 --- a/src/NotesLoaderJson.cpp +++ b/src/NotesLoaderJson.cpp @@ -1,6 +1,6 @@ #include "global.h" #include "NotesLoaderJson.h" -#include "Json/Value.h" +#include "json/value.h" #include "TimingData.h" #include "RageUtil.h" #include "JsonUtil.h" diff --git a/src/NotesWriterJson.cpp b/src/NotesWriterJson.cpp index 9cc91e3a58..9f904da75f 100644 --- a/src/NotesWriterJson.cpp +++ b/src/NotesWriterJson.cpp @@ -1,7 +1,7 @@ #include "global.h" #include "NotesWriterJson.h" #include "TimingData.h" -#include "Json/Value.h" +#include "json/value.h" #include "JsonUtil.h" #include "Song.h" #include "BackgroundUtil.h" diff --git a/src/ScreenInstallOverlay.cpp b/src/ScreenInstallOverlay.cpp index 46c82af0e1..b1037fce23 100644 --- a/src/ScreenInstallOverlay.cpp +++ b/src/ScreenInstallOverlay.cpp @@ -5,7 +5,7 @@ #include "Preference.h" #include "RageLog.h" #include "FileDownload.h" -#include "../extern/jsoncpp/include/json/value.h" +#include "json/value.h" #include "JsonUtil.h" #include "SpecialFiles.h" class Song;