update Hello World some more
This commit is contained in:
@@ -0,0 +1,6 @@
|
|||||||
|
return Def.ActorFrame{
|
||||||
|
Def.Quad{
|
||||||
|
InitCommand=cmd(FullScreen;diffuse,color("#fffdf2FF"));
|
||||||
|
OnCommand=cmd(decelerate,0.75;diffusealpha,0);
|
||||||
|
};
|
||||||
|
};
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
return Def.Quad{
|
||||||
|
InitCommand=cmd(FullScreen;diffuse,color("#fffdf200"));
|
||||||
|
OnCommand=cmd(decelerate,1;diffusealpha,1);
|
||||||
|
};
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
return Def.ActorFrame{
|
||||||
|
Def.Quad{
|
||||||
|
InitCommand=cmd(FullScreen;diffuse,color("#fffdf200"));
|
||||||
|
OnCommand=cmd(sleep,1.125;decelerate,0.875;diffusealpha,1);
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -58,5 +58,11 @@ return Def.ActorFrame {
|
|||||||
-- Creative Commons logo, using a local file in the same directory:
|
-- Creative Commons logo, using a local file in the same directory:
|
||||||
LoadActor( "creativecommons" )..{
|
LoadActor( "creativecommons" )..{
|
||||||
InitCommand=cmd(x,SCREEN_LEFT+64;y,SCREEN_BOTTOM-48;Real);
|
InitCommand=cmd(x,SCREEN_LEFT+64;y,SCREEN_BOTTOM-48;Real);
|
||||||
|
OnCommand=cmd(addy,32;cropbottom,1;fadebottom,1;decelerate,0.8;cropbottom,0;fadebottom,0;addy,-32);
|
||||||
|
};
|
||||||
|
-- a cheap reflection effect.
|
||||||
|
LoadActor( "creativecommons" )..{
|
||||||
|
InitCommand=cmd(x,SCREEN_LEFT+64;y,SCREEN_BOTTOM-20;valign,0;zoomy,-0.6;rotationx,-40;diffusealpha,0.6;Real;);
|
||||||
|
OnCommand=cmd(addy,8;croptop,1;fadetop,0;decelerate,0.8;croptop,0;fadetop,1;addy,-8);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
+1
-2
@@ -1,5 +1,4 @@
|
|||||||
-- this file returns a single quad that represents the background of
|
-- this file returns a single quad that represents the background of most screens in the theme.
|
||||||
-- ScreenTitleMenu.
|
|
||||||
return Def.Quad{
|
return Def.Quad{
|
||||||
-- FullScreen is defined in Themes/_fallback/Scripts/02 Actor.lua in sm-ssc.
|
-- FullScreen is defined in Themes/_fallback/Scripts/02 Actor.lua in sm-ssc.
|
||||||
|
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
local time = ...
|
||||||
|
if not time then time = 1.0 end
|
||||||
|
|
||||||
|
return Def.Actor{ OnCommand=cmd(sleep,time); };
|
||||||
@@ -13,17 +13,22 @@ Concepts used:
|
|||||||
* accelerate
|
* accelerate
|
||||||
--]]
|
--]]
|
||||||
|
|
||||||
|
-- this is used as a shorthand for GameCommand.
|
||||||
|
local gc = Var("GameCommand")
|
||||||
|
|
||||||
local t = Def.ActorFrame{
|
local t = Def.ActorFrame{
|
||||||
LoadFont( "_frutiger roman" ) ..{
|
LoadFont( "_frutiger roman" ) ..{
|
||||||
-- This line tries to find a corresponding line in the current language
|
-- This line tries to find a corresponding line in the current language
|
||||||
-- ini file; If it doesn't, (and you haven't disabled error messages,)
|
-- ini file; If it doesn't, (and you haven't disabled error messages,)
|
||||||
-- then an error will pop up telling you where you need to add the
|
-- then an error will pop up telling you where you need to add the
|
||||||
-- string.
|
-- string.
|
||||||
Text=THEME:GetString( 'ScreenTitleMenu', Var("GameCommand"):GetText() );
|
Text=THEME:GetString( 'ScreenTitleMenu', gc:GetText() );
|
||||||
InitCommand=cmd(zoom,0.85;y,-1;shadowlength,0;diffuse,color("#000000");halign,1;strokecolor,color("0,0,0,0"););
|
InitCommand=cmd(zoom,0.85;y,-1;shadowlength,0;diffuse,color("#000000");halign,1;strokecolor,color("0,0,0,0"););
|
||||||
DisabledCommand=cmd( diffuse,color("0.45,0,0,1") );
|
DisabledCommand=cmd( diffuse,color("0.45,0,0,1") );
|
||||||
GainFocusCommand=cmd(stoptweening;accelerate,0.15;diffuse,color("#000000");strokecolor,color("0.85,0.9,1,0.75"););
|
GainFocusCommand=cmd(stoptweening;accelerate,0.15;diffuse,color("#000000");strokecolor,color("0.85,0.9,1,0.75"););
|
||||||
LoseFocusCommand=cmd(stoptweening;accelerate,0.2;diffuse,color("#888888");strokecolor,color("0,0,0,0"););
|
LoseFocusCommand=cmd(stoptweening;accelerate,0.2;diffuse,color("#888888");strokecolor,color("0,0,0,0"););
|
||||||
|
OffFocusedCommand=cmd(sleep,1;decelerate,1;addx,-32;diffuse,color("#FF0000"));
|
||||||
|
OffUnfocusedCommand=cmd(sleep,0.2*gc:GetIndex();linear,0.5;addx,SCREEN_CENTER_X;);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2,5 +2,6 @@
|
|||||||
WindowTitle=Hello World (and other sm-ssc theming examples)
|
WindowTitle=Hello World (and other sm-ssc theming examples)
|
||||||
|
|
||||||
[ScreenTitleMenu]
|
[ScreenTitleMenu]
|
||||||
Game Start=Enter Guide
|
Guide=Guide
|
||||||
|
Reference=Reference
|
||||||
Tutorial=Tutorial Series
|
Tutorial=Tutorial Series
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# [en] ThemeInfo is used to set the theme's name (as it appears in the options
|
# [en] ThemeInfo is used to set the theme's name (as it appears in the options
|
||||||
# menu), as well as the author (which shows up on ScreenInit, assuming you use it
|
# menu), as well as the author (which shows up on ScreenInit, assuming you use it
|
||||||
# in your them).
|
# in your theme).
|
||||||
[ThemeInfo]
|
[ThemeInfo]
|
||||||
DisplayName=Hello World
|
DisplayName=Hello World
|
||||||
Author=SSC
|
Author=Various Contributors
|
||||||
@@ -14,46 +14,106 @@ InitialScreen="ScreenTitleMenu"
|
|||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# [core] Core Screens; these are the concrete implementations.
|
# [core] Core Screens; these are the concrete implementations.
|
||||||
|
|
||||||
|
# ScreenTitleMenu is the first screen you see in this theme, thanks to the
|
||||||
|
# [Common] InitialScreen metric being changed.
|
||||||
[ScreenTitleMenu]
|
[ScreenTitleMenu]
|
||||||
|
# PrevScreen is set to make sure nothing gets messed up.
|
||||||
PrevScreen="ScreenTitleMenu"
|
PrevScreen="ScreenTitleMenu"
|
||||||
# These settings are used to disable the attract sequence:
|
# These settings are used to disable the attract sequence:
|
||||||
IdleTimeoutSeconds=-1
|
IdleTimeoutSeconds=-1
|
||||||
IdleTimeoutScreen="ScreenTitleMenu"
|
IdleTimeoutScreen="ScreenTitleMenu"
|
||||||
|
|
||||||
# These settings define what options appear on the menu:
|
# These settings define what options appear on the menu and what commands are
|
||||||
|
# run when they are selected:
|
||||||
ChoiceNames="1,2,3,4,5"
|
ChoiceNames="1,2,3,4,5"
|
||||||
Choice1="text,Guide"
|
Choice1="text,Guide;screen,ScreenGuideMain"
|
||||||
Choice2="text,Reference"
|
Choice2="text,Reference;"
|
||||||
Choice3="text,Tutorial"
|
Choice3="text,Tutorial;"
|
||||||
Choice4="screen,ScreenOptionsService;text,Options"
|
Choice4="text,Options;screen,ScreenOptionsService;"
|
||||||
Choice5="screen,ScreenExit;text,Exit"
|
Choice5="text,Exit;screen,ScreenExit;"
|
||||||
|
|
||||||
# These control the placement of the items, as well as the list:
|
# These control the placement of the items, as well as the list:
|
||||||
ScrollerX=SCREEN_RIGHT-44
|
ScrollerX=SCREEN_RIGHT-44
|
||||||
ScrollerY=SCREEN_CENTER_Y+32
|
ScrollerY=SCREEN_CENTER_Y+32
|
||||||
|
ScrollerOnCommand=addx,SCREEN_CENTER_X;decelerate,0.8;addx,-SCREEN_CENTER_X
|
||||||
ScrollerTransform=function(self,offset,itemIndex,numItems) self:y(27*offset) end
|
ScrollerTransform=function(self,offset,itemIndex,numItems) self:y(27*offset) end
|
||||||
|
|
||||||
|
[ScreenOptionsService]
|
||||||
|
# dummying out ScreenInit
|
||||||
|
NextScreen="ScreenTitleMenu"
|
||||||
|
PrevScreen="ScreenTitleMenu"
|
||||||
################################################################################
|
################################################################################
|
||||||
# [guide] The guide splits the elements of StepMania theming into different sections. #
|
# [guide] The guide splits the elements of StepMania theming into different sections.
|
||||||
|
# It acts as an introduction to all of the concepts in modern StepMania theming.
|
||||||
# All guide pages aside from ScreenGuideMain MUST be prefixed with "Guide" in
|
# All guide pages aside from ScreenGuideMain MUST be prefixed with "Guide" in
|
||||||
# order to differentiate them from the core screens.
|
# order to differentiate them from the core screens.
|
||||||
[ScreenGuideMain]
|
[ScreenGuideMain]
|
||||||
|
Class="ScreenSelectMaster"
|
||||||
|
Fallback="ScreenSelectMaster"
|
||||||
|
PrevScreen="ScreenTitleMenu"
|
||||||
|
|
||||||
|
ChoiceNames="Metrics,Fonts,Graphics,BGAnims,Sounds,Scripts,Other,NoteSkins,Announcers"
|
||||||
|
ChoiceMetrics=""
|
||||||
|
ChoiceFonts=""
|
||||||
|
ChoiceGraphics=""
|
||||||
|
ChoiceBGAnims=""
|
||||||
|
ChoiceSounds=""
|
||||||
|
ChoiceScripts=""
|
||||||
|
ChoiceOther=""
|
||||||
|
ChoiceNoteSkins=""
|
||||||
|
ChoiceAnnouncers=""
|
||||||
|
DefaultChoice="Metrics"
|
||||||
|
|
||||||
|
# guide base screen (sets up things I don't want to retype a lot -aj) #
|
||||||
|
[GuideBase]
|
||||||
|
Class="ScreenSelectMaster"
|
||||||
|
Fallback="ScreenSelectMaster"
|
||||||
|
|
||||||
## Metrics
|
## Metrics
|
||||||
|
[GuideMetrics]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
## Fonts
|
## Fonts
|
||||||
|
[GuideFonts]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
## Graphics
|
## Graphics
|
||||||
|
[GuideGraphics]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
## BGAnimations
|
## BGAnimations
|
||||||
|
[GuideBGA]
|
||||||
|
Fallback="GuideBase"
|
||||||
### Decorations (simpler)
|
### Decorations (simpler)
|
||||||
### Overlay/Underlay (can be more complex)
|
### Overlay/Underlay (can be more complex)
|
||||||
|
|
||||||
## Sounds
|
## Sounds
|
||||||
|
[GuideSounds]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
## Scripts
|
## Scripts
|
||||||
|
[GuideScripts]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
## the Other folder
|
## the Other folder
|
||||||
|
[GuideOther]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
### HowToPlay steps
|
||||||
|
### PreferredSort
|
||||||
|
|
||||||
|
# And then there are the things that are related to theming:
|
||||||
|
## NoteSkins
|
||||||
|
[GuideNoteSkins]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
|
## Announcers
|
||||||
|
[GuideAnnouncers]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
|
## Characters
|
||||||
|
[GuideCharacters]
|
||||||
|
Fallback="GuideBase"
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# [ref] The reference section contains a complete listing of commands and examples of how they work. #
|
# [ref] The reference section contains a complete listing of commands and examples of how they work. #
|
||||||
@@ -61,12 +121,98 @@ ScrollerTransform=function(self,offset,itemIndex,numItems) self:y(27*offset) end
|
|||||||
# in order to differentiate them from the core screens.
|
# in order to differentiate them from the core screens.
|
||||||
[ScreenReferenceMain]
|
[ScreenReferenceMain]
|
||||||
|
|
||||||
|
# reference base screen (sets up things I don't want to retype a lot -aj) #
|
||||||
|
[ReferenceBase]
|
||||||
|
Class="ScreenSelectMaster"
|
||||||
|
Fallback="ScreenSelectMaster"
|
||||||
|
|
||||||
## Screens
|
## Screens
|
||||||
|
[ReferenceScreens]
|
||||||
|
Fallback="ReferenceBase"
|
||||||
|
|
||||||
|
## Managers and other Singletons
|
||||||
|
[ReferenceManagers]
|
||||||
|
Fallback="ReferenceBase"
|
||||||
|
|
||||||
|
# STEPMANIA ROBOT MASTERS
|
||||||
|
### ANNOUNCER [man]
|
||||||
|
[ReferenceAnnouncerMan]
|
||||||
|
|
||||||
|
### CHARMAN
|
||||||
|
[ReferenceCharMan]
|
||||||
|
|
||||||
|
### FILEMAN
|
||||||
|
[ReferenceFileMan]
|
||||||
|
|
||||||
|
### GAMEMAN
|
||||||
|
[ReferenceGameMan]
|
||||||
|
|
||||||
|
### GAMESOUNDMAN
|
||||||
|
[ReferenceGameSoundMan]
|
||||||
|
|
||||||
|
### GAMESTATE
|
||||||
|
[ReferenceGameState]
|
||||||
|
|
||||||
|
### MEMCARDMAN
|
||||||
|
[ReferenceMemCardMan]
|
||||||
|
|
||||||
|
### MESSAGEMAN
|
||||||
|
[ReferenceMessageMan]
|
||||||
|
|
||||||
|
### NOTESKIN [man]
|
||||||
|
[ReferenceNoteskinMan]
|
||||||
|
|
||||||
|
### PREFSMAN
|
||||||
|
[ReferencePrefsMan]
|
||||||
|
|
||||||
|
### PROFILEMAN
|
||||||
|
[ReferenceProfileMan]
|
||||||
|
|
||||||
|
### SCREENMAN
|
||||||
|
[ReferenceScreenMan]
|
||||||
|
|
||||||
|
### SONGMAN
|
||||||
|
[ReferenceSongMan]
|
||||||
|
|
||||||
|
### STATSMAN
|
||||||
|
[ReferenceStatsMan]
|
||||||
|
|
||||||
|
### THEME [man]
|
||||||
|
[ReferenceThemeMan]
|
||||||
|
|
||||||
|
### UNLOCKMAN
|
||||||
|
[ReferenceUnlockMan]
|
||||||
|
|
||||||
## Classes
|
## Classes
|
||||||
|
[ReferenceClasses]
|
||||||
|
Fallback="ReferenceBase"
|
||||||
|
|
||||||
## Etc.
|
### Actor
|
||||||
|
[ReferenceActor]
|
||||||
|
#### many sub-things
|
||||||
|
|
||||||
|
### ActorFrame
|
||||||
|
[ReferenceActorFrame]
|
||||||
|
|
||||||
|
### Banner
|
||||||
|
[ReferenceBanner]
|
||||||
|
|
||||||
|
### Song
|
||||||
|
[ReferenceSong]
|
||||||
|
|
||||||
|
### Steps
|
||||||
|
[ReferenceSteps]
|
||||||
|
|
||||||
|
### Course
|
||||||
|
[ReferenceCourse]
|
||||||
|
|
||||||
|
### Trail
|
||||||
|
[ReferenceTrail]
|
||||||
|
|
||||||
|
### and a ton of missing stuff
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# [tutor] Tutorials are guides to implementing specific things #
|
# [tutor] Tutorials are guides to implementing specific things #
|
||||||
[ScreenTutorialMain]
|
[ScreenTutorialMain]
|
||||||
|
|
||||||
|
# todo: figure out what tutorials
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
Hello World (and other sm-ssc theming examples)
|
Hello World
|
||||||
|
and other sm-ssc theming examples
|
||||||
|
--------------------------------------
|
||||||
A theme by various contributors.
|
A theme by various contributors.
|
||||||
-----------------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
This theme and its accompanying documentation are licensed under
|
This theme and its accompanying documentation are licensed under
|
||||||
the Creative Commons Attribution-Share Alike 3.0 license.
|
the Creative Commons Attribution-Share Alike 3.0 license.
|
||||||
@@ -12,6 +14,22 @@ http://creativecommons.org/licenses/by-sa/3.0/us/
|
|||||||
Table of Contents
|
Table of Contents
|
||||||
Introduction [intro]
|
Introduction [intro]
|
||||||
Chapter List [chapt]
|
Chapter List [chapt]
|
||||||
|
Guide [guide]
|
||||||
|
Metrics [g_met]
|
||||||
|
Fonts [g_fon]
|
||||||
|
Graphics [g_gfx]
|
||||||
|
BGAnims [g_bga]
|
||||||
|
Sounds [g_sfx]
|
||||||
|
Scripts [g_scr]
|
||||||
|
Other [g_oth]
|
||||||
|
NoteSkins [g_not]
|
||||||
|
Announcers [g_ann]
|
||||||
|
Characters [g_cha]
|
||||||
|
Reference [ref]
|
||||||
|
Screens [r_scr]
|
||||||
|
Managers [r_man]
|
||||||
|
Classes [r_cls]
|
||||||
|
Tutorials [tutor]
|
||||||
[others tba]
|
[others tba]
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
@@ -23,3 +41,9 @@ theming for StepMania, using sm-ssc as a base.
|
|||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
The Chapters [chapt]
|
The Chapters [chapt]
|
||||||
|
|
||||||
|
The theme itself is split into three sections, encompassing various elements of
|
||||||
|
sm-ssc theming.
|
||||||
|
|
||||||
|
The Guide is a general run-through of how Themes are constructed (along with
|
||||||
|
NoteSkins, Announcers, and Characters)
|
||||||
Reference in New Issue
Block a user