-- how the song background comes in:
-- 1) it comes down from the top
-- 2) during this, if folds down kinda
-- 3) then floats toward the screen (zoom)
-- 4) and finally resumes to fill screen.

local t = Def.ActorFrame {
	InitCommand=cmd(fov,90);
	
	LoadSongBackground() .. {
		Condition=not GAMESTATE:IsCourseMode();
		InitCommand=cmd(y,-SCREEN_HEIGHT;zoom,0.45);
		OnCommand=function(self)
			-- in half a second...
			self:linear(0.5);
			-- move the picture to the center,
			self:y(SCREEN_CENTER_Y);
			-- rotate the balls out of it,
			self:rotationx(180);
			-- and zoom it up to 0.7.
			self:zoom(0.7);
			-- during this time, diffuse
			local rotation = { self:getrotation(); }
			self:diffuse(color("0.5,0.5,0.5,1"));
			
			-- then in the next half a second (keep it equal)...
			self:linear(0.5);
			-- set the rotation to xbox 360
			self:rotationx(360);
			-- rediffuse
			self:diffuse(color("1,1,1,1"));
			-- and zoom to full.
			self:zoom(1);
			-- sleep for a quarter of a second
			self:sleep(0.25);
			-- glow in an accelerated 15/100
			self:accelerate(0.15);
			self:glow(1,1,1,0.8);
			self:sleep(0.1);
			self:decelerate(0.15);
			self:glow(1,1,1,0);
		end;
		--OnCommand=cmd(linear,1;y,SCREEN_CENTER_Y;rotationx,180;zoom,0.7;linear,1;rotationx,360;zoom,1);
	};
};

return t;
-- naket coder