#e
#Title[@́u̓ƌ؋nv]
#Text[m[}̂]
#ScriptVersion[2]

script_enemy_main 
{
	function wait(w){loop(w){yield;}}
	let imgboss="script\img\ExRumia.png";
	let count=0;

	@Initialize
	{
		SetX(GetCenterX);
		SetY(GetCenterY);
		SetLife(3000);
		SetTimer(48);
		
		LoadGraphic(imgboss);
		SetTexture(imgboss);
		SetGraphicRect(0,0,63,63);

		LoadUserShotData(GetCurrentScriptDirectory ~ "shot_all.txt");

		Tmain;
	}

	@MainLoop
	{
		SetCollisionA(GetX,GetY,24);
		SetCollisionB(GetX,GetY,24);
		count++;
		yield;
	}

	@DrawLoop
	{
		DrawGraphic(GetX,GetY);
	}

	@Finalize
	{
		DeleteGraphic(imgboss);
	}

	task Tmain
	{
		yield;
		Tshot;
		wait(120);
		Tlaser(90);
		Tlaser(270);
		wait(120);
		Tlaser(90);
		Tlaser(270);
	}

	task Tlaser(angle)
	{
		let obj=Obj_Create(OBJ_LASER);
		Obj_SetPosition(obj,GetX,GetY);
		Obj_SetSpeed(obj,0);
		ObjShot_SetGraphic(obj,156);
		ObjShot_SetDelay(obj,60);
		ObjLaser_SetLength(obj,600);
		ObjLaser_SetWidth(obj,50);
		let n=0;
		loop(200)
		{
			Obj_SetAngle(obj,angle+n);
			n+=0.75;
			wait(1);
		}
		loop
		{
			loop(100)
			{
				Obj_SetAngle(obj,angle+n);
				n+=0.75;
				wait(1);
			}
			let obj2=Obj_Create(OBJ_SHOT);
			Obj_SetPosition(obj2,GetPlayerX,GetPlayerY);
			Obj_SetAngle(obj2,90);
			Obj_SetSpeed(obj2,0);
			ObjShot_SetGraphic(obj2,129);
			Obj_SetAlpha(obj2,50);
			Obj_SetCollisionToPlayer(obj2,false);
			let obj3=Obj_Create(OBJ_SHOT);
			Obj_SetPosition(obj3,Obj_GetX(obj),Obj_GetY(obj));
			Obj_SetAngle(obj3,90);
			Obj_SetSpeed(obj3,0);
			ObjShot_SetGraphic(obj3,1);
			Obj_SetAlpha(obj3,0);
			Obj_SetCollisionToPlayer(obj3,false);
			loop(200)
			{
				Obj_SetPosition(obj,Obj_GetX(obj)+(Obj_GetX(obj2)-Obj_GetX(obj3))/200,Obj_GetY(obj)+(Obj_GetY(obj2)-Obj_GetY(obj3))/200);
				Obj_SetAngle(obj,angle+n);
				n+=0.75;
				wait(1);
			}
			Obj_Delete(obj2);
		}
	}

	task Tshot
	{
		let angle=rand(1,360);
		wait(360);
		loop
		{
			loop(12)
			{
				CreateShot02(GetCenterX,GetCenterY,1,angle,0.02,3,200,20);
				angle+=30;
			}
			wait(60)
		}
	}
}
