new ending screens
@@ -1 +0,0 @@
|
|||||||
_blank
|
|
||||||
@@ -1,168 +0,0 @@
|
|||||||
-- I'm not comfortable including assets or code from people who want to keep their
|
|
||||||
-- name a secret. If they believe their contribution places them at any kind of
|
|
||||||
-- risk, then we should be just as wary. Also, it often makes it hard to track
|
|
||||||
-- people down a year or more later if necessary.
|
|
||||||
|
|
||||||
local graphics = {
|
|
||||||
"Lucas “v1ral” Tang",
|
|
||||||
"SPiGuMuS",
|
|
||||||
"Visage",
|
|
||||||
"Ryan “Plaguefox” McKanna",
|
|
||||||
"Lamden “Cloud34” Travis",
|
|
||||||
"Michael “Redcrusher” Curry",
|
|
||||||
"Steve “healing_vision” Klise",
|
|
||||||
"Mauro Panichella",
|
|
||||||
"Popnko",
|
|
||||||
"Griever (Julian)",
|
|
||||||
"Miguel Moore",
|
|
||||||
"Dj “AeON ExOdus” Washington",
|
|
||||||
"Xelf",
|
|
||||||
"James “SPDS” Sanders",
|
|
||||||
"k0ldx",
|
|
||||||
"Daisuke Master",
|
|
||||||
}
|
|
||||||
|
|
||||||
local theme = {
|
|
||||||
"AJ Kelly",
|
|
||||||
"Dan “dieKatze88” Colardeau",
|
|
||||||
"Mike “mDaWg” Calfin",
|
|
||||||
}
|
|
||||||
|
|
||||||
local web = {
|
|
||||||
"Brian “Bork” Bugh",
|
|
||||||
}
|
|
||||||
|
|
||||||
local sound = {
|
|
||||||
"Kyle “KeeL” Ward",
|
|
||||||
"Jim “Izlude” Cabeen",
|
|
||||||
"Sanxion7",
|
|
||||||
}
|
|
||||||
|
|
||||||
local programming = {
|
|
||||||
"Chris Danford",
|
|
||||||
"Frieza",
|
|
||||||
"Glenn Maynard",
|
|
||||||
"Bruno Figueiredo",
|
|
||||||
"Peter “Dro Kulix” May",
|
|
||||||
"Jared “nmspaz” Roberts",
|
|
||||||
"Brendan “binarys” Walker",
|
|
||||||
"Lance “Neovanglist” Gilbert",
|
|
||||||
"Michel Donais",
|
|
||||||
"Ben “Mantis” Nordstrom",
|
|
||||||
"Chris “Parasyte” Gomez",
|
|
||||||
"Michael “dirkthedaring” Patterson",
|
|
||||||
"Sauleil “angedelamort” Lamarre",
|
|
||||||
"Edwin Evans",
|
|
||||||
"Brian “Bork” Bugh",
|
|
||||||
"Joel “Elvis314” Maher",
|
|
||||||
"Garth “Kefabi” Smith",
|
|
||||||
"Pkillah",
|
|
||||||
"Robert Kemmetmueller",
|
|
||||||
"Ben “Shabach” Andersen",
|
|
||||||
"Will “SlinkyWizard” Valladao",
|
|
||||||
"TheChip",
|
|
||||||
"David “WarriorBob” H",
|
|
||||||
"Mike Waltson",
|
|
||||||
"Kevin “Miryokuteki” Slaughter",
|
|
||||||
"Thad “Coderjoe” Ward",
|
|
||||||
"Steve Checkoway",
|
|
||||||
"Sean Burke",
|
|
||||||
"XPort",
|
|
||||||
"Charles Lohr",
|
|
||||||
"Josh “Axlecrusher” Allen",
|
|
||||||
"Jason “Wolfman2000” Felds",
|
|
||||||
"Eric “Subwire” Gustafson",
|
|
||||||
"Mike “Archer” Hawkins",
|
|
||||||
"Colby “shakesoda“ Klein",
|
|
||||||
}
|
|
||||||
|
|
||||||
local thanks = {
|
|
||||||
"SimWolf",
|
|
||||||
"DJ DraftHorse",
|
|
||||||
"Dance With Intensity",
|
|
||||||
"BeMaNiRuler",
|
|
||||||
"DDRLlama",
|
|
||||||
"DDRManiaX",
|
|
||||||
"NMR",
|
|
||||||
"DJ Paranoia",
|
|
||||||
"DJ Yuz",
|
|
||||||
"Reo",
|
|
||||||
"Random Hajile",
|
|
||||||
"Chocobo Ghost",
|
|
||||||
"Tyma",
|
|
||||||
"Deluxe",
|
|
||||||
"Lagged",
|
|
||||||
"The Melting Pot",
|
|
||||||
"DDRJamz Global BBS",
|
|
||||||
"Eric “WaffleKing” Webster",
|
|
||||||
"Gotetsu",
|
|
||||||
"Mark “Foobly” Verrey",
|
|
||||||
"Mandarin Blue",
|
|
||||||
"Kenny “AngelTK” Lai",
|
|
||||||
"curewater",
|
|
||||||
"Bill “DMAshura” Shillito",
|
|
||||||
"Illusionz - Issaquah, WA",
|
|
||||||
"Quarters - Kirkland, WA",
|
|
||||||
"Pier Amusements - Bournemouth, UK",
|
|
||||||
"Westcliff Amusements - Bournemouth, UK",
|
|
||||||
}
|
|
||||||
|
|
||||||
local sections = {
|
|
||||||
{ "☆☆GRAPHICS☆☆", graphics },
|
|
||||||
{ "☆☆THEME CODE☆☆", theme },
|
|
||||||
{ "☆☆WEB DESIGN☆☆", web },
|
|
||||||
{ "☆☆SOUND☆☆", sound },
|
|
||||||
{ "☆☆PROGRAMMING☆☆", programming },
|
|
||||||
{ "☆☆SPECIAL THANKS TO☆☆", thanks },
|
|
||||||
}
|
|
||||||
|
|
||||||
-- To add people or sections modify the above.
|
|
||||||
|
|
||||||
local fontPath = THEME:GetPathF( "ScreenCredits", "titles" )
|
|
||||||
local lineOn = cmd()
|
|
||||||
local sectionOn = cmd(diffuse,1,.5,.5,1)
|
|
||||||
local otherOn = cmd(diffuse,.5,.5,1,1)
|
|
||||||
local t = Def.ActorScroller {
|
|
||||||
SecondsPerItem = 0.40;
|
|
||||||
NumItemsToDraw = 40;
|
|
||||||
TransformFunction = function( self, offset, itemIndex, numItems)
|
|
||||||
self:y(30*offset)
|
|
||||||
end;
|
|
||||||
OnCommand = cmd(scrollwithpadding,12,0);
|
|
||||||
}
|
|
||||||
|
|
||||||
local function AddLine( text, command )
|
|
||||||
local text = Def.BitmapText {
|
|
||||||
_Level = 2;
|
|
||||||
File = fontPath;
|
|
||||||
Text = text or "";
|
|
||||||
OnCommand = command or lineOn;
|
|
||||||
}
|
|
||||||
-- XXX: Hack. Wrap in an ActorFrame so OnCommand works
|
|
||||||
table.insert( t, Def.ActorFrame { text } )
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Add header and padding
|
|
||||||
AddLine( "STEPMANIA TEAM", otherOn )
|
|
||||||
AddLine()
|
|
||||||
AddLine()
|
|
||||||
AddLine()
|
|
||||||
|
|
||||||
-- Add sections with padding.
|
|
||||||
for section in ivalues(sections) do
|
|
||||||
AddLine( section[1], sectionOn )
|
|
||||||
for name in ivalues(section[2]) do
|
|
||||||
AddLine( name )
|
|
||||||
end
|
|
||||||
AddLine()
|
|
||||||
AddLine()
|
|
||||||
AddLine()
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Add more padding and then the join the team.
|
|
||||||
for i=1,13 do AddLine() end
|
|
||||||
|
|
||||||
AddLine( "Join the StepMania team", otherOn )
|
|
||||||
AddLine( "and help us out!" )
|
|
||||||
|
|
||||||
return t;
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
local t = Def.ActorFrame {
|
|
||||||
LoadActor( "song background scroller" ) .. {
|
|
||||||
InitCommand = cmd(x,SCREEN_CENTER_X-160;y,SCREEN_CENTER_Y);
|
|
||||||
};
|
|
||||||
LoadActor( "credits" ) .. {
|
|
||||||
InitCommand = cmd(x,SCREEN_CENTER_X+160;y,SCREEN_CENTER_Y);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
return t;
|
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
_blank
|
||||||
|
After Width: | Height: | Size: 14 KiB |
@@ -0,0 +1,10 @@
|
|||||||
|
return Def.ActorFrame {
|
||||||
|
Def.ActorFrame {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y+200;draworder,1;);
|
||||||
|
LoadActor("bar") .. {
|
||||||
|
};
|
||||||
|
LoadFont("_venacti Bold 15px") .. {
|
||||||
|
InitCommand=cmd(settext,"Thank you for playing!";horizalign,left;x,-280;shadowlength,0;strokecolor,color("#000000"););
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 248 KiB |
|
After Width: | Height: | Size: 170 KiB |
@@ -0,0 +1,50 @@
|
|||||||
|
local fontPath = THEME:GetPathF( "Common", "normal" )
|
||||||
|
local songs = tableslice( tableshuffle( SONGMAN:GetAllSongs() ), 100 );
|
||||||
|
local spacing_y = 24;
|
||||||
|
local num_items_to_draw = math.ceil( 480 / spacing_y );
|
||||||
|
local num_padding_items = (num_items_to_draw/2)+2;
|
||||||
|
local seconds_per_item = 0.1
|
||||||
|
local begin_fading_out_seconds = (#songs + num_padding_items * 2) * seconds_per_item;
|
||||||
|
|
||||||
|
local t = LoadFallbackB();
|
||||||
|
t[#t+1] = Def.ActorFrame {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;);
|
||||||
|
BeginCommand=function(self)
|
||||||
|
SCREENMAN:GetTopScreen():PostScreenMessage( "SM_BeginFadingOut", begin_fading_out_seconds );
|
||||||
|
end;
|
||||||
|
LoadActor("bg") .. {
|
||||||
|
InitCommand=cmd();
|
||||||
|
};
|
||||||
|
LoadActor("char left") .. {
|
||||||
|
InitCommand=cmd(x,-250+4;y,50+4;);
|
||||||
|
};
|
||||||
|
LoadActor("char right") .. {
|
||||||
|
InitCommand=cmd(x,250+10;y,50+7;);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
local t2 = Def.ActorScroller {
|
||||||
|
NumItemsToDraw = num_items_to_draw;
|
||||||
|
SecondsPerItem = seconds_per_item;
|
||||||
|
TransformFunction = function( self, offset, itemIndex, numItems )
|
||||||
|
self:y( offset*spacing_y )
|
||||||
|
end;
|
||||||
|
BeginCommand = cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scrollwithpadding,num_padding_items,num_padding_items);
|
||||||
|
}
|
||||||
|
|
||||||
|
for i=1,#songs do
|
||||||
|
local song = songs[i];
|
||||||
|
local c = SONGMAN:GetSongColor( song )
|
||||||
|
local text = Def.BitmapText {
|
||||||
|
_Level = 1;
|
||||||
|
File = fontPath;
|
||||||
|
InitCommand = cmd(settext,song:GetDisplayFullTitle();diffuse,c;strokecolor,color("#575100");shadowlength,0;);
|
||||||
|
}
|
||||||
|
|
||||||
|
table.insert( t2, Def.ActorFrame { text } )
|
||||||
|
end
|
||||||
|
|
||||||
|
t[#t+1] = t2;
|
||||||
|
|
||||||
|
return t;
|
||||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 487 KiB |
@@ -0,0 +1,102 @@
|
|||||||
|
-- I'm not comfortable including assets or code from people who want to keep their
|
||||||
|
-- name a secret. If they believe their contribution places them at any kind of
|
||||||
|
-- risk, then we should be just as wary. Also, it often makes it hard to track
|
||||||
|
-- people down a year or more later if necessary.
|
||||||
|
|
||||||
|
local graphics = {
|
||||||
|
"Chris Danford",
|
||||||
|
"Ryan “Plaguefox” McKanna",
|
||||||
|
}
|
||||||
|
|
||||||
|
local theme = {
|
||||||
|
"Chris Danford",
|
||||||
|
}
|
||||||
|
|
||||||
|
local web = {
|
||||||
|
"Chris Danford",
|
||||||
|
}
|
||||||
|
|
||||||
|
local sound = {
|
||||||
|
"Sanxion7",
|
||||||
|
"Kyle “KaW” Ward",
|
||||||
|
}
|
||||||
|
|
||||||
|
local programming = {
|
||||||
|
"Glenn Maynard",
|
||||||
|
"Chris Danford",
|
||||||
|
"Steve Checkoway",
|
||||||
|
"(remake this list)",
|
||||||
|
}
|
||||||
|
|
||||||
|
local smo = {
|
||||||
|
"Charles Lohr",
|
||||||
|
"Josh Allen",
|
||||||
|
}
|
||||||
|
|
||||||
|
local thanks = {
|
||||||
|
"The players and fans!",
|
||||||
|
}
|
||||||
|
|
||||||
|
local sections = {
|
||||||
|
{ "☆☆GRAPHICS☆☆", graphics },
|
||||||
|
{ "☆☆THEME CODE☆☆", theme },
|
||||||
|
{ "☆☆WEB DESIGN☆☆", web },
|
||||||
|
{ "☆☆SOUND☆☆", sound },
|
||||||
|
{ "☆☆PROGRAMMING☆☆", programming },
|
||||||
|
{ "☆☆STEPMANIA ONLINE☆☆", smo },
|
||||||
|
{ "☆☆SPECIAL THANKS TO☆☆", thanks },
|
||||||
|
}
|
||||||
|
|
||||||
|
-- To add people or sections modify the above.
|
||||||
|
|
||||||
|
local fontPath = THEME:GetPathF( "", "_venacti Bold 15px" )
|
||||||
|
local lineOn = cmd(strokecolor,color("#624e73BB");shadowcolor,color("#000000FF");shadowlengthx,0;shadowlengthy,3;)
|
||||||
|
local sectionOn = cmd(diffuse,1,.5,.5,1;strokecolor,color("#624e73BB");shadowcolor,color("#000000FF");shadowlengthx,0;shadowlengthy,3;)
|
||||||
|
local otherOn = cmd(diffuse,.5,.5,1,1;strokecolor,color("#624e73BB");shadowcolor,color("#000000FF");shadowlengthx,0;shadowlengthy,3;)
|
||||||
|
local item_padding_start = 12;
|
||||||
|
|
||||||
|
local t = Def.ActorScroller {
|
||||||
|
SecondsPerItem = 0.4;
|
||||||
|
NumItemsToDraw = 40;
|
||||||
|
TransformFunction = function( self, offset, itemIndex, numItems)
|
||||||
|
self:y(30*offset)
|
||||||
|
end;
|
||||||
|
OnCommand = cmd(scrollwithpadding,item_padding_start,-0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
local function AddLine( text, command )
|
||||||
|
if text then text=string.upper(text) end
|
||||||
|
local text = Def.BitmapText {
|
||||||
|
_Level = 2;
|
||||||
|
File = fontPath;
|
||||||
|
Text = text or "";
|
||||||
|
OnCommand = command or lineOn;
|
||||||
|
}
|
||||||
|
-- XXX: Hack. Wrap in an ActorFrame so OnCommand works
|
||||||
|
table.insert( t, Def.ActorFrame { text } )
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add sections with padding.
|
||||||
|
for section in ivalues(sections) do
|
||||||
|
AddLine( section[1], sectionOn )
|
||||||
|
for name in ivalues(section[2]) do
|
||||||
|
AddLine( name )
|
||||||
|
end
|
||||||
|
AddLine()
|
||||||
|
AddLine()
|
||||||
|
AddLine()
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add more padding and then the join the team.
|
||||||
|
for i=1,13 do AddLine() end
|
||||||
|
|
||||||
|
AddLine( "Join the StepMania team")
|
||||||
|
AddLine( "and help us out!" )
|
||||||
|
AddLine( "www.stepmania.com", otherOn )
|
||||||
|
|
||||||
|
t.BeginCommand=function(self)
|
||||||
|
SCREENMAN:GetTopScreen():PostScreenMessage( "SM_BeginFadingOut", (t.SecondsPerItem * (#t + item_padding_start) + 5) );
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
return t;
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
local t = LoadFallbackB();
|
||||||
|
t[#t+1] = LoadActor("bg") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;);
|
||||||
|
};
|
||||||
|
t[#t+1] = LoadActor( "song background scroller" ) .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X-174;y,SCREEN_CENTER_Y;);
|
||||||
|
};
|
||||||
|
t[#t+1] = LoadActor( "credits" ) .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X+114;y,SCREEN_CENTER_Y;);
|
||||||
|
};
|
||||||
|
t[#t+1] = LoadActor("team") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y-30;);
|
||||||
|
OnCommand=cmd(sleep,1;decelerate,0.7;addx,274;rotationz,90;);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return t;
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
local template = Def.ActorFrame {
|
local template = Def.ActorFrame {
|
||||||
Def.Sprite {
|
Def.Sprite {
|
||||||
OnCommand = cmd(LoadBackground,GetRandomSongBackground();scaletoclipped,312,232);
|
OnCommand = cmd(LoadBackground,GetRandomSongBackground();scaletoclipped,226,165;y,0;);
|
||||||
};
|
};
|
||||||
LoadActor( THEME:GetPathG("ScreenCredits", "background frame") );
|
LoadActor( "background frame" );
|
||||||
}
|
}
|
||||||
local t = Def.ActorScroller {
|
local t = Def.ActorScroller {
|
||||||
SecondsPerItem = 4.25;
|
SecondsPerItem = 4.25;
|
||||||
NumItemsToDraw = 4;
|
NumItemsToDraw = 4;
|
||||||
TransformFunction = function( self, offset, itemIndex, numItems )
|
TransformFunction = function( self, offset, itemIndex, numItems )
|
||||||
self:y(-240*offset)
|
self:y(-188*offset)
|
||||||
end;
|
end;
|
||||||
OnCommand = cmd(scrollwithpadding,2,3);
|
OnCommand = cmd(scrollwithpadding,2,3);
|
||||||
}
|
}
|
||||||
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 439 KiB |
|
After Width: | Height: | Size: 355 KiB |
@@ -0,0 +1,10 @@
|
|||||||
|
local t = LoadFallbackB();
|
||||||
|
t[#t+1] = LoadActor("bg") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;);
|
||||||
|
};
|
||||||
|
t[#t+1] = LoadActor( "picture scroller" ) .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y-20;);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return t;
|
||||||
|
After Width: | Height: | Size: 296 KiB |
|
After Width: | Height: | Size: 23 KiB |
@@ -0,0 +1,26 @@
|
|||||||
|
local names = {
|
||||||
|
{ "chris", "Chris Danford", "Seattle, WA, USA" },
|
||||||
|
{ "glenn", "Glenn Maynard", "Boston, MA, USA" },
|
||||||
|
{ "steve", "Steve Checkoway", "San Diego, CA, USA" },
|
||||||
|
};
|
||||||
|
|
||||||
|
local t = Def.ActorFrame {};
|
||||||
|
for i=1,#names do
|
||||||
|
local name = names[i];
|
||||||
|
t[#t+1] = Def.ActorFrame {
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,(i-1)*3;decelerate,0.5;addx,-SCREEN_WIDTH;sleep,2;accelerate,0.5;addx,-SCREEN_WIDTH;);
|
||||||
|
LoadActor( name[1] ) .. {
|
||||||
|
InitCommand = cmd(scaletoclipped,520,342;y,0;);
|
||||||
|
};
|
||||||
|
LoadActor( "picture frame" );
|
||||||
|
LoadFont( "_venacti bold 15px" ) .. {
|
||||||
|
InitCommand=cmd(horizalign,left;x,100;y,138;settext,string.upper(name[2] .. "\n" .. name[3]);strokecolor,color("#00000077"););
|
||||||
|
};
|
||||||
|
};
|
||||||
|
end
|
||||||
|
|
||||||
|
t.BeginCommand=function(self)
|
||||||
|
SCREENMAN:GetTopScreen():PostScreenMessage( "SM_BeginFadingOut", (3 * #names) );
|
||||||
|
end;
|
||||||
|
|
||||||
|
return t;
|
||||||
|
After Width: | Height: | Size: 451 KiB |
@@ -1,8 +0,0 @@
|
|||||||
local t = Def.ActorFrame {
|
|
||||||
LoadActor("gameover.png") .. {
|
|
||||||
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;diffusealpha,0);
|
|
||||||
OnCommand=cmd(linear,0.3;diffusealpha,0.9;sleep,5);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
return t;
|
|
||||||
|
Before Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 149 KiB |
@@ -0,0 +1,47 @@
|
|||||||
|
local t = Def.ActorFrame {
|
||||||
|
Def.ActorFrame {
|
||||||
|
LoadActor("star field") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;zoom,16;customtexturerect,0,0,16,16;texcoordvelocity,1,0;);
|
||||||
|
};
|
||||||
|
LoadActor("black circle") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y);
|
||||||
|
};
|
||||||
|
LoadActor("game star") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X-130;y,SCREEN_CENTER_Y-50;);
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,0.0;decelerate,0.5;addx,-SCREEN_WIDTH;);
|
||||||
|
};
|
||||||
|
LoadActor("over star") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y+20;);
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,0.2;decelerate,0.5;addx,-SCREEN_WIDTH;);
|
||||||
|
};
|
||||||
|
LoadActor("game text") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X-60;y,SCREEN_CENTER_Y-50+4;);
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,0.5;decelerate,0.5;addx,-SCREEN_WIDTH;);
|
||||||
|
};
|
||||||
|
LoadActor("over text") .. {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X+66;y,SCREEN_CENTER_Y+20+4;);
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,0.7;decelerate,0.5;addx,-SCREEN_WIDTH;);
|
||||||
|
};
|
||||||
|
Def.ActorFrame {
|
||||||
|
InitCommand=cmd(x,SCREEN_CENTER_X+114;y,SCREEN_CENTER_Y-50;);
|
||||||
|
OnCommand=cmd(addx,SCREEN_WIDTH;sleep,1;rotationz,360*2;decelerate,1;addx,-SCREEN_WIDTH;rotationz,0;);
|
||||||
|
|
||||||
|
LoadActor("face open") .. {
|
||||||
|
};
|
||||||
|
LoadActor("face closed") .. {
|
||||||
|
OnCommand=cmd(diffusealpha,0;sleep,3;diffusealpha,1;sleep,0.5;diffusealpha,0;);
|
||||||
|
};
|
||||||
|
Def.ActorFrame {
|
||||||
|
InitCommand=cmd(x,-54;y,-60;zoom,0;sleep,2;bounceend,0.3;zoom,1;);
|
||||||
|
LoadActor("balloon") .. {
|
||||||
|
};
|
||||||
|
LoadFont("_venacti Bold 15px") .. {
|
||||||
|
InitCommand=cmd(y,-5;settext,"See you next time!";diffuse,color("#3f4c72");shadowcolor,color("#dcb2f2aa");wrapwidthpixels,100;skewx,-0.1;shadowlength,2;);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
return t;
|
||||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 290 KiB |
@@ -1,10 +0,0 @@
|
|||||||
local t = Def.ActorFrame {
|
|
||||||
LoadActor( "_music scroll background" ) .. {
|
|
||||||
InitCommand = cmd(scale_or_crop_background);
|
|
||||||
};
|
|
||||||
LoadFont( "ScreenMusicScroll", "thanks" ) .. {
|
|
||||||
Text = "Thank you for playing!";
|
|
||||||
InitCommand = cmd(align,0,1;x,SCREEN_LEFT+20;y,SCREEN_BOTTOM-40;zoom,.8)
|
|
||||||
};
|
|
||||||
}
|
|
||||||
return t;
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
local time = THEME:GetMetric( "ScreenMusicScroll", "TimerSeconds" )
|
|
||||||
local num = time * 2
|
|
||||||
local fontPath = THEME:GetPathF( "ScreenMusicScroll", "titles" )
|
|
||||||
|
|
||||||
local t = Def.ActorScroller {
|
|
||||||
NumItemsToDraw = 6;
|
|
||||||
SecondsPerItem = time / num;
|
|
||||||
TransformFunction = function( self, offset, itemIndex, numItems )
|
|
||||||
self:y( offset*80 )
|
|
||||||
end;
|
|
||||||
BeginCommand = cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;scrollwithpadding,3,3);
|
|
||||||
}
|
|
||||||
|
|
||||||
for i=1,num do
|
|
||||||
local song = SONGMAN:GetRandomSong()
|
|
||||||
local color = SONGMAN:GetSongColor( song )
|
|
||||||
local text = Def.BitmapText {
|
|
||||||
_Level = 1;
|
|
||||||
File = fontPath;
|
|
||||||
Text = song:GetDisplayFullTitle();
|
|
||||||
OnCommand = cmd(zoom,0.7;diffuse,color);
|
|
||||||
}
|
|
||||||
|
|
||||||
table.insert( t, Def.ActorFrame { text } )
|
|
||||||
end
|
|
||||||
|
|
||||||
return t;
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Common normal
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
common normal
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
_venacti Bold 24px
|
|
||||||
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -171,8 +171,9 @@ function SelectEndingScreen()
|
|||||||
end
|
end
|
||||||
|
|
||||||
local grade = STATSMAN:GetBestFinalGrade()
|
local grade = STATSMAN:GetBestFinalGrade()
|
||||||
if Grade:Compare( grade, "Grade_Tier03" ) >= 0 then return "ScreenMusicScroll" end
|
if Grade:Compare( grade, "Grade_Tier03" ) >= 0 then return "ScreenEnding3" end
|
||||||
return "ScreenCredits"
|
if Grade:Compare( grade, "Grade_Tier05" ) >= 0 then return "ScreenEnding2" end
|
||||||
|
return "ScreenEnding1"
|
||||||
end
|
end
|
||||||
|
|
||||||
function ScreenProfileSaveNextScreen()
|
function ScreenProfileSaveNextScreen()
|
||||||
|
|||||||
@@ -86,6 +86,15 @@ function tableshuffle( t )
|
|||||||
return ret
|
return ret
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function tableslice( t, num )
|
||||||
|
local ret = { }
|
||||||
|
for i=1,table.getn(t) do
|
||||||
|
table.insert( ret, i, t[i] );
|
||||||
|
end
|
||||||
|
return ret
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
function GetRandomSongBackground()
|
function GetRandomSongBackground()
|
||||||
for i=0,50 do
|
for i=0,50 do
|
||||||
local song = SONGMAN:GetRandomSong()
|
local song = SONGMAN:GetRandomSong()
|
||||||
|
|||||||
@@ -1514,13 +1514,6 @@ WinP2OffCommand=linear,0.7;diffusealpha,0
|
|||||||
[MultiplayerEvalScoreRow]
|
[MultiplayerEvalScoreRow]
|
||||||
NumberOnCommandFunction=
|
NumberOnCommandFunction=
|
||||||
|
|
||||||
[ScreenMusicScroll]
|
|
||||||
Class="ScreenCredits"
|
|
||||||
Fallback="ScreenCredits"
|
|
||||||
Announce="music scroll"
|
|
||||||
NextScreen="ScreenHighScores"
|
|
||||||
StartScreen=ScreenTitleBranch()
|
|
||||||
|
|
||||||
[EditMenu]
|
[EditMenu]
|
||||||
EditMode="EditMode_Full"
|
EditMode="EditMode_Full"
|
||||||
ShowGroups=true
|
ShowGroups=true
|
||||||
@@ -3379,17 +3372,29 @@ Line9="list,Background"
|
|||||||
Line10="list,SaveScores"
|
Line10="list,SaveScores"
|
||||||
StopMusicOnBack=false
|
StopMusicOnBack=false
|
||||||
|
|
||||||
[ScreenCredits]
|
[ScreenEnding]
|
||||||
Class="ScreenCredits"
|
|
||||||
Fallback="ScreenAttract"
|
Fallback="ScreenAttract"
|
||||||
Announce="credits"
|
Class="ScreenEnding"
|
||||||
TimerSeconds=58
|
|
||||||
NextScreen="ScreenHighScores"
|
NextScreen="ScreenHighScores"
|
||||||
|
|
||||||
[ScreenGameOver]
|
[ScreenGameOver]
|
||||||
Class="ScreenAttract"
|
Fallback="ScreenEnding"
|
||||||
Fallback="ScreenAttract"
|
TimerSeconds=10
|
||||||
NextScreen="ScreenCompany"
|
|
||||||
|
[ScreenEnding1]
|
||||||
|
Fallback="ScreenEnding"
|
||||||
|
; decorations send "SM_BeginFadingOut", so timer is disabled
|
||||||
|
TimerSeconds=0
|
||||||
|
|
||||||
|
[ScreenEnding2]
|
||||||
|
Fallback="ScreenEnding"
|
||||||
|
; decorations send "SM_BeginFadingOut", so timer is disabled
|
||||||
|
TimerSeconds=0
|
||||||
|
|
||||||
|
[ScreenEnding3]
|
||||||
|
Fallback="ScreenEnding"
|
||||||
|
; decorations send "SM_BeginFadingOut", so timer is disabled
|
||||||
|
TimerSeconds=0
|
||||||
|
|
||||||
[ScreenSelectCharacter]
|
[ScreenSelectCharacter]
|
||||||
Class="ScreenSelectCharacter"
|
Class="ScreenSelectCharacter"
|
||||||
|
|||||||