<ActorFrame
InitCommand="%function(self)

	uksrt5_carryover = 0;

	yuno_markers = {};
	yuno_grenades = {};
	yuno_grenadesB = {};
	yuno_explosions	= {};
	
	yuno_hitchecks = {};
	
	uksrt5_p1bonus = 0;
	uksrt5_p2bonus = 0;
	noShowP2 = true;
	
	songName = GAMESTATE:GetCurrentSong():GetSongDir();
	
	for i=0, 11 do
		_G['receptor_rotationx_'..i] = 0;
		_G['receptor_rotationy_'..i] = 0;
		_G['receptor_rotationz_'..i] = 0;
		_G['receptor_x_'..i] = 0;
		_G['receptor_y_'..i] = 0;
		_G['receptor_z_'..i] = 0;
		_G['receptor_zoom_'..i] = 1;
		_G['receptor_zoomx_'..i] = 1;
		_G['receptor_zoomy_'..i] = 1;
		_G['receptor_zoomtowidth_'..i] = nil;
		_G['receptor_zoomtoheight_'..i] = nil;
		_G['receptor_tint_'..i] = nil;
		_G['receptor_fade_'..i] = nil;
		_G['receptor_effect_'..i] = '';
		_G['receptor_effectset_'..i] = false;
		_G['receptor_effectcontrol_'..i] = {0,0,0,0,'timer'};
		-------
		_G['noteskin_rotationx_'..i] = 0;
		_G['noteskin_rotationy_'..i] = 0;
		_G['noteskin_rotationz_'..i] = 0;
		_G['noteskin_x_'..i] = 0;
		_G['noteskin_y_'..i] = 0;
		_G['noteskin_z_'..i] = 0;
		_G['noteskin_zoom_'..i] = 1;
		_G['noteskin_zoomx_'..i] = 1;
		_G['noteskin_zoomy_'..i] = 1;
		_G['noteskin_zoomtowidth_'..i] = nil;
		_G['noteskin_zoomtoheight_'..i] = nil;
		_G['noteskin_tint_'..i] = {1,1,1,1};
		_G['noteskin_fade_'..i] = 1;
		_G['noteskin_effect_'..i] = '';
		_G['noteskin_effectset_'..i] = false;
		_G['noteskin_effectcontrol_'..i] = {0,0,0,0,'timer'};
	end
	
end"
><children>

	<Layer
		Type="Quad"
		InitCommand="hidden,1"
		OnCommand="sleep,1000"
	/>
	
	<Layer
		Type="Quad"
		InitCommand="hidden,1"
		OnCommand="%function(self)
			fgcurcommand = 1;
			fgcurcommand2 = 1;
			fgcurcommand3 = 1;
			yuno_pushhudon = false;
			checked = false;
			self:queuecommand('Update');
			
			yuno_pointerM = 1;
			yuno_pointerG = 1;
			yuno_pointerE = 1;
			yuno_firing = false;
			yuno_markerdelay = 2;
			
			yuno_p1chargedelay = 
			
			yuno_p1died = 0;
			yuno_p1invin = 0;
			
			yuno_shotlength = 1.5;
			function yuno_fire()
				if yuno_push > 80 then
				
					yuno_sound('mortar.wav');
					yuno_push = yuno_push-85;
					
					table.insert(yuno_hitchecks,{GAMESTATE:GetSongBeat()+(2.783*yuno_shotlength),yuno_crossx,yuno_crossy});
					
					local a = yuno_getMarker();
					local e = yuno_getGrenade()
					local b = yuno_grenades[e];
					local c = yuno_grenadesB[e];
					local d = yuno_getExplosion();
					
					a:x(yuno_crossx);
					a:y(yuno_crossy);
					a:hidden(0);
					a:diffusealpha(2);
					a:linear(yuno_markerdelay);
					a:diffusealpha(-1);
					a:queuecommand('Hide');
					
					b:hidden(0);
					b:x(-165+SCREEN_RIGHT+((yuno_crossx-(120+96))/((240+192)/50)));
					b:y(-230+SCREEN_BOTTOM+((yuno_crossy-(120+96))/((240+192)/50)));
					b:linear(yuno_shotlength);
					b:x(yuno_crossx);
					b:y(yuno_crossy);
					b:queuecommand('Hide');
					
					c:decelerate(yuno_shotlength/2);
					c:addy(-60);
					c:accelerate(yuno_shotlength/2);
					c:addy(60);
					
					d:x(yuno_crossx);
					d:y(yuno_crossy-96);
					d:sleep(yuno_shotlength);
					d:queuecommand('Explode');
					
					yuno_explodesound:finishtweening();
					yuno_explodesound:sleep(yuno_shotlength);
					yuno_explodesound:queuecommand('Explode');
					
					yuno_crossbowholder:x(20);
					yuno_crossbowholder:y(20);
					yuno_crossbowholder:linear(0.3);
					yuno_crossbowholder:x(0);
					yuno_crossbowholder:y(0);
					
				end
			end
			
			function yuno_getMarker()
				local m = yuno_pointerM;
				yuno_pointerM = yuno_pointerM+1;
				if yuno_pointerM>table.getn(yuno_markers) then
					yuno_pointerM = 1;
				end
				return yuno_markers[m]
			end
			function yuno_getGrenade()
				local g = yuno_pointerG;
				yuno_pointerG = yuno_pointerG+1;
				if yuno_pointerG>table.getn(yuno_grenades) then
					yuno_pointerG = 1;
				end
				return g
			end
			function yuno_getExplosion()
				local e = yuno_pointerE;
				yuno_pointerE = yuno_pointerE+1;
				if yuno_pointerE>table.getn(yuno_explosions) then
					yuno_pointerE = 1;
				end
				return yuno_explosions[e]
			end
			
			function yuno_round(num)
				local mult = 10^(2 or 0)
				return math.floor(num * mult + 0.5) / mult
			end
			
			yuno_keys = {0,0,0,0,0,0,0,0,0,0,0,0,0}
			yuno_p1speed = 4;
			yuno_p2speed = 2;
			
			yuno_speedmod = 2;
			--yuno_deltaspeed = 0.05;
			yuno_deltaspeed = 0;
			
			yuno_recharge = 1;
			
			yuno_p2pushdist = 100
			
			yuno_push = 100;
			
			yuno_crossx = 240;
			yuno_crossy = 240;
			
