script_enemy_main {
    let GCSD=GetCurrentScriptDirectory;
    #include_function ".\..\ShotSheet\shot_replace.dnh"
    #include_function ".\..\functions.txt"
    #include_function ".\alice_functions.txt"

    SpellID=528;

    @Initialize {
	Randomize;
        SetLife(80);
        SetTimer2(30);
	SetDamageRate(80,40);
	MagicCircle(false);
	SetEnemyMarker(true);
	AliceInit;
	MainTask;
	shotinit;
	StartFunctions(1,0,0);
	NoEnemyMarker;
    }


function Wait(frames){loop(frames){yield;}}

task MainTask{
	MoveOffscreen(-1);
	DelayBombTask;
	Wait(60);
	let k=0;
	let y=0;
	MainTask2;
	loop{
		y=rand(20,80);
		k=0;
		loop(7){
			CreateEnemyFromFile(GPSD~"lw\an5ld.txt",GetClipMinX-50,GetClipMinY+y+k*50,2,0,0);
			k++;
			Wait(12);
		}
		Wait(50);
		k=0;
		loop(7){
			CreateEnemyFromFile(GPSD~"lw\an5ld.txt",GetClipMaxX+50,GetClipMinY+y+k*50,2,180,0);
			k++;
			Wait(12);
		}
		Wait(50);
	}
}
task MainTask2{
	let color=0;
	loop{
		CreateEnemyFromFile(GPSD~"lw\an5ld.txt",GetCenterX+rand(-50,50),GetClipMinY-50,rand(1,3),90+rand(-70,70),1+color%7);
		color++;
		Wait(40);
	}
}

@MainLoop {
	if(visible){
		AliceDrawLogic;
	}
	HandleAliceDamage;
	yield;
}

@DrawLoop {
	if(visible){
		AliceDrawLoop;
	}
}

@Finalize {
	EndingFunc(6);
	AliceFinalize;
	PointItems(GetCenterX,GetClipMinY+100,7,0);
}

}

