script_enemy_main
{//Enemy01

	let cx=GetCenterX();//STGシーンの中心x座標を取得
	let imgEnemy=GetCurrentScriptDirectory~"img\Enemy.png";
	let imgAngle=0;
	let shotAngle=0;
        let flame=0;
	let i=rand_int(0,360);
	let count=i;
	@Initialize
	{
		SetLife(30);//ライフを1500に設定
		SetGraphicRect(1,1,32,32);//描画元矩形を設定	
		SetMovePosition02(cx+0,60,60);//座標(cx,60)へ60フレームかけて移動する
	}
	
	@MainLoop
	{
        let radius =100;
        let angle =count;
        let x = GetX + offsetX(radius, angle);
	SetMovePosition03(x,GetY+100,5,1.8);

	if(flame>40)
		{
			if(count%40==0)
			{
				let tAngle=0;
				loop(8)
				{
				CreateShot01(GetX(),GetY(),1,90+tAngle,AQUA04,50);

				tAngle+=45;
				}

			}
		}
	if(count==360){count=0;}

		if(GetY>520)
		{
			VanishEnemy;
		}

		SetCollisionA(GetX(),GetY(),24);//当たり判定(自弾)登録
		SetCollisionB(GetX(),GetY(),12);//当たり判定(体当たり)登録
		count++;
		flame++;
	}
	
	@Finalize
	{//読みこんだファイルを削除
		if(GetY<464)
			{
			loop(3)
				{
				CreateItem(ITEM_SCORE,GetX+rand(-100,100),GetY+rand(20,100));
				}
			}
	}
	
	@DrawLoop
	{//描画
		SetTexture(imgEnemy);
		SetColor(255,255,255);
		SetRenderState(ALPHA);
		SetGraphicAngle(0,0,imgAngle);
		DrawGraphic(GetX(),GetY());
		SetRenderState(ADD);
		SetGraphicAngle(0,0,-imgAngle);
		DrawGraphic(GetX(),GetY());
		imgAngle+=4;
		if(imgAngle>360){imgAngle=0;}
	}

	function offsetX(radius, angle) {
        return radius * cos(angle);
    	}
}