--lua course :D	/ timed mod management	
curmod = 1;
--{beat,mod,player}
mods = {
{15.5,'*10000 beat'},
{29,'*0.04 -10 reverse, 1.75x'},
{29.5,'*10000 no beat'},
{75.5,'*10000 beat'},
{76-.1,'*10 200 dizzy'},
{83.5,'*10000 no beat'},
{84-.1,'*10 no dizzy'},

{91,'*40 -200 drunk'},
{91.25,'*80 200 drunk'},
{91.5,'*10000 beat'},
{91.5,'*80 -200 drunk'},
{91.75,'*80 200 drunk'},
{92-.1,'*10 200 dizzy'},
{92,'*40 no drunk'},

{99.5,'*10000 no beat'},
{100-.1,'*10 no dizzy'},

{120,'*2.4 centered'},
{120.90,'*10000 no centered'},
{121,'*2.4 centered'},
{121.90,'*10000 no centered'},
{122,'*2.4 centered'},
{122.90,'*10000 no centered'},
{123,'*2.4 centered'},
{123.5,'*1000 beat'},
{123.90,'*10000 no centered'},

{130.00-.05,'*10000 invert'},
{130.08-.05,'*10000 no invert'},
{130.16-.05,'*10000 invert'},
{130.25-.05,'*10000 no invert'},
{130.33-.05,'*10000 invert'},
{130.41-.05,'*10000 no invert'},
{130.50-.05,'*10000 invert'},
{130.58-.05,'*10000 no invert'},
{130.66-.05,'*10000 invert'},
{130.75-.05,'*10000 no invert'},
{130.83-.05,'*10000 invert'},
{130.91-.05,'*10000 no invert'},
{131-.05,'*10000 no invert'},

{172-.5,'*1000 beat'},
{172-.1,'*10 200 dizzy'},
{188-.1,'*10 no dizzy'},
{188,'*1.5 150 distant'},
{188.5,'*100 no beat'},

{189.5,'*2.5 150 hallway'},
{191.5,'*2.5 150 distant'},
{193.5-.1,'*10 invert, *1.5 no distant'},
{194.5-.1,'*10 no invert'},
{195.5,'*1.5 150 hallway'},
{197.5,'*2.5 150 distant'},
{199.5,'*2.5 150 hallway'},
{201.5,'*2.5 150 distant'},

{204,'*1000 no distant'},

{205,'*0.04 no reverse, *0.04 -15 flip, *0.08 20 mini'},
{211,'*'..(math.abs(0.75-yuno_speedmod)*4)..' 0.75x'},
{212,'*2 dark'},
{215,'*0.35 1.25x'},
{215.9,'*1000 beat'},
{312,'*1000 1.5x'},
{320,'*2 1.75x'},
{328,'*2 2x, *2 wave'},
{336,'*2 2.25x'},
{344.5,'*1000 no beat'},
}

--anything eater / timed object manipulation
cura = 1;
aorigin = 0;
anything = {
}

--choose to skip anything in the previous table
anythingskip = {
}

