Add new 5.1 default theme Lambda
I'd like to thank everyone who made this possible;, including but not limited to Riakodoadm, MrThatKid, kyzentun, Luizsan, JoseVarelaP, everyone else who provided feedback and bug reports.
This commit is contained in:
@@ -1,42 +1,55 @@
|
||||
local transform = function(self,offsetFromCenter,itemIndex,numitems)
|
||||
self:y( offsetFromCenter * 44 );
|
||||
-- Man, I hate this thing. I tried to do what I could with it, though.
|
||||
|
||||
-- I'm not really sure why this needs to be separate from the main CourseContentsList creation...
|
||||
local transform = function(self,offsetFromCenter,itemIndex,numItems)
|
||||
self:y( offsetFromCenter * 62 )
|
||||
-- First condition is for making sure the items disappear before going past the banner.
|
||||
-- Second condition is to make their transition from the bottom of the screen look a little smoother.
|
||||
-- The exact numbers will likely need changing if "NumItemsToDraw" is changed.
|
||||
if offsetFromCenter < -1 or offsetFromCenter > 5 then
|
||||
self:diffusealpha(0)
|
||||
-- And this is just so the objects don't look quite as "THERE" underneath the info pane and footer.
|
||||
elseif offsetFromCenter < 0 or offsetFromCenter > 4 then
|
||||
self:diffusealpha(0.6)
|
||||
end
|
||||
end
|
||||
|
||||
return Def.CourseContentsList {
|
||||
MaxSongs = 10;
|
||||
NumItemsToDraw = 8;
|
||||
ShowCommand=cmd(bouncebegin,0.3;zoomy,1);
|
||||
HideCommand=cmd(linear,0.3;zoomy,0);
|
||||
MaxSongs = 999,
|
||||
NumItemsToDraw = 12,
|
||||
ShowCommand=cmd(bouncebegin,0.3;zoomy,1),
|
||||
HideCommand=cmd(linear,0.3;zoomy,0),
|
||||
SetCommand=function(self)
|
||||
self:SetFromGameState();
|
||||
self:SetCurrentAndDestinationItem(0);
|
||||
self:SetPauseCountdownSeconds(1);
|
||||
self:SetSecondsPauseBetweenItems( 0.25 );
|
||||
self:SetTransformFromFunction(transform);
|
||||
self:SetFromGameState()
|
||||
self:SetCurrentAndDestinationItem(0)
|
||||
self:SetPauseCountdownSeconds(1)
|
||||
self:SetSecondsPauseBetweenItems( 0.25 )
|
||||
self:SetTransformFromFunction(transform)
|
||||
--
|
||||
self:SetDestinationItem( math.max(0,self:GetNumItems() - 4) );
|
||||
self:SetLoop(false);
|
||||
self:SetMask(0,0);
|
||||
end;
|
||||
CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set");
|
||||
CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set");
|
||||
self:SetDestinationItem( math.max(0,self:GetNumItems() - 5) )
|
||||
self:SetLoop(false)
|
||||
self:SetMask(0,0)
|
||||
end,
|
||||
CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set"),
|
||||
CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set"),
|
||||
|
||||
Display = Def.ActorFrame {
|
||||
InitCommand=cmd(setsize,270,44);
|
||||
InitCommand=cmd(setsize,290,64),
|
||||
|
||||
LoadActor(THEME:GetPathG("CourseEntryDisplay","bar")) .. {
|
||||
SetSongCommand=function(self, params)
|
||||
if params.Difficulty then
|
||||
self:diffuse( CustomDifficultyToColor(params.Difficulty) );
|
||||
self:diffuse(ColorLightTone(CustomDifficultyToColor(params.Difficulty)));
|
||||
else
|
||||
self:diffuse( color("#FFFFFF") );
|
||||
end
|
||||
|
||||
(cmd(finishtweening;diffusealpha,0;sleep,0.125*params.Number;linear,0.125;diffusealpha,1;linear,0.05;glow,color("1,1,1,0.5");decelerate,0.1;glow,color("1,1,1,0")))(self);
|
||||
end;
|
||||
};
|
||||
-- These tweens were actually messing up the visibility of the scroller objects, so...
|
||||
--(cmd(finishtweening;diffusealpha,0;sleep,0.125*params.Number;smooth,0.2;diffusealpha,1))(self);
|
||||
end
|
||||
},
|
||||
|
||||
Def.TextBanner {
|
||||
InitCommand=cmd(x,-128;y,1;Load,"TextBanner";SetFromString,"", "", "", "", "", "");
|
||||
InitCommand=cmd(x,-10;y,-1;Load,"TextBannerCourse";SetFromString,"", "", "", "", "", ""),
|
||||
SetSongCommand=function(self, params)
|
||||
if params.Song then
|
||||
if GAMESTATE:GetCurrentCourse():GetDisplayFullTitle() == "Abomination" then
|
||||
@@ -55,7 +68,8 @@ return Def.CourseContentsList {
|
||||
else
|
||||
self:SetFromSong( params.Song );
|
||||
end;
|
||||
self:diffuse( CustomDifficultyToColor(params.Difficulty) );
|
||||
self:diffuse(color("#000000"));
|
||||
self:diffusealpha(0.8);
|
||||
-- self:glow("1,1,1,0.5");
|
||||
else
|
||||
self:SetFromString( "??????????", "??????????", "", "", "", "" );
|
||||
@@ -63,19 +77,19 @@ return Def.CourseContentsList {
|
||||
-- self:glow("1,1,1,0");
|
||||
end
|
||||
|
||||
(cmd(finishtweening;zoomy,0;sleep,0.125*params.Number;linear,0.125;zoomy,1.1;linear,0.05;zoomx,1.1;decelerate,0.1;zoom,1))(self);
|
||||
end;
|
||||
};
|
||||
--(cmd(finishtweening;diffusealpha,0;sleep,0.125*params.Number;smooth,0.2;diffusealpha,1;))(self);
|
||||
end
|
||||
},
|
||||
|
||||
LoadFont("CourseEntryDisplay","difficulty") .. {
|
||||
Text="0";
|
||||
InitCommand=cmd(x,114;y,0;zoom,0.75;shadowlength,1);
|
||||
Text="0",
|
||||
InitCommand=cmd(x,210;y,0;zoom,0.75),
|
||||
SetSongCommand=function(self, params)
|
||||
if params.PlayerNumber ~= GAMESTATE:GetMasterPlayerNumber() then return end
|
||||
self:settext( params.Meter );
|
||||
self:diffuse( CustomDifficultyToColor(params.Difficulty) );
|
||||
(cmd(finishtweening;zoomy,0;sleep,0.125*params.Number;linear,0.125;zoomy,1.1;linear,0.05;zoomx,1.1;decelerate,0.1;zoom,1))(self);
|
||||
end;
|
||||
};
|
||||
};
|
||||
};
|
||||
self:diffuse(ColorDarkTone(CustomDifficultyToColor(params.Difficulty) ));
|
||||
--(cmd(finishtweening;zoomy,0;sleep,0.125*params.Number;linear,0.125;zoom,1.1;linear,0.05;zoom,1))(self);
|
||||
end
|
||||
},
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user