--[[ScreenStage baackground]]
local t = Def.ActorFrame{
	-- song background
	Def.Sprite{
		InitCommand=cmd(Center);
		OnCommand=function(self)
			if GAMESTATE:IsCourseMode() then
				local pm = GAMESTATE:GetPlayMode();
				self:Load( THEME:GetPathB("ScreenStageInformation","background/_bg "..ToEnumShortString(pm)) );
			else
				local song = GAMESTATE:GetCurrentSong();
				local path;
				if song then
					local Path = song:GetBackgroundPath();
					if not Path then Path = THEME:GetPathG("Common fallback","background"); end;
					self:Load( Path );
				else
					self:Load( THEME:GetPathG("Common fallback","background") );
				end;
			end;
			self:scaletoclipped(SCREEN_WIDTH,SCREEN_HEIGHT);
		end;
		OffCommand=cmd(sleep,0.5;linear,0.50;diffusealpha,PREFSMAN:GetPreference("BGBrightness"));
	};
	-- and if we're in course mode, have the courseback do its thing
	LoadActor(THEME:GetPathB("","stagetemp/courseback"))..{
		InitCommand=cmd(x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;diffusealpha,0.5;hide_if,not GAMESTATE:IsCourseMode());
		OnCommand=cmd(decelerate,2.4;rotationz,1440;linear,0.3;diffusealpha,1;zoom,10;diffuse,color("0,0,0,1");)
	};
	-- then that quad thing
	Def.Quad{
		InitCommand=cmd(Center;zoomto,SCREEN_WIDTH,SCREEN_HEIGHT;diffuse,color("0,0,0,1"));
		OnCommand=cmd(linear,0.3;zoomy,160;diffusealpha,0.25;sleep,2.4;linear,0.3;zoomy,0;);
	};
};

return t;