--SCREAMING GUMBALL / timed message broadcaster
curmessage = 1;
--{beat,message,ignoreIfAhead}
messages = {
{16,'BattleStart'},
{29,'YunoCast',true},
{36,'Hint1',true},
{140,'Hint2',true},
{212,'Hint3',true},
{248,'HurtBoss',true},
{312,'HurtBoss',true},
{345,'HurtBoss',true},
{356,'DoBonus'},
}

	function yuno_sound(soundName)
		SOUND:PlayOnce(songName..'lua/'..soundName);
	end
			
		end"
		
		UpdateCommand="%function(self)

			if GAMESTATE:GetSongBeat()>=0.1 and not checked then
				if SCREENMAN:GetTopScreen():GetChild('PlayerP1') then p1on = true; else p1on = false; end
				if SCREENMAN:GetTopScreen():GetChild('PlayerP2') then p2on = true; else p2on = false; end
				
				P1 = SCREENMAN:GetTopScreen():GetChild('PlayerP1');
				P2 = SCREENMAN:GetTopScreen():GetChild('PlayerP2');
				
				if SCREENMAN:GetTopScreen():GetChild('LifeP1') then LifeP1 = SCREENMAN:GetTopScreen():GetChild('LifeP1') end
				if SCREENMAN:GetTopScreen():GetChild('LifeP2') then LifeP2 = SCREENMAN:GetTopScreen():GetChild('LifeP2') end
				if SCREENMAN:GetTopScreen():GetChild('ScoreP1') then ScoreP1 = SCREENMAN:GetTopScreen():GetChild('ScoreP1') end
				if SCREENMAN:GetTopScreen():GetChild('ScoreP2') then ScoreP2 = SCREENMAN:GetTopScreen():GetChild('ScoreP2') end
				if SCREENMAN:GetTopScreen():GetChild('BPMDisplay') then BPMDisplay = SCREENMAN:GetTopScreen():GetChild('BPMDisplay') end
				if SCREENMAN:GetTopScreen():GetChild('LifeFrame') then LifeFrame = SCREENMAN:GetTopScreen():GetChild('LifeFrame') end
				if SCREENMAN:GetTopScreen():GetChild('ScoreFrame') then ScoreFrame = SCREENMAN:GetTopScreen():GetChild('ScoreFrame') end
				if SCREENMAN:GetTopScreen():GetChild('Lyrics') then Lyrics = SCREENMAN:GetTopScreen():GetChild('Lyrics') end
				if SCREENMAN:GetTopScreen():GetChild('SongForeground') then SongForeground = SCREENMAN:GetTopScreen():GetChild('SongForeground') end
				if SCREENMAN:GetTopScreen():GetChild('SongBackground') then SongBackground = SCREENMAN:GetTopScreen():GetChild('SongBackground') end
				if SCREENMAN:GetTopScreen():GetChild('Overlay') then Overlay = SCREENMAN:GetTopScreen():GetChild('Overlay') end
				if SCREENMAN:GetTopScreen():GetChild('Underlay') then Underlay = SCREENMAN:GetTopScreen():GetChild('Underlay') end
				if SCREENMAN:GetTopScreen():GetChild('StageFrame') then StageFrame = SCREENMAN:GetTopScreen():GetChild('StageFrame') end
				
				if Overlay then Overlay:hidden(1) end
				if Underlay then Underlay:hidden(1) end
				if LifeFrame then LifeFrame:hidden(1) end
				if ScoreFrame then ScoreFrame:hidden(1) end
				if BPMDisplay then BPMDisplay:hidden(1) end
				if ScoreP1 then ScoreP1:hidden(1) end
				if ScoreP2 then ScoreP2:hidden(1) end
				if LifeP1 then LifeP1:hidden(1) end
				if LifeP2 then LifeP2:hidden(1) end
				if StageFrame then StageFrame:hidden(1) end
				
				if ANIMELEAGUE_THEME then
					PREFSMAN:SetPreference('OnlyDedicatedMenuButtons',true);
				end
				
				if SCREENMAN:GetTopScreen():GetChild('Debug') then
					textcheck = SCREENMAN:GetTopScreen():GetChild('Debug'):GetText();
					SCREENMAN:GetTopScreen():GetChild('Debug'):zoom(0);
				end
				
				if P1 then
					P1:x(SCREEN_CENTER_X);
					P1:zoom(1);
					P1:GetChild('Judgment'):x(0);
					P1:GetChild('Combo'):x(0);
					P1:GetChild('Judgment'):basezoomx(0.7);
					P1:GetChild('Judgment'):basezoomy(0.7);
					P1:GetChild('Combo'):basezoomx(0.7);
					P1:GetChild('Combo'):basezoomy(0.7);
				end
				
				if P2 then
					P2:x(10000)
				end
				
				yuno_4c:diffusealpha(0);
				yuno_8c:diffusealpha(0);
				yuno_16c:diffusealpha(0);
				
				screen = SCREENMAN:GetTopScreen();
				screen:fov(70);
				screen:SetDrawByZPosition(true);
				checked = true;
			end
			
			local beat = GAMESTATE:GetSongBeat()
			
			if beat>7.6 and fgcurcommand3 == 1 then
				yuno_pushhud:decelerate(0.4);
				yuno_pushhud:x(SCREEN_RIGHT-90);
				fgcurcommand3 = fgcurcommand3+1
			end
			
			if beat>16 and fgcurcommand3 == 2 then
				
				yuno_yuno:bounceend(0.3);
				yuno_yuno:zoom(1);
				
				fgcurcommand3 = fgcurcommand3+1
			end
			
			if beat>33 and fgcurcommand3 == 3 then
				
				yuno_yuno:accelerate(0.5);
				yuno_yuno:x(SCREEN_RIGHT+224);
				
				yuno_crossbow:sleep(1);
				yuno_crossbow:diffusealpha(1);
				yuno_crossbow:decelerate(0.7);
				yuno_crossbow:addx(-300);
				
				yuno_aim:sleep(1);
				yuno_aim:decelerate(0.7);
				yuno_aim:x(240);
				yuno_aim:y(240);
				
				fgcurcommand3 = fgcurcommand3+1
			end
			
			if beat>36 and fgcurcommand == 1 then
				if P1 then
					P1:x(SCREEN_CENTER_X*0.75);
					P1:zoom(0.8);
				end
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>208 and fgcurcommand == 2 then
				
				yuno_mline:zoomtowidth(640);
				for i=0,3 do
					_G['yuno_r'..i]:zoomtoheight(640);
					_G['yuno_b'..i]:zoomtoheight(640);
				end
				yuno_targetpractice:hidden(1);
				yuno_screenfilter:finishtweening();
				yuno_screenfilter:hidden(1);
				yuno_crossbow:hidden(1);
				yuno_aim:hidden(1);
				if P1 then
					P1:x(SCREEN_CENTER_X);
					P1:zoom(1);
				end
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>29 and fgcurcommand == 1 then
				if P1 then
					P1:linear(2.5);
					P1:x(SCREEN_CENTER_X*0.75);
					P1:zoom(0.8);
					P1:rotationy(-360*4);
					P1:sleep(0);
					P1:rotationy(0);
					
					yuno_s1l:sleep(180/167);
					yuno_s1l:linear(240/167);
					yuno_s1l:zoomy(SCREEN_HEIGHT);
					yuno_s1r:sleep(180/167);
					yuno_s1r:linear(240/167);
					yuno_s1r:zoomy(SCREEN_HEIGHT);
					
					yuno_screenfilter:hidden(0);
					yuno_screenfilter:x(SCREEN_CENTER_X*0.75);
					yuno_screenfilter:diffusealpha(0);
					yuno_screenfilter:sleep(240/167);
					yuno_screenfilter:linear(180/167);
					yuno_screenfilter:diffusealpha(0.5);
					
				end
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>29 and beat<36 then
				for i=0,3 do
					_G['receptor_rotationy_'..i] = _G['receptor_rotationy_'..i]+9.52;
					_G['noteskin_rotationy_'..i] = _G['noteskin_rotationy_'..i]+9.52;
				end
			end
			
			if beat>140 and fgcurcommand2 == 1 and fgcurcommand<3 then
				MESSAGEMAN:Broadcast('HurtBoss');
				
				screen:x(SCREEN_CENTER_X);
				screen:y(SCREEN_CENTER_Y);
				SongBackground:x(SCREEN_CENTER_X*-1);
				SongBackground:y(SCREEN_CENTER_Y*-1);
				yuno_allfg:x(SCREEN_CENTER_X*-1);
				yuno_allfg:y(SCREEN_CENTER_Y*-1);
				yuno_allhud:x(SCREEN_CENTER_X*-1);
				yuno_allhud:y(SCREEN_CENTER_Y*-1);
				
				yuno_yuno:x(SCREEN_RIGHT-100);
				MESSAGEMAN:Broadcast('YunoHurt');
				yuno_targetpractice:hidden(1);
				yuno_screenfilter:finishtweening();
				yuno_screenfilter:hidden(1);
				yuno_crossbow:hidden(1);
				yuno_aim:hidden(1);
				yuno_s1l:zoomy(0);
				yuno_s1r:zoomy(0);
				if P1 then
					P1:x(0);
					P1:y(0);
					P1:zoom(1);
					P1:zoomz(1);
				end
				GAMESTATE:ApplyGameCommand('mod, *1000 no beat, *1000 no reverse');
				GAMESTATE:ApplyGameCommand('mod,*10000 no tipsy, *10000 no tornado');
				
				fgcurcommand2 = fgcurcommand2+1
			end
			
			if beat>204 and fgcurcommand2 == 2 and fgcurcommand<3 then
				MESSAGEMAN:Broadcast('HurtBoss');
				yuno_yuno:rotationz(0);
				MESSAGEMAN:Broadcast('YunoHurt');
				screen:x(0);
				screen:y(0);
				screen:rotationz(0);
				yuno_allfg:x(0);
				yuno_allfg:y(0);
				yuno_allhud:x(0);
				yuno_allhud:y(0);
				yuno_allhudcont:rotationz(0);
				SongBackground:x(0)
				SongBackground:y(0)
				if P1 then
					P1:x(SCREEN_CENTER_X);
					P1:y(SCREEN_CENTER_Y);
					P1:zoom(1);
					P1:zoomz(1);
					P1:rotationz(0);
				end
				fgcurcommand2 = fgcurcommand2+1
			end
			
			if beat>205 and fgcurcommand == 2 then
				yuno_mline:sleep(1);
				yuno_mline:decelerate(0.3);
				yuno_mline:zoomtowidth(SCREEN_WIDTH);
				for i=0,3 do
					_G['yuno_r'..i]:sleep(1+(i*0.333));
					_G['yuno_r'..i]:decelerate(0.333);
					_G['yuno_r'..i]:zoomtoheight(SCREEN_HEIGHT*1.25);
					_G['yuno_b'..i]:sleep(1+(i*0.333));
					_G['yuno_b'..i]:decelerate(0.333);
					_G['yuno_b'..i]:zoomtoheight(SCREEN_HEIGHT*1.25);
				end
				if P1 then
					P1:linear(2.5);
					P1:x(SCREEN_CENTER_X);
					P1:zoom(1);
				end
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>213 and fgcurcommand == 3 then
				if P1 then
					P1:GetChild('Judgment'):x(10000);
					P1:GetChild('Combo'):x(10000);
				end
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>312 and fgcurcommand == 4 then
				yuno_4c:decelerate(0.5);
				yuno_4c:x(SCREEN_CENTER_X);
				yuno_8c:decelerate(0.5);
				yuno_8c:x(SCREEN_CENTER_X);
				yuno_16c:decelerate(0.5);
				yuno_16c:x(SCREEN_CENTER_X);
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>345 and fgcurcommand == 5 then
				yuno_yuno:zoom(1);
				yuno_yuno:x(SCREEN_CENTER_X);
				yuno_yuno:y(SCREEN_CENTER_Y);
				MESSAGEMAN:Broadcast('YunoHurt2');
				fgcurcommand = fgcurcommand+1
			end
			
			if beat>215 and beat<345 then
				for i=0,3 do
					_G['receptor_y_'..i] = -320;
				end
			else
				for i=0,3 do
					_G['receptor_y_'..i] = 0;
				end
			end
			
			if yuno_p1died > 0 then yuno_p1died = yuno_p1died - 1/60 end
			if yuno_p1invin > 0 then yuno_p1invin = yuno_p1invin - 1/60 end
			
