#TouhouDanmakufu
#Title[base per modifiche2]
#Text[just a tutorial to present it]
#Player[FREE]
#ScriptVersion[2]
script_enemy_main{
let CSD = GetCurrentScriptDirectory;
let imgBoss = CSD ~ "img\Sprite.png";
let cut = CSD ~ "img\Cut.png";
let bg = CSD ~ "img\lake.png";
let bgm = CSD ~ "bmg\Legendary Illusion ~ Infinite Being.mp3";
@Initialize{
SetLife(1000);
SetTimer(60);
SetScore(2000);
SetMovePosition01(GetCenterX,GetCenterY,5);
LoadGraphic(imgBoss);
LoadGraphic(cut);
LoadGraphic(bg);
LoadMusic(bgm);
PlayMusic(bgm);
CutIn(YOUMU,"Scripting like a Cirno - Easy -",cut,0,0,300,450);
mainTask;
}
@MainLoop{
SetCollisionA(GetX,GetY,32);
SetCollisionB(GetX,GetY,16);
yield;
}
@DrawLoop{
SetTexture(imgBoss);
SetRenderState(ALPHA);
SetAlpha(255);
SetGraphicRect(0,0,110,110);
SetGraphicScale(1,1);
SetGraphicAngle(0,0,0);
DrawGraphic(GetX,GetY);
}
@BackGround{
SetTexture(bg);
SetRenderState(ALPHA);
SetAlpha(255);
SetGraphicRect(0,0,512,512);
SetGraphicScale(1,1);
SetGraphicAngle(0,0,0);
DrawGraphic(GetCenterX,GetCenterY);
}
@Finalize{
DeleteGraphic(imgBoss);
DeleteGraphic(cut);
DeleteGraphic(bg);
}
task mainTask{
yield;
fire;
movement;
fire2;
}
task movement{
loop{
SetMovePosition01(GetCenterX-100,120,3);
wait(120);
SetMovePosition01(GetCenterX+100,120,3);
wait(120);
}
task fire {
loop(10)}
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer-30, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer+30, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer+15, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer-15, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer, 200, 16, YELLOW01, 20);
wait(120);
CreateLaser01(GetEnemyX,GetEnemyY, 6,GetAngleToPlayer+10, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer+20, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer+30, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 6,GetAngleToPlayer+40, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer+50, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer+60, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 6,GetAngleToPlayer-10, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer-20, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer-30, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 6,GetAngleToPlayer-40, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer-50, 200, 16, RED01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 4,GetAngleToPlayer-60, 200, 16, RED01, 20);
}
}
task fire2{
loop(10){
CreateShot01(GetEnemyX,GetEnemyY,6,GetAngleToPlayer,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,5,GetAngleToPlayer-10,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,5,GetAngleToPlayer+10,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,4.5,GetAngleToPlayer+20,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,4.5,GetAngleToPlayer-20,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,4,GetAngleToPlayer,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,4,GetAngleToPlayer,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,3,GetAngleToPlayer-60,AQUA01,10);
CreateShot01(GetEnemyX,GetEnemyY,3,GetAngleToPlayer+60,AQUA01,10);
wait(60);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer-30, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer, 200, 16, GREEN01, 20);
CreateLaser01(GetEnemyX,GetEnemyY, 2,GetAngleToPlayer+30, 200, 16, GREEN01, 20);
wait(30);
}
}
function wait(w){
loop(w){yield;}
}
}
Ok, this is a sample script i made in which i wanted to do 10 times task fire than 10 times task fire2 and after that, again fire than fire2 and so on... well it's 30 minutes i try but danmakufu gives me error.
What do i do wrong???