From 9b68e6bc590515683091134719392ed63fff86a3 Mon Sep 17 00:00:00 2001 From: AJ Kelly Date: Thu, 15 Mar 2012 23:47:37 -0500 Subject: [PATCH] more changes to hello world --- .../BGAnimations/ScreenTitleMenu underlay.lua | 4 +- .../BGAnimations/creativecommons.png | Bin 2192 -> 1166 bytes .../ReferenceBase ItemFocused (doubleres).png | Bin 0 -> 2670 bytes .../Graphics/ReferenceBase header.lua | 23 ++++ .../Graphics/ReferenceBase scroll.lua | 34 ++++++ Themes/HelloWorld/Languages/en.ini | 20 +++- Themes/HelloWorld/metrics.ini | 24 +++- Themes/HelloWorld/screens.txt | 109 ++++++++++++++++++ 8 files changed, 209 insertions(+), 5 deletions(-) create mode 100644 Themes/HelloWorld/Graphics/ReferenceBase ItemFocused (doubleres).png create mode 100644 Themes/HelloWorld/Graphics/ReferenceBase header.lua create mode 100644 Themes/HelloWorld/Graphics/ReferenceBase scroll.lua create mode 100644 Themes/HelloWorld/screens.txt diff --git a/Themes/HelloWorld/BGAnimations/ScreenTitleMenu underlay.lua b/Themes/HelloWorld/BGAnimations/ScreenTitleMenu underlay.lua index 3b01c1c4aa..a057c0dd24 100644 --- a/Themes/HelloWorld/BGAnimations/ScreenTitleMenu underlay.lua +++ b/Themes/HelloWorld/BGAnimations/ScreenTitleMenu underlay.lua @@ -63,9 +63,9 @@ return Def.ActorFrame { -- Making a cheap reflection effect for the sake of showing off the fov and -- vanishpoint commands on ActorFrames. Def.ActorFrame{ - InitCommand=cmd(fov,45;vanishpoint,SCREEN_LEFT+64,SCREEN_BOTTOM-24;); + InitCommand=cmd(fov,45;vanishpoint,SCREEN_LEFT+64,SCREEN_BOTTOM-20;); LoadActor( "creativecommons" )..{ - InitCommand=cmd(x,SCREEN_LEFT+64;y,SCREEN_BOTTOM-24;valign,0;zoomy,-0.6;rotationx,-60;diffusealpha,0.6;Real;); + InitCommand=cmd(x,SCREEN_LEFT+64;y,SCREEN_BOTTOM-20;valign,0;zoomy,-0.6;rotationx,-60;diffusealpha,0.6;Real;); OnCommand=cmd(croptop,1;fadetop,0;decelerate,0.8;croptop,0;fadetop,1;); }; }; diff --git a/Themes/HelloWorld/BGAnimations/creativecommons.png b/Themes/HelloWorld/BGAnimations/creativecommons.png index dece7939b5040e5a74049a23f9e4e8415099f6ea..af4b9599d095e29cfd4258c4ecf6824e5441b4d4 100644 GIT binary patch delta 1104 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 WTHD#AESP%<8IE=?w&nYR&i?@%9%QKi literal 0 HcmV?d00001 diff --git a/Themes/HelloWorld/Graphics/ReferenceBase header.lua b/Themes/HelloWorld/Graphics/ReferenceBase header.lua new file mode 100644 index 0000000000..3491c5612f --- /dev/null +++ b/Themes/HelloWorld/Graphics/ReferenceBase header.lua @@ -0,0 +1,23 @@ +local t = Def.ActorFrame{ + Def.Quad{ + InitCommand=cmd(zoomto,SCREEN_WIDTH,96;diffuse,color("#EEF4FFCC")); + }; + Def.ActorFrame{ + InitCommand=cmd(y,12); + LoadFont("_frutiger roman 24px")..{ + Name="Header"; + Text=ScreenString("Header"); + InitCommand=cmd(x,-312;y,-34;halign,0;diffuse,color("#111111FF");diffusetopedge,color("#11111188");shadowlength,-1;shadowcolor,color("#FFFFFF44")); + }; + Def.Quad{ + InitCommand=cmd(zoomto,SCREEN_WIDTH*0.975,2;y,-20;diffuse,color("#111111FF");diffusetopedge,color("#11111188");shadowlength,-1;shadowcolor,color("#FFFFFF44");fadeleft,0.1;faderight,0.625); + }; + LoadFont("_frutiger roman 24px")..{ + Name="Explanation"; + Text=ScreenString("Explanation"); + InitCommand=cmd(x,-312;y,-14;align,0,0;diffuse,color("#111111FF");zoom,0.65;wrapwidthpixels,(SCREEN_WIDTH)); + }; + }; +}; + +return t; \ No newline at end of file diff --git a/Themes/HelloWorld/Graphics/ReferenceBase scroll.lua b/Themes/HelloWorld/Graphics/ReferenceBase scroll.lua new file mode 100644 index 0000000000..0220f83753 --- /dev/null +++ b/Themes/HelloWorld/Graphics/ReferenceBase scroll.lua @@ -0,0 +1,34 @@ +local gc = Var("GameCommand") +local itemName = gc:GetName() + +local t = Def.ActorFrame{ + -- focused frame + LoadActor( THEME:GetPathG("ReferenceBase","ItemFocused") )..{ + GainFocusCommand=cmd(decelerate,0.25;diffusealpha,1); + LoseFocusCommand=cmd(stoptweening;decelerate,0.25;diffusealpha,0); + }; + -- unfocused + LoadActor( THEME:GetPathG("SectionMenu","ItemUnfocused") )..{ + GainFocusCommand=cmd(decelerate,0.25;diffusealpha,0); + LoseFocusCommand=cmd(stoptweening;decelerate,0.25;diffusealpha,1); + }; + + Def.ActorFrame{ + LoadFont("_frutiger roman 24px")..{ + Name="SectionName"; + Text=ScreenString(itemName); + InitCommand=cmd(x,-250;y,-6;halign,0;diffuse,color("#222222FF")); + GainFocusCommand=cmd(decelerate,0.25;diffusealpha,1); + LoseFocusCommand=cmd(stoptweening;decelerate,0.25;diffusealpha,0.5); + }; + LoadFont("_frutiger roman 24px")..{ + Name="SectionDesc"; + Text=ScreenString(itemName.."Desc"); + InitCommand=cmd(x,-248;y,10;align,0,0;diffuse,color("#222222FF");zoom,0.5); + GainFocusCommand=cmd(decelerate,0.25;diffusealpha,1); + LoseFocusCommand=cmd(stoptweening;decelerate,0.25;diffusealpha,0.5); + }; + }; +}; + +return t; \ No newline at end of file diff --git a/Themes/HelloWorld/Languages/en.ini b/Themes/HelloWorld/Languages/en.ini index eeee7a548c..e2a06baf01 100644 --- a/Themes/HelloWorld/Languages/en.ini +++ b/Themes/HelloWorld/Languages/en.ini @@ -35,7 +35,7 @@ CharactersDesc=Three-dimensional characters dancing in Gameplay. Modeling skills [ScreenReferenceMain] Header=Reference -Explanation=This section contains reference material. It is meant for themers who already know what they are looking for. +Explanation=This section contains reference material. It is meant for themers who have some idea of what they are looking for. Screens=Screens ScreensDesc=A reference of all of StepMania 5's available screens. @@ -44,4 +44,20 @@ ManagersDesc=Various things that end in "Manager" (and sometimes not). Classes=Classes ClassesDesc=The classes that make up some of your favorite elements. LuaRef=Lua Reference -LuaRefDesc=Visit the StepMania 5 Lua reference online. \ No newline at end of file +LuaRefDesc=Visit the StepMania 5 Lua reference online. + +[ReferenceScreens] +Header=Screen Reference +Explanation=This is a list of Screens defined in StepMania's code. + +Screen=Screen +ScreenDesc=The base Screen class that every other screen derives from. + +Overlays=Screen Overlays +OverlaysDesc=Overlays that are handled regardless of screen. + +SWME=ScreenWithMenuElements +SWMEDesc=A screen with menu elements. Most other screens are derived from this class. + +Options=ScreenOptions +OptionsDesc=An options screen with various rows. \ No newline at end of file diff --git a/Themes/HelloWorld/metrics.ini b/Themes/HelloWorld/metrics.ini index 56b5b2846f..b0a43b8f75 100644 --- a/Themes/HelloWorld/metrics.ini +++ b/Themes/HelloWorld/metrics.ini @@ -173,7 +173,7 @@ AllowRepeatingInput=true HeaderY=SCREEN_TOP+72 ChoiceNames="Screens,Managers,Classes,LuaRef" -ChoiceScreens="name,Screens" +ChoiceScreens="name,Screens;screen,ReferenceScreens" ChoiceManagers="name,Managers" ChoiceClasses="name,Classes" ChoiceLuaRef="name,LuaRef;urlnoexit,http://kki.ajworld.net/lua/sm5/Lua.xml" @@ -194,11 +194,33 @@ ScrollerTransform=function(self,offset,itemIndex,numItems) self:y((itemIndex-(nu Class="ScreenSelectMaster" Fallback="ScreenSelectMaster" PrevScreen="ScreenReferenceMain" +HeaderY=SCREEN_TOP+72 + +ShowScroller=true +LoopScroller=false +PerChoiceScrollElement=false + +ScrollerX=SCREEN_CENTER_X +ScrollerY=SCREEN_CENTER_Y+48 +ScrollerNumItemsToDraw=10 +ScrollerSecondsPerItem=0.1 +ScrollerTransform=function(self,offset,itemIndex,numItems) self:y((itemIndex-(numItems/2))*64) end ## Screens [ReferenceScreens] Fallback="ReferenceBase" +ChoiceNames="Screen,Overlays,SWME,Options" +# screen,RefScreens-Screen +ChoiceScreen="name,Screen" +# screen,RefScreens-Overlays +ChoiceOverlays="name,Overlays" +# screen,RefScreens-ScreenWithMenuElements +ChoiceSWME="name,SWME" +# screen,RefScreens-ScreenOptions +ChoiceOptions="name,Options" +DefaultChoice="Screen" + ## Managers and other Singletons [ReferenceManagers] Fallback="ReferenceBase" diff --git a/Themes/HelloWorld/screens.txt b/Themes/HelloWorld/screens.txt new file mode 100644 index 0000000000..a046631d70 --- /dev/null +++ b/Themes/HelloWorld/screens.txt @@ -0,0 +1,109 @@ +Starred values appear on the ReferenceScreens list. + +* +ScreenDebugOverlay +ScreenExit +ScreenInstallOverlay +ScreenReloadSongs +ScreenSandbox +ScreenStatsOverlay +ScreenSyncOverlay +ScreenSystemLayer +ScreenTestSound +*ScreenWithMenuElements + + +ScreenEnding +ScreenHighScores +ScreenHowToPlay +ScreenRanking +ScreenUnlockStatus + + +ScreenNetEvaluation + + +ScreenGameplayNormal +ScreenGameplayShared + + +ScreenGameplayLesson +ScreenGameplaySyncMachine +ScreenJukebox + + +ScreenDemonstration + + +ScreenNetRoom +ScreenNetSelectMusic + +* +ScreenMiniMenu +ScreenNetworkOptions +ScreenOptionsCourseOverview +ScreenOptionsEditCourse +ScreenOptionsEditProfile +ScreenOptionsExportPackage +ScreenOptionsManageCourses +ScreenOptionsManageEditSteps +ScreenOptionsManageProfiles +ScreenOptionsMaster +ScreenOptionsCourseOverview +ScreenOptionsMemoryCard +ScreenOptionsToggleSongs +ScreenSMOnlineLogin + + +ScreenSongOptions +ScreenPlayerOptions + + +ScreenServiceAction +ScreenSaveSync + + +ScreenSelectMaster + + +ScreenSelectLanguage +ScreenTitleMenu +ScreenUnlockBrowse + + +ScreenTextEntryVisual + + +ScreenUnlockCelebrate + +* +ScreenAttract +ScreenBookkeeping +ScreenEdit +ScreenEditMenu +ScreenEvaluation +ScreenGameplay +ScreenInstructions +ScreenMapControllers +ScreenNameEntry +ScreenNameEntryTraditional +ScreenNetSelectBase +ScreenOptions +ScreenPackages +ScreenPackagesSSC +ScreenProfileLoad +ScreenProfileSave +ScreenPrompt +ScreenSelect +ScreenSelectCharacter +ScreenSelectMusic +ScreenSelectProfile +ScreenSetTime +ScreenSplash +ScreenTestInput +ScreenTestLights +ScreenTextEntry +ScreenWithMenuElementsSimple + + +ScreenContinue