---------------------------------------------------------------------------------------
----------------------DON'T TOUCH IT KIDDO---------------------------------------------
---------------------------------------------------------------------------------------
			
			disable = false;
			if disable ~= true then
					
			--custom mod reader (c) 2012 #taronuke #yolo #swag #swag #amazon.co.jp #teamproofofconcept #swag
			while curmod<=table.getn(mods) and GAMESTATE:GetSongBeat()>=mods[curmod][1] do
				if table.getn(mods[curmod]) == 3 then
					GAMESTATE:ApplyGameCommand('mod,'..mods[curmod][2],mods[curmod][3]);
				else
					GAMESTATE:ApplyGameCommand('mod,'..mods[curmod][2]);
				end
				curmod = curmod+1;
			end
			
			--SCREAMING GUMBALL
			while curmessage<=table.getn(messages) and GAMESTATE:GetSongBeat()>=messages[curmessage][1] do
				if messages[curmessage][3] and GAMESTATE:GetSongBeat()>=messages[curmessage][1]+5 then
					curmessage = curmessage+1;
				else
					MESSAGEMAN:Broadcast(messages[curmessage][2]);
					curmessage = curmessage+1;
				end
			end
			
			if anything[cura] and anything[cura][1] and anything[cura][1] > aorigin then aorigin = anything[cura][1]; end
			
			--ANYTHING EATER (c) 2013 #taronuke #yolo #swag #swag #amazon.co.jp #teamproofofconcept #swag
			while checked and cura<=table.getn(anything) and anything[cura] and GAMESTATE:GetSongBeat()>=anything[cura][1] do
				--SCREENMAN:SystemMessage('run '..anything[cura][3]..' on '..anything[cura][2]);
				if GAMESTATE:GetSongBeat()>aorigin+5 and anything[cura][2] == 'P1' then
					cura = cura+1;
				else
					if anything[cura][2] == 'SystemMessage' then
						SCREENMAN:SystemMessage(anything[cura][3]);
					elseif _G[anything[cura][2]] and anything[cura][3] then
						
						if anything[cura][3] == 'sleep' then _G[anything[cura][2]]:sleep(anything[cura][4]); end
						if anything[cura][3] == 'linear' then _G[anything[cura][2]]:linear(anything[cura][4]); end
						if anything[cura][3] == 'decelerate' then _G[anything[cura][2]]:decelerate(anything[cura][4]); end
						if anything[cura][3] == 'accelerate' then _G[anything[cura][2]]:accelerate(anything[cura][4]); end
						if anything[cura][3] == 'bouncebegin' then _G[anything[cura][2]]:bouncebegin(anything[cura][4]); end
						if anything[cura][3] == 'bounceend' then _G[anything[cura][2]]:bounceend(anything[cura][4]); end
						if anything[cura][3] == 'spring' then _G[anything[cura][2]]:spring(anything[cura][4]); end
					
						if anything[cura][3] == 'x' then _G[anything[cura][2]]:x(anything[cura][4]); end
						if anything[cura][3] == 'y' then _G[anything[cura][2]]:y(anything[cura][4]); end
						if anything[cura][3] == 'z' then _G[anything[cura][2]]:z(anything[cura][4]); end
						if anything[cura][3] == 'addx' then _G[anything[cura][2]]:addx(anything[cura][4]); end
						if anything[cura][3] == 'addy' then _G[anything[cura][2]]:addy(anything[cura][4]); end
						if anything[cura][3] == 'addz' then _G[anything[cura][2]]:addz(anything[cura][4]); end
						if anything[cura][3] == 'zoom' then _G[anything[cura][2]]:zoom(anything[cura][4]); end
						if anything[cura][3] == 'zoomx' then _G[anything[cura][2]]:zoomx(anything[cura][4]); end
						if anything[cura][3] == 'zoomy' then _G[anything[cura][2]]:zoomy(anything[cura][4]); end
						if anything[cura][3] == 'zoomz' then _G[anything[cura][2]]:zoomz(anything[cura][4]); end
						if anything[cura][3] == 'zoomtowidth' then _G[anything[cura][2]]:zoomtowidth(anything[cura][4]); end
						if anything[cura][3] == 'zoomtoheight' then _G[anything[cura][2]]:zoomtoheight(anything[cura][4]); end
						if anything[cura][3] == 'rotationx' then _G[anything[cura][2]]:rotationx(anything[cura][4]); end
						if anything[cura][3] == 'rotationy' then _G[anything[cura][2]]:rotationy(anything[cura][4]); end
						if anything[cura][3] == 'rotationz' then _G[anything[cura][2]]:rotationz(anything[cura][4]); end
						if anything[cura][3] == 'diffusealpha' then _G[anything[cura][2]]:diffusealpha(anything[cura][4]); end
						
						if anything[cura][3] == 'playcommand' then _G[anything[cura][2]]:playcommand(anything[cura][4]); end
						if anything[cura][3] == 'queuecommand' then _G[anything[cura][2]]:queuecommand(anything[cura][4]); end
						
						if anything[cura][3] == 'croptop' then _G[anything[cura][2]]:croptop(anything[cura][4]); end
						if anything[cura][3] == 'cropleft' then _G[anything[cura][2]]:cropleft(anything[cura][4]); end
						if anything[cura][3] == 'cropright' then _G[anything[cura][2]]:cropright(anything[cura][4]); end
						if anything[cura][3] == 'cropbottom' then _G[anything[cura][2]]:cropbottom(anything[cura][4]); end
						if anything[cura][3] == 'fadetop' then _G[anything[cura][2]]:fadetop(anything[cura][4]); end
						if anything[cura][3] == 'fadeleft' then _G[anything[cura][2]]:fadeleft(anything[cura][4]); end
						if anything[cura][3] == 'faderight' then _G[anything[cura][2]]:faderight(anything[cura][4]); end
						if anything[cura][3] == 'fadebottom' then _G[anything[cura][2]]:fadebottom(anything[cura][4]); end
						
						if anything[cura][3] == 'diffuse' then
							_G[anything[cura][2]]:diffuse(anything[cura][4],anything[cura][5],anything[cura][6],anything[cura][7]);
						end
						if anything[cura][3] == 'glow' then
							_G[anything[cura][2]]:glow(anything[cura][4],anything[cura][5],anything[cura][6],anything[cura][7]);
						end
						
						if anything[cura][3] == 'wag' then _G[anything[cura][2]]:wag(); end
						if anything[cura][3] == 'pulse' then _G[anything[cura][2]]:pulse(); end
						if anything[cura][3] == 'spin' then _G[anything[cura][2]]:spin(); end
						if anything[cura][3] == 'bounce' then _G[anything[cura][2]]:bounce(); end
						if anything[cura][3] == 'bob' then _G[anything[cura][2]]:bob(); end
						if anything[cura][3] == 'vibrate' then _G[anything[cura][2]]:vibrate(); end
						if anything[cura][3] == 'diffuseshift' then _G[anything[cura][2]]:diffuseshift(); end
						if anything[cura][3] == 'glowshift' then _G[anything[cura][2]]:glowshift(); end
						if anything[cura][3] == 'rainbow' then _G[anything[cura][2]]:rainbow(); end
						
						if anything[cura][3] == 'effectmagnitude' then
							_G[anything[cura][2]]:effectmagnitude(anything[cura][4],anything[cura][5],anything[cura][6]);
						end
						if anything[cura][3] == 'effectclock' then _G[anything[cura][2]]:effectclock(anything[cura][4]); end
						if anything[cura][3] == 'effectperiod' then _G[anything[cura][2]]:effectperiod(anything[cura][4]); end
						if anything[cura][3] == 'effectoffset' then _G[anything[cura][2]]:effectoffset(anything[cura][4]); end
						if anything[cura][3] == 'effectdelay' then _G[anything[cura][2]]:effectdelay(anything[cura][4]); end
						if anything[cura][3] == 'effectcolor1' then
							_G[anything[cura][2]]:effectcolor1(anything[cura][4],anything[cura][5],anything[cura][6],anything[cura][7]);
						end
						if anything[cura][3] == 'effectcolor2' then
							_G[anything[cura][2]]:effectcolor2(anything[cura][4],anything[cura][5],anything[cura][6],anything[cura][7]);
						end
						
						if anything[cura][3] == 'stopeffect' then _G[anything[cura][2]]:stopeffect(); end
						if anything[cura][3] == 'stoptweening' then _G[anything[cura][2]]:stoptweening(); end
						if anything[cura][3] == 'finishtweening' then _G[anything[cura][2]]:finishtweening(); end
						if anything[cura][3] == 'hurrytweening' then _G[anything[cura][2]]:hurrytweening(anything[cura][4]); end
						
					end
					cura = cura+1;
				end
			end
			
			end
			
