update Hello World some more

This commit is contained in:
AJ Kelly
2011-02-22 21:26:41 -06:00
parent 4e9598190d
commit f5cd8b1e41
11 changed files with 220 additions and 19 deletions
@@ -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:
LoadActor( "creativecommons" )..{
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,5 +1,4 @@
-- this file returns a single quad that represents the background of
-- ScreenTitleMenu.
-- this file returns a single quad that represents the background of most screens in the theme.
return Def.Quad{
-- FullScreen is defined in Themes/_fallback/Scripts/02 Actor.lua in sm-ssc.
+4
View File
@@ -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
--]]
-- this is used as a shorthand for GameCommand.
local gc = Var("GameCommand")
local t = Def.ActorFrame{
LoadFont( "_frutiger roman" ) ..{
-- 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,)
-- then an error will pop up telling you where you need to add the
-- 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"););
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"););
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 -1
View File
@@ -2,5 +2,6 @@
WindowTitle=Hello World (and other sm-ssc theming examples)
[ScreenTitleMenu]
Game Start=Enter Guide
Guide=Guide
Reference=Reference
Tutorial=Tutorial Series
+2 -2
View File
@@ -1,6 +1,6 @@
# [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
# in your them).
# in your theme).
[ThemeInfo]
DisplayName=Hello World
Author=SSC
Author=Various Contributors
+154 -8
View File
@@ -14,46 +14,106 @@ InitialScreen="ScreenTitleMenu"
################################################################################
# [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]
# PrevScreen is set to make sure nothing gets messed up.
PrevScreen="ScreenTitleMenu"
# These settings are used to disable the attract sequence:
IdleTimeoutSeconds=-1
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"
Choice1="text,Guide"
Choice2="text,Reference"
Choice3="text,Tutorial"
Choice4="screen,ScreenOptionsService;text,Options"
Choice5="screen,ScreenExit;text,Exit"
Choice1="text,Guide;screen,ScreenGuideMain"
Choice2="text,Reference;"
Choice3="text,Tutorial;"
Choice4="text,Options;screen,ScreenOptionsService;"
Choice5="text,Exit;screen,ScreenExit;"
# These control the placement of the items, as well as the list:
ScrollerX=SCREEN_RIGHT-44
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
[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
# order to differentiate them from the core screens.
[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
[GuideMetrics]
Fallback="GuideBase"
## Fonts
[GuideFonts]
Fallback="GuideBase"
## Graphics
[GuideGraphics]
Fallback="GuideBase"
## BGAnimations
[GuideBGA]
Fallback="GuideBase"
### Decorations (simpler)
### Overlay/Underlay (can be more complex)
## Sounds
[GuideSounds]
Fallback="GuideBase"
## Scripts
[GuideScripts]
Fallback="GuideBase"
## 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. #
@@ -61,12 +121,98 @@ ScrollerTransform=function(self,offset,itemIndex,numItems) self:y(27*offset) end
# in order to differentiate them from the core screens.
[ScreenReferenceMain]
# reference base screen (sets up things I don't want to retype a lot -aj) #
[ReferenceBase]
Class="ScreenSelectMaster"
Fallback="ScreenSelectMaster"
## 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
[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 #
[ScreenTutorialMain]
# todo: figure out what tutorials
+26 -2
View File
@@ -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.
-----------------------------------------------
--------------------------------------
This theme and its accompanying documentation are licensed under
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
Introduction [intro]
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]
================================================================================
@@ -23,3 +41,9 @@ theming for StepMania, using sm-ssc as a base.
================================================================================
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)