task Tdeath(r,size,w,d){
   AddScore(score);

   loop(r){
      let x=GetX+rand(size,-size);
      let y=GetY+rand(size,-size);
      Explosion01(x,y,5,0.08+size/800,10);//size/300
      wait(w);

   }
   if(d>0){VanishEnemy;}
}


function wait(w) {
   loop(w) { yield; }
}

task Ttamakesi(n) {
   loop(n) { DeleteEnemyShotToItem(ALL);yield; }
}


task Tbossbaku {
   wait(55);
   Tbaku;
   PlaySE(GetCurrentScriptDirectory~"wav\se2.wav");
   Explosion01(GetX+rand(60,-60),GetY+rand(60,-60),5,0.3,20);
   wait(55);
   PlaySE(GetCurrentScriptDirectory~"wav\se2.wav");
   Explosion01(GetX+rand(60,-60),GetY+rand(60,-60),5,0.3,20);
   wait(55);
   PlaySE(GetCurrentScriptDirectory~"wav\se2.wav");
   Explosion01(GetX+rand(60,-60),GetY+rand(60,-60),5,0.3,20);
   wait(55);
   PlaySE(GetCurrentScriptDirectory~"wav\se2.wav");
   Explosion01(GetX+rand(60,-60),GetY+rand(60,-60),5,0.3,20);
   wait(55);
   PlaySE(GetCurrentScriptDirectory~"wav\se5.wav");
   Explosion01(GetX,GetY,5,0.3,80);
   VanishEnemy;
}

task Tbaku {
   loop {
      PlaySE(GetCurrentScriptDirectory~"wav\se3.wav");
      Explosion01(GetX+rand(60,-60),GetY+rand(60,-60),5,0.2,10);
      wait(7);
   }
}

function RealToIntString(let num){
   if(num<0){num=0;}
   let stringarray=["0","1","2","3","4","5","6","7","8","9"];
   let lp=floor(log10(num))+1;
   let lp1=lp;
   if(lp<=0){result="0"}
   else{
      result = "";
      loop(lp){
         result=result~ stringarray[(num%(10^lp1)-num%(10^(lp1-1)))/(10^(lp1-1))];
         lp1--;
      }
   }
}
function genteikaku(let kakudo,let seido){
   let kankaku=360/seido;
   result=kakudo+kankaku/2-(kakudo+kankaku/2)%kankaku;
}