---------------------------------------------------------------------------------------
----------------------END DON'T TOUCH IT KIDDO-----------------------------------------
---------------------------------------------------------------------------------------			
			
			self:queuecommand('Update2');
			
---------------------------------------------------------------------------------------
----------------------input------------------------------------------------------------
---------------------------------------------------------------------------------------	

	-- GREEN BUTTON CHECK shamelessly stolen from WinDEU --
	
	if SCREENMAN:GetTopScreen():GetChild('Debug') and textcheck and
	textcheck ~= SCREENMAN:GetTopScreen():GetChild('Debug'):GetText() and ispressed == 0 then
		if not ANIMELEAGUE_THEME then
			MESSAGEMAN:Broadcast('DisqualifyPlayer1');
		end
		ispressed = 1;
	elseif textcheck and textcheck ~= SCREENMAN:GetTopScreen():GetChild('Debug'):GetText() and ispressed == 1 then
		ispressed = 0;
	end
	if SCREENMAN:GetTopScreen():GetChild('Debug') then
		textcheck = SCREENMAN:GetTopScreen():GetChild('Debug'):GetText(); -- always set textcheck to current 'give up' text
	end

	yuno_keys[1] = LpressP1
	yuno_keys[2] = DpressP1
	yuno_keys[3] = UpressP1
	yuno_keys[4] = RpressP1
	
	yuno_keys[7] = LpressP2
	yuno_keys[8] = DpressP2
	yuno_keys[9] = UpressP2
	yuno_keys[10] = RpressP2
	
	if beat>36 and beat<140 and P1 then
		yuno_firing = true
		if yuno_p1died<=1 then
			if yuno_keys[5] == 1 then
				if P1:GetX() > 120 then
					P1:addx(yuno_p1speed*-1)
				end
			end
			if yuno_keys[6] == 1 then
				if P1:GetX() < 360 then
					P1:addx(yuno_p1speed)
				end
			end
		end
		
		yuno_screenfilter:x(P1:GetX())
		
		--hittest grenades
		if table.getn(yuno_hitchecks)>0 and yuno_p1invin<=0 then
			for i=1,table.getn(yuno_hitchecks) do
				if P1 and beat>yuno_hitchecks[i][1] and beat<yuno_hitchecks[i][1]+0.1 then
					if math.abs(P1:GetX()-yuno_hitchecks[i][2]) < 90 and math.abs(P1:GetY()-yuno_hitchecks[i][3]) < 100 then
						yuno_p1died = 2;
						yuno_p1invin = 3;
						yuno_screenfilter:linear(0.1);
						yuno_screenfilter:diffuse(1,0,0,0.75);
						yuno_screenfilter:linear(1.9);
						yuno_screenfilter:diffuse(0,0,0,0.5);
						GAMESTATE:ApplyGameCommand('mod,*30 300 tipsy, *30 300 tornado');
					end
				end
			end
		end
		
		if yuno_p1died>0 then
			for i=0,11 do
				if yuno_p1died>=0.9 then
					_G['noteskin_fade_'..i] = yuno_p1died-1.5;
				end
				if yuno_p1died<=0.6 then
					_G['noteskin_fade_'..i] = 1-(2*yuno_p1died);
				end
			end
			if yuno_p1died<=0.6 then
				GAMESTATE:ApplyGameCommand('mod,*10000 '..(yuno_p1died*500)..' tornado');
				GAMESTATE:ApplyGameCommand('mod,*10000 '..(yuno_p1died*500)..' tipsy');
			end
		else
			GAMESTATE:ApplyGameCommand('mod,*10000 no tipsy, *10000 no tornado');
		end
		
	else
		for i=0,11 do
			_G['noteskin_fade_'..i] = 1;
		end
		yuno_firing = false;
	end
	
	if beat>39 and beat<140 then
		if yuno_keys[7] == 1 or yuno_keys[11] == 1 then
			if yuno_crossx > 120-64 then
				yuno_crossx = yuno_crossx-4;
			end
		end
		if yuno_keys[10] == 1 or yuno_keys[12] == 1 then
			if yuno_crossx < 360+64 then
				yuno_crossx = yuno_crossx+4;
			end
		end
		
		--[[if yuno_keys[8] == 1 then
			if yuno_crossy > 140 then
				yuno_crossy = yuno_crossy-4;
			end
		end
		if yuno_keys[9] == 1 then
			if yuno_crossy < 340 then
				yuno_crossy = yuno_crossy+4;
			end
		end]]
		
		yuno_crossbow:x(22+SCREEN_RIGHT+((yuno_crossx-(120+96))/((240+192)/50)))
		yuno_crossbow:y(22+SCREEN_BOTTOM+((yuno_crossy-(120+96))/((240+192)/50)))
		yuno_aim:x(yuno_crossx);
		yuno_aim:y(yuno_crossy);
		
		--well, let's save time and declare these variables here
		yuno_p1rotspeed = 1;
		yuno_p2rotspeed = 0.4;
		yuno_p1rot = 0;
		yuno_p2rot = 0;
	end
	
	if beat>172 then
		yuno_p2rotspeed = 0.8;
	end
	if beat>188 then
		yuno_p2rotspeed = 1.1;
	end
	
	if beat>140 and beat<203.5 then
		
		if yuno_keys[5] == 1 then
			yuno_p1rot = yuno_p1rot-yuno_p1rotspeed
		end
		if yuno_keys[6] == 1 then
			yuno_p1rot = yuno_p1rot+yuno_p1rotspeed
		end
		
		if yuno_push >= 100 then
			if yuno_keys[7] == 1 or yuno_keys[11] == 1 then
				yuno_p2rot = yuno_p2rot-yuno_p2rotspeed
			end
			if yuno_keys[10] == 1 or yuno_keys[12] == 1 then
				yuno_p2rot = yuno_p2rot+yuno_p2rotspeed
			end
		end
		
		yuno_yuno:x(SCREEN_CENTER_X-(-200*math.cos(math.rad(-yuno_p2rot))));
		yuno_yuno:y(SCREEN_CENTER_Y+(200*math.sin(math.rad(-yuno_p2rot))));
		yuno_yuno:rotationz(-yuno_p2rot);
		
		if P1 then P1:rotationz(yuno_p1rot); end
		screen:rotationz(yuno_p2rot);
		--[[yuno_allhud:x(-SCREEN_CENTER_X+(math.abs(640*math.sin(math.rad(-yuno_p2rot/2)))));
		yuno_allhud:y(-SCREEN_CENTER_Y+(math.abs(480*math.sin(math.rad(-yuno_p2rot/2)))));
		yuno_allhud:rotationz(-yuno_p2rot);]]
		--fuck it
		
		yuno_allhudcont:rotationz(-yuno_p2rot);
		
		yuno_hid = false;
		
	end
	
	if beat>212 and beat<345 then
	
		if not yuno_hid then
			yuno_yuno:bouncebegin(0.3);
			yuno_yuno:zoomx(3);
			yuno_yuno:zoomy(0);
			yuno_hid=true;
		end
		
		if yuno_p1speed>0 then
			if yuno_keys[5] == 1 then
				if yuno_4c:GetX() > 120 then
					yuno_4c:addx(yuno_p1speed*-1)
				end
			end
			if yuno_keys[6] == 1 then
				if yuno_4c:GetX() < 520 then
					yuno_4c:addx(yuno_p1speed)
				end
			end
		end
		if yuno_push >= 100 then
			if yuno_p2pushdist>0 then
				if yuno_keys[7] == 1 or yuno_keys[11] == 1 then
					if yuno_8c:GetX() > 120 then
						yuno_sound('swish.ogg');
						yuno_8c:finishtweening()
						yuno_8c:decelerate(yuno_p2pushdist*0.003)
						yuno_8c:addx(yuno_p2pushdist*-1)
						yuno_push = -10;
					end
				end
				if yuno_keys[10] == 1 or yuno_keys[12] == 1 then
					if yuno_8c:GetX() < 520 then
						yuno_sound('swish.ogg');
						yuno_8c:finishtweening()
						yuno_8c:decelerate(yuno_p2pushdist*0.003)
						yuno_8c:addx(yuno_p2pushdist)
						yuno_push = -10;
					end
				end
			else
				if yuno_keys[7] == 1 or yuno_keys[11] == 1 then
					if yuno_8c:GetX() > 120 then
						yuno_8c:addx(yuno_p2speed*-1)
					end
				end
				if yuno_keys[10] == 1 or yuno_keys[12] == 1 then
					if yuno_8c:GetX() < 520 then
						yuno_8c:addx(yuno_p2speed)
					end
				end
			end
		end
		
		yuno_16c:x((yuno_4c:GetX()+yuno_8c:GetX())/2);
		
	end
	
	if beat>212 and beat<345 then
		
		--[[for i=0,11 do
			_G['noteskin_y_'..i] = yuno_linecontainer:GetY()+16;
		end
		
		if yuno_linecontainer:GetY() > 256 then
			yuno_linecontainer:y(0)
		else
			yuno_linecontainer:addy(3)
		end]]
		
		for i=0,3 do
			_G['noteskin_x_'..i] = yuno_4c:GetX()-320;
			_G['yuno_r'..i]:x(32+(0.9*yuno_4c:GetX()-(64+6.4)*(-1.5+i)));
		end
		for i=4,7 do
			_G['noteskin_x_'..i] = yuno_8c:GetX()-320;
			_G['yuno_b'..(i-4)]:x(32+(0.9*yuno_8c:GetX()-(64+6.4)*(-1.5+(i-4))));
		end
		for i=8,11 do
			_G['noteskin_x_'..i] = yuno_16c:GetX()-320;
		end
	end
	
	if beat>0 and beat<36 then
		yuno_recharge = 0;
	elseif beat>36 and beat<76 then
		yuno_shotlength = 1.5;
		yuno_recharge = 0.6;
		yuno_markerdelay = 3;
	elseif beat>76 and beat<108 then
		yuno_shotlength = 1.3;
		yuno_recharge = 0.8;
		yuno_markerdelay = 2;
	elseif beat>108 and beat<140 then
		yuno_shotlength = 1.1;
		yuno_recharge = 1;
		yuno_markerdelay = 1;
	elseif beat>140 and beat<142 then
		yuno_recharge = 0;
	elseif beat>142 and beat<204 then
		yuno_recharge = 1;
	elseif beat>204 and beat<208 then
		yuno_recharge = 0;
	elseif beat>208 and beat<248 then
		yuno_recharge = 1;
		yuno_p2pushdist = 100
	elseif beat>248 and beat<250 then
		yuno_recharge = 0;
	elseif beat>250 and beat<312 then
		yuno_recharge = 1.75;
		yuno_p2pushdist = 50;
	elseif beat>312 and beat<316 then
		yuno_recharge = 0;
	elseif beat>316 then
		yuno_recharge = 1.5;
		yuno_p2pushdist = 0;
	end
	
	if beat>36 and beat<216 then
		yuno_p1speed = 5
	elseif beat>216 and beat<312 then
		yuno_p1speed = 3
	elseif beat>312 and beat<316 then
		yuno_p1speed = 0
	elseif beat>316 and beat<345 then
		yuno_p1speed = 2.5
	elseif beat>212 and beat<216 then
		yuno_p1speed = 4
	end
	
	if yuno_recharge == 0 then
		yuno_push = 0
		barx:diffusealpha(1);
	else
		barx:diffusealpha(0);
	end
	
	if yuno_push<100 then
		yuno_push = yuno_push+yuno_recharge;
	else
		yuno_push = 100
	end
	
	if yuno_push>0 then
		bar:zoomtowidth(64*(yuno_push/100));
	else
		bar:zoomtowidth(0);
	end
			
		end"
  
		Update2Command="%function(self)
			self:sleep(1/60);
			self:queuecommand('Update');
		end"
		
	/>
	
	<Layer Type="Quad" InitCommand="hidden,1"
	MenuLeftP1PressMessageCommand="%function (self)
		yuno_keys[5] = 1;
	end"
	MenuRightP1PressMessageCommand="%function (self)
		yuno_keys[6] = 1;
	end"
	MenuLeftP1LiftMessageCommand="%function (self)
		yuno_keys[5] = 0;
	end"
	MenuRightP1LiftMessageCommand="%function (self)
		yuno_keys[6] = 0;
	end"
	MenuLeftP2PressMessageCommand="%function (self)
		yuno_keys[11] = 1;
	end"
	MenuRightP2PressMessageCommand="%function (self)
		yuno_keys[12] = 1;
	end"
	MenuLeftP2LiftMessageCommand="%function (self)
		yuno_keys[11] = 0;
	end"
	MenuRightP2LiftMessageCommand="%function (self)
		yuno_keys[12] = 0;
	end"
	/>
	
	<Layer Type="ActorFrame" InitCommand="%function(self) yuno_allfg = self; end"><children>
	
		<Layer Type="Quad" InitCommand="%function (self) yuno_4c = self end;" OnCommand="x,SCREEN_CENTER_X;y,230;zoom,10;diffuse,1,.5,0,1" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_8c = self end;" OnCommand="x,SCREEN_CENTER_X;y,240;zoom,10;diffuse,0,.5,1,1" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_16c = self end;" OnCommand="x,SCREEN_CENTER_X;y,250;zoom,10;diffuse,.5,1,0,1" />
		
		<Layer Type="Quad" InitCommand="%function (self) yuno_s1l = self end;"
		OnCommand="blend,add;diffuse,1,1,0,0.7;x,120-96;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_s1r = self end;"
		OnCommand="blend,add;diffuse,1,1,0,0.7;x,360+96;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		
		<Layer Type="Quad" InitCommand="%function (self) yuno_r0 = self end;"
		OnCommand="blend,add;diffuse,1,0,0,0.7;x,SCREEN_CENTER_X-(64+6.4)*1.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_r1 = self end;"
		OnCommand="blend,add;diffuse,1,0,0,0.7;x,SCREEN_CENTER_X-(64+6.4)*0.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_r2 = self end;"
		OnCommand="blend,add;diffuse,1,0,0,0.7;x,SCREEN_CENTER_X-(64+6.4)*-0.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_r3 = self end;"
		OnCommand="blend,add;diffuse,1,0,0,0.7;x,SCREEN_CENTER_X-(64+6.4)*-1.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		
		<Layer Type="Quad" InitCommand="%function (self) yuno_b0 = self end;"
		OnCommand="blend,add;diffuse,0,0,1,0.5;x,SCREEN_CENTER_X-(64+6.4)*1.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_b1 = self end;"
		OnCommand="blend,add;diffuse,0,0,1,0.5;x,SCREEN_CENTER_X-(64+6.4)*0.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_b2 = self end;"
		OnCommand="blend,add;diffuse,0,0,1,0.5;x,SCREEN_CENTER_X-(64+6.4)*-0.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		<Layer Type="Quad" InitCommand="%function (self) yuno_b3 = self end;"
		OnCommand="blend,add;diffuse,0,0,1,0.5;x,SCREEN_CENTER_X-(64+6.4)*-1.5;zoomtowidth,6;zoomtoheight,0;y,0;vertalign,top;" />
		
		<Layer Type="ActorFrame" InitCommand="%function (self) yuno_linecontainer = self end"> <children>
		<Layer Type="Quad" InitCommand="%function (self) yuno_mline = self end;"
		OnCommand="blend,add;diffuse,0.6,0.6,0.6,1;x,0;horizalign,left;zoomtowidth,0;zoomtoheight,6;y,100"
		W1P1MessageCommand="%function(self) if GAMESTATE:GetSongBeat()>215 then
			self:finishtweening();
			self:diffuse(0.3,0.8,0.8,1);
			self:zoomtoheight(32);
			self:linear(0.2);
			self:zoomtoheight(6);
			self:diffuse(0.6,0.6,0.6,1);
		end end"
		W2P1MessageCommand="%function(self) if GAMESTATE:GetSongBeat()>215 then
			self:finishtweening();
			self:diffuse(0.8,0.8,0,1);
			self:zoomtoheight(32);
			self:linear(0.2);
			self:zoomtoheight(6);
			self:diffuse(0.6,0.6,0.6,1);
		end end"
		W3P1MessageCommand="%function(self) if GAMESTATE:GetSongBeat()>215 then
			self:finishtweening();
			self:diffuse(0,0.8,0,1);
			self:zoomtoheight(32);
			self:linear(0.2);
			self:zoomtoheight(6);
			self:diffuse(0.6,0.6,0.6,1);
		end end"
		W4P1MessageCommand="%function(self) if GAMESTATE:GetSongBeat()>215 then
			self:finishtweening();
			self:diffuse(0.4,0.0,0.8,1);
			self:zoomtoheight(32);
			self:linear(0.2);
			self:zoomtoheight(6);
			self:diffuse(0.6,0.6,0.6,1);
		end end"
		MissP1MessageCommand="%function(self) if GAMESTATE:GetSongBeat()>215 then
			self:finishtweening();
			self:diffuse(2.0,0.0,0.0,1);
			self:zoomtoheight(64);
			self:linear(0.4);
			self:zoomtoheight(6);
			self:diffuse(0.6,0.6,0.6,1);
		end end"
		/>
		</children></Layer>
		
		<!--yuno-->
		<Layer Type="ActorFrame" InitCommand="%function (self) yuno_yuno = self end"
		OnCommand="x,SCREEN_RIGHT-100;y,SCREEN_CENTER_Y;bob;effectmagnitude,0,5,0;zoomx,3;zoomy,0"> <children>
		
			<Layer File="evilp2/idle"
			YunoIdleMessageCommand="diffusealpha,1"
			YunoCastMessageCommand="diffusealpha,0"
			YunoHurtMessageCommand="diffusealpha,0;sleep,0.9;diffusealpha,1"
			YunoHurt2MessageCommand="diffusealpha,0;"
			/>
			
			<Layer File="evilp2/cast" InitCommand="diffusealpha,0"
			YunoIdleMessageCommand="diffusealpha,0"
			YunoHurtMessageCommand="diffusealpha,0"
			YunoHurt2MessageCommand="diffusealpha,0"
			YunoCastMessageCommand="diffusealpha,1;setstate,0"
			/>
			
			<Layer File="evilp2/hurt" InitCommand="diffusealpha,0"
			YunoIdleMessageCommand="diffusealpha,0"
			YunoHurtMessageCommand="diffusealpha,1;vibrate;effectmagnitude,2,2,0;sleep,0.4;queuecommand,StopVib"
			YunoHurt2MessageCommand="diffusealpha,1;vibrate;effectmagnitude,2,2,0;sleep,0.4;queuecommand,StopVib2"
			StopVibCommand="stopeffect;sleep,0.5;diffusealpha,0;"
			StopVib2Command="stopeffect;"
			YunoCastMessageCommand="diffusealpha,0"
			/>
			
			<Layer Type="ActorFrame" OnCommand="spin;effectmagnitude,0,0,90;zoom,1.5;"><children>
				<Layer File="evilp2/casting"
				OnCommand="rainbow;diffusealpha,0;"
				YunoCastMessageCommand="%function (self)
					SOUND:PlayOnce(songName..'lua/spell.ogg');
					self:zoom(1.1);
					self:linear(0.8);
					self:diffusealpha(1);
					self:zoom(1.0);
					self:linear(1);
					self:zoom(0.7);
					self:linear(0.8);
					self:zoom(0.6);
					self:diffusealpha(0);
				end" />
			</children> </Layer>
			
		</children> </Layer>
		
		<!--Layer Type="Quad" OnCommand="hidden,1" DisqualifyPlayer2MessageCommand="%function(self) if yuno_firing then yuno_fire() end end" /-->
		<Layer Type="Quad" OnCommand="hidden,1" DisqualifyPlayer1MessageCommand="%function(self) greenPressed() end" />
		<Layer Type="Quad" OnCommand="hidden,1" StepUpP2MessageCommand="%function(self) if yuno_firing then yuno_fire() end end" />
		
		<Layer Type="ActorFrame" InitCommand="%function (self) yuno_aim = self end" OnCommand="x,SCREEN_RIGHT+100" > <children>
		<Layer File="evilp2/aim" OnCommand="queuecommand,Loop" LoopCommand="%function(self)
			self:zoom(1);
			self:diffusealpha(0.75);
			self:linear(1.2);
			self:zoom(1.8);
			self:diffusealpha(-0.75);
			self:queuecommand('Loop');
		end" />
		<Layer File="evilp2/aim"/>
		</children> </Layer>
		
		<Layer Type="ActorFrame" InitCommand="%function (self) yuno_targetpractice = self end"> <children>
			<!--shot markers-->
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			<Layer File="evilp2/aim" InitCommand="%function (self) table.insert(yuno_markers,self) end"
			OnCommand="diffuse,1,0,0,1;hidden,1" HideCommand="hidden,1" />
			
			<!--grenades-->
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			<Layer Type="ActorFrame" InitCommand="hidden,1" OnCommand="%function (self) table.insert(yuno_grenades,self); end" HideCommand="hidden,1"> <children>
				<Layer File="evilp2/note" InitCommand="setstate,1;animate,0" OnCommand="%function (self) table.insert(yuno_grenadesB,self); end" />
			</children> </Layer>
			
			<!--explosions-->
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
			<Layer File="evilp2/explosion.sprite" InitCommand="%function (self) self:y(-100); self:hidden(1);
			table.insert(yuno_explosions,self) end" ExplodeCommand="hidden,0;setstate,0;sleep,1.146;queuecommand,Hide" HideCommand="hidden,1" />
		</children> </Layer>
		
		<!--yuno with crossbow-->
		<Layer Type="ActorFrame" InitCommand="%function (self) yuno_crossbowholder = self end"> <children>
		<Layer File="evilp2/crossbow" InitCommand="%function (self) yuno_crossbow = self end"
		OnCommand="diffusealpha,0;vertalign,bottom;y,SCREEN_BOTTOM+25;horizalign,right;x,SCREEN_RIGHT+25+300;
		bounce;effectmagnitude,0,-5,0;effectclock,bgm;effectperiod,1;effectoffset,0.05"/>
		</children> </Layer>
	
	</children> </Layer>
	
	<Layer Type="ActorFrame" InitCommand="%function(self) yuno_allhudcont = self; end"><children>
		<Layer Type="ActorFrame" InitCommand="%function(self) yuno_allhud = self; end"><children>
		
		<!--hud-->
		<Layer
			Type="Quad" InitCommand="diffuse,0,0,0,1"
			OnCommand="x,SCREEN_CENTER_X;y,0;vertalign,top;ZoomToWidth,SCREEN_WIDTH;ZoomToHeight,56;diffusealpha,0;fadebottom,0.1;"
			BattleStartMessageCommand="linear,0.6;diffusealpha,1;fadebottom,0.2;"
			Border1MessageCommand="fadebottom,0;diffusealpha,0.6;"
			Border2MessageCommand="fadebottom,0.2;diffusealpha,1;"
		/>
		
		<Layer File="_eurostile outline" Text="P1: [L1]/[R1] = Move"
		OnCommand="diffusealpha,0;x,SCREEN_CENTER_X;y,20;zoom,0.9;diffuse,1,.8,.8,0;shadowlength,0"
		Hint1MessageCommand="linear,0.3;diffusealpha,1;sleep,20;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer File="_eurostile outline" Text="&LEFT;/&RIGHT; = Aim::&START; = Fire"
		OnCommand="diffusealpha,0;horizalign,right;x,SCREEN_RIGHT-10;y,SCREEN_CENTER_Y+50;zoom,0.9;diffuse,.8,.8,1,0;shadowlength,0"
		Hint1MessageCommand="linear,0.3;diffusealpha,1;sleep,20;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer File="_eurostile outline" Text="P1: [L1]/[R1] = Rotate playfield"
		OnCommand="diffusealpha,0;x,SCREEN_CENTER_X;y,30;zoom,0.9;diffuse,1,.8,.8,0;shadowlength,0"
		Hint2MessageCommand="linear,0.3;diffusealpha,1;sleep,10;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer File="_eurostile outline" Text="&LEFT;/&RIGHT; = Rotate screen"
		OnCommand="diffusealpha,0;horizalign,right;x,SCREEN_RIGHT-10;y,SCREEN_CENTER_Y+50;zoom,0.9;diffuse,.8,.8,1,0;shadowlength,0"
		Hint2MessageCommand="linear,0.3;diffusealpha,1;sleep,10;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer Type="Quad"
			OnCommand="x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;diffuse,0,0,0,.8;zoomto,SCREEN_WIDTH,0;"
			Hint3MessageCommand="bounceend,0.4;zoomtoheight,80;sleep,7.9;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer File="_eurostile outline" Text="P1: [L1]/[R1] = Move 4ths"
		OnCommand="diffusealpha,0;x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y-20;zoom,0.9;diffuse,1,.8,.8,0;shadowlength,0"
		Hint3MessageCommand="linear,0.3;diffusealpha,1;sleep,8;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer File="_eurostile outline" Text="P2: &LEFT;/&RIGHT; = Move 8ths"
		OnCommand="diffusealpha,0;x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y+16;zoom,0.9;diffuse,.8,.8,1,0;shadowlength,0"
		Hint3MessageCommand="linear,0.3;diffusealpha,1;sleep,8;linear,0.3;diffusealpha,0;"
		/>
		
		<Layer Type="ActorFrame" InitCommand="%function(self) yuno_pushhud = self end;" OnCommand="x,SCREEN_RIGHT+90;y,SCREEN_TOP+90;zoom,1.2"><children>
			<Layer File="icon" OnCommand="y,-20;x,-4;"/>
			<Layer Type="Quad" OnCommand="y,20;x,-32;diffuse,0.8,0,0,1;diffusebottomedge,0.4,0,0,1;horizalign,left;zoomtowidth,64;zoomtoheight,16;"/>
			<Layer Type="Quad" InitCommand="%function(self) bar=self end"
			OnCommand="y,20;x,-32;diffuse,0,1,0,1;diffusebottomedge,0,0.5,0,1;horizalign,left;zoomtowidth,64;zoomtoheight,16;"/>
			<Layer File="smallgrade" InitCommand="%function(self) barx=self end" OnCommand="animate,0;setstate,0;y,20;diffusealpha,0;"/>
			<Layer File="push" OnCommand="y,20;x,-42"/>
		</children></Layer>
		
		<Layer File="_eurostile outline" Text="" InitCommand="%function(self) yuno_debug = self end"
		OnCommand="shadowlength,0;y,200;x,200;zoom,.7;"/>
		
		<Layer File="static.sprite" OnCommand="diffusealpha,0;x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;zoomtowidth,SCREEN_WIDTH;zoomtoheight,SCREEN_HEIGHT"
		ChangeFutureMessageCommand="finishtweening;diffusealpha,1;sleep,0.2;diffusealpha,0" />
		
		<Layer
			Type="Quad" InitCommand="hidden,1"
			OnCommand="%function(self) yuno_explodesound = self; end"
			ExplodeCommand="%function (self)
				if GAMESTATE:GetSongBeat()<140 then
					yuno_sound('evilp2/explosion.ogg')
				end
			end"
		/>
		
		<Layer
			Type="Quad"
			OnCommand="diffuse,1,0,0,0;zoomtowidth,SCREEN_WIDTH;zoomtoheight,SCREEN_HEIGHT;x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y"
			HurtBossMessageCommand="%function (self)
				SOUND:PlayOnce(songName..'lua/hit.ogg')
				self:diffuse(1,0,0,1);
				self:diffusealpha(1);
				self:linear(0.5)
				self:diffusealpha(0);
			end"
			BossKillMessageCommand="%function (self)
				--SOUND:PlayOnce(songName..'lua/kill.ogg')
				self:diffuse(1,1,1,1);
				self:diffusealpha(1);
				self:linear(3)
				self:diffusealpha(0);
			end"
		/>
		
		</children> </Layer>
	</children> </Layer>
	
	<Layer Type="Quad" OnCommand="diffusealpha,0"
	DoBonusMessageCommand="%function(self)
		if ANIMELEAGUE_THEME and STATSMAN:GetCurStageStats() and STATSMAN:GetCurStageStats():GetPlayerStageStats(PLAYER_1) then
			local poss = STATSMAN:GetCurStageStats():GetPlayerStageStats(PLAYER_1):GetPossibleDancePoints()
			local act = STATSMAN:GetCurStageStats():GetPlayerStageStats(PLAYER_1):GetActualDancePoints()
			
			srt5_w1 = GetNotesFantasticHit(self,PLAYER_1)
			srt5_w2 = GetNotesExcellentHit(self,PLAYER_1)
			srt5_w3 = GetNotesGreatHit(self,PLAYER_1)
			srt5_w4 = GetNotesDecentHit(self,PLAYER_1)
			srt5_w5 = GetNotesWayOffHit(self,PLAYER_1)
			srt5_w6 = GetNotesMissed(self,PLAYER_1)
			
			uksrt5_carryover = act/poss
		end
	end"
	/>
	
</children></ActorFrame>