#TouhouDanmakufu
#Title[Agent : "Prank : Agent's Lasers"]
#Text[Une partie de l'ame d'Agent a quitte son corps quand il est parti et il a alors rejoint les esprits des bannis. La nuit, il vient troller les MUiens en leur rappelant qu'il est parti. Vilain Agent !]
#Image[]
#BGM[script\DanMUku\Stage2\Stage2.mp3]
#Player[script\DanMUku\Joueur\KorA\KorHosik.txt, script\DanMUku\Joueur\KorB\KorB.txt, script\DanMUku\Joueur\KorC\KorC.txt]
#ScriptVersion[2]

script_enemy_main
{    
    let imgEnemy ="script\DanMUku\Stage2\Image\Agent.png";
    let count=0;
    let frame = 0;
    let difficulties = 1;
    let laser ="script\DanMUku\Stage2\Son\laser.wav";
    let boo = "script\DanMUku\Stage2\Son\boo.wav";

function Laser(id, x, y, speed, angle, rotation, lenght) {
	CreateLaserC(id, x, y, 10, lenght, BLUE21, 20);
	SetLaserDataC(id, 20, speed, angle, rotation, 0, speed);
	frame=0;
	if(id==1){
		loop(1500){
	CreateShotA(10, 0, 0, 0);
	SetShotDataA(10, 0, 0.1, rand(0, 360), 0, 0.1, 2, BLUE11);
	AddShot(frame, id, 10, 30);
	frame+=2;
}
}
	if(id!=1)
{
	SetLaserDataC(id, 200, speed, NULL, 0, 0, speed);
}
	FireShot(id);
	PlaySE(laser);

}

   @Initialize
   {
            LoadGraphic(imgEnemy);
            SetLife(10000);
            SetTimer(40);
            SetInvincibility(100);
            SetEnemyMarker(true);
            SetMovePosition02(GetCenterX, GetCenterY-100, 120);
	PlaySE(boo);
	SetDurableSpellCard;
            SetScore(600000);
            CutIn(YOUMU, "Prank "\""Agent's Lasers"\", "" , 0,0,0,0);
   }
   
   @MainLoop
   {
if(count==130)
{
Laser(1, GetX, GetY-50, 4, 0, 4, 30);
}
if(count==175)
{
Laser(1, GetX, GetY-50, 4, 0, 4, 30);
}
if(count==240)
{
Laser(2, GetX, GetY, 2, 20, 2, 70);
Laser(2, GetX, GetY, 2, 60, 2, 70);
Laser(3, GetX, GetY, 2, 120, -2, 70);
Laser(3, GetX, GetY, 2, 160, -2, 70);
Laser(2, GetX, GetY, 2, -20, 2, 70);
Laser(2, GetX, GetY, 2, -60, 2, 70);
Laser(3, GetX, GetY, 2, -120, -2, 70);
Laser(3, GetX, GetY, 2, -160, -2, 70);
Laser(2, GetX, GetY, 2, 90, 2, 70);
Laser(3, GetX, GetY, 2, -90, 2, 70);
}
if(count==420)
{
Laser(2, GetX, GetY, 2, 30, 2, 70);
Laser(2, GetX, GetY, 2, 70, 2, 70);
Laser(3, GetX, GetY, 2, 110, -2, 70);
Laser(3, GetX, GetY, 2, 150, -2, 70);
Laser(2, GetX, GetY, 2, 90, 2, 70);
Laser(2, GetX, GetY, 2, -30, 3, 70);
Laser(2, GetX, GetY, 2, -70, 3, 70);
Laser(3, GetX, GetY, 2, -110, -3, 70);
Laser(3, GetX, GetY, 2, -150, -3, 70);
Laser(2, GetX, GetY, 2, -90, 3, 70);
}
if(count==840)
{
Laser(2, GetX, GetY, 2, 20, 2, 70);
Laser(2, GetX, GetY, 2, 60, 2, 70);
Laser(3, GetX, GetY, 2, 120, -2, 70);
Laser(3, GetX, GetY, 2, 160, -2, 70);
Laser(2, GetX, GetY, 2, 90, 2, 70);
Laser(2, GetX, GetY, 2, -20, 3, 70);
Laser(2, GetX, GetY, 2, -60, 3, 70);
Laser(3, GetX, GetY, 2, -120, -3, 70);
Laser(3, GetX, GetY, 2, -160, -3, 70);
Laser(2, GetX, GetY, 2, -90, 3, 70);

Laser(2, GetX, GetY, 2, 20, -2, 70);
Laser(2, GetX, GetY, 2, 60, -2, 70);
Laser(3, GetX, GetY, 2, 120, 2, 70);
Laser(3, GetX, GetY, 2, 160, 2, 70);
Laser(2, GetX, GetY, 2, 90, -2, 70);
Laser(2, GetX, GetY, 2, -20, -3, 70);
Laser(2, GetX, GetY, 2, -60, -3, 70);
Laser(3, GetX, GetY, 2, -120, 3, 70);
Laser(3, GetX, GetY, 2, -160, 3, 70);
Laser(2, GetX, GetY, 2, -90, -3, 70);
}
if(count==1200)
{
count = 240;
difficulties++;
}
count+=difficulties;
 }
   @Finalize
   {
      DeleteGraphic(imgEnemy);
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
CreateItem(ITEM_SCORE, rand(GetX-20, GetX+20), rand(GetY-20, GetY+20));  
   }
   
   @DrawLoop
   {
            SetColor(255,255,255);
            SetRenderState(ALPHA);
            SetAlpha(255);
            SetTexture(imgEnemy);
            SetGraphicRect(0, 0, 32, 32);
            DrawGraphic(GetX,GetY);
	DrawText("Agent", GetClipMinX+10, GetClipMinY+15, 12, 255);
   }

}
