#e[Stage]
#Title[mFpXe[W]
#Text[URґNx[]
#Image[]
#BackGround[User]
#Player[FREE]
#ScriptVersion[2]

script_stage_main
{
let GC=GetCurrentScriptDirectory;
let left=1;
@Initialize
{
Tmain;
Titem;
}
@MainLoop
{yield;}
@Finalize
{}

task Tmain
{
PlayMusic("bgm\stage");
yield;
loop(240){yield};

loop(4)
{
loop(2)
	{
	loop(5)
		{
		CreateEnemyFromFile(GC~".\fairyA3wayL.txt",GetCenterX-140,GetClipMinY,2.5,90,0);
		CreateEnemyFromFile(GC~".\fairyA3wayL.txt",GetCenterX-160,GetClipMinY,2.5,90,0);
		loop(12){yield};
		}
	loop(120){yield}
	loop(5)
		{
		CreateEnemyFromFile(GC~".\fairyA3wayR.txt",GetCenterX+140,GetClipMinY,2.5,90,0);
		CreateEnemyFromFile(GC~".\fairyA3wayR.txt",GetCenterX+160,GetClipMinY,2.5,90,0);
		loop(12){yield};
		}
	loop(120){yield}
	}
loop(5)
	{
	CreateEnemyFromFile(GC~".\fairyA3wayL.txt",GetCenterX-140,GetClipMinY,2.5,90,0);
	CreateEnemyFromFile(GC~".\fairyA3wayL.txt",GetCenterX-160,GetClipMinY,2.5,90,0);
	CreateEnemyFromFile(GC~".\fairyA3wayR.txt",GetCenterX+140,GetClipMinY,2.5,90,0);
	CreateEnemyFromFile(GC~".\fairyA3wayR.txt",GetCenterX+160,GetClipMinY,2.5,90,0);
	loop(12){yield};
	}
loop(120){yield}
loop(1)
	{
	let EX=GetCenterX-170;
	loop(10)
		{
		CreateEnemyFromFile(GC~".\fairyB8aroundL.txt",EX,GetClipMinY,2.5,90,0);
		EX=EX+34;
		loop(12){yield};
		}
	}

CreateEnemyFromFile(GC~".\fairyLA.txt",GetCenterX,GetClipMinY,4,90,0);
while(GetEnemyNum!=0){yield;}
loop(180){yield};

}

CreateEnemyBossFromFile(GC~".\trap.txt",0,0,0,0,0);
loop(60){yield};
while(GetEnemyNum!=0){yield;}
loop(180){yield};
Clear;
}

task Titem
{
let before=0;
let after=0;
loop
	{
	after=GetCommonDataDefault("pow",0);
	while(before!=after)
		{
		before=before+1;
		Tpower(GetCommonDataDefault(ToString(before-1),GetCenterX),GetCommonDataDefault(ToString(before+2000-1),GetCenterY));
		}
	yield;
	}
}

task Tpower(PX,PY)
{
let colect=0;
let power=Obj_Create(OBJ_EFFECT);
LoadGraphic(GC~".\item.png");
ObjEffect_SetTexture(power,GC~".\item.png");
ObjEffect_SetPrimitiveType(power,PRIMITIVE_TRIANGLESTRIP);
ObjEffect_CreateVertex(power,4);
ObjEffect_SetVertexXY(power,0,-5.5,-5.5);
ObjEffect_SetVertexXY(power,1,5.5,-5.5);
ObjEffect_SetVertexXY(power,2,-5.5,5.5);
ObjEffect_SetVertexXY(power,3,5.5,5.5);
ObjEffect_SetVertexUV(power,0,18,2);
ObjEffect_SetVertexUV(power,1,29,2);
ObjEffect_SetVertexUV(power,2,18,13);
ObjEffect_SetVertexUV(power,3,29,13);
Obj_SetPosition(power,PX,PY);
Obj_SetSpeed(power,3);
Obj_SetAngle(power,-90);
while(Obj_GetY(power)<=GetClipMaxY+50)
	{
	if(Obj_GetSpeed(power)>-2.5){Obj_SetSpeed(power,Obj_GetSpeed(power)-0.05)};
	if(GetPlayerY<=GetClipMinY+150){colect=1};
	if(absolute(GetPlayerX-Obj_GetX(power))<12&&absolute(GetPlayerY-Obj_GetY(power))<12){break};
	if(colect==1)
		{
		Obj_SetAngle(power,atan2(GetPlayerY-Obj_GetY(power),GetPlayerX-Obj_GetX(power)));
		Obj_SetSpeed(power,5.5);
		}
	yield;
	}
if(Obj_GetY(power)<=GetClipMaxY+50)
	{
	PlaySE("se\seScore.wav");
	if(GetCommonDataDefault("power",0)<81){SetCommonData("power",GetCommonDataDefault("power",0)+1)};
	if(GetCommonDataDefault("power",0)%20==0){AddBomb(1);PlaySE("se\sePower.wav");}
	}
Obj_Delete(power);
}

}

