task Set_Cross(type){

alternative(type)
case(0){
Cross01(120+180,80,0,"+");
Cross01(240+180,80,5,"+");
Cross01(360+180,60,10,"+");}
case(1){
Cross01(120+180,80,0,"+");
Cross01(240+180,80,5,"+");
Cross01(360+180,60,10,"+");
Cross01(120,145,15,"-");
Cross01(240,145,20,"-");
Cross01(360,60,25,"-");}
case(2){
Cross02(120+180,80,0,"+");
Cross02(240+180,80,0,"+");
Cross02(360+180,60,0,"+");}
case(3){
Cross02(120+180,80,0,"+");
Cross02(240+180,80,0,"+");
Cross02(360+180,60,0,"+");
Cross02(120,145,0,"-");
Cross02(240,145,0,"-");
Cross02(360,60,0,"-");}
case(4){
Cross01(120,145,15,"-");
Cross01(240,145,20,"-");
Cross01(360,60,25,"-");}
case(5){
Cross02(120,145,15,"-");
Cross02(240,145,20,"-");
Cross02(360,60,25,"-");}

}


task Cross01(ang,dis,delay,spa){
let img1	= GetCurrentScriptDirectory~".\enm6eff\str01.png";
let img2	= GetCurrentScriptDirectory~".\enm6eff\str00.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		   Obj_Create(OBJ_EFFECT)];
let i        = 0;
let i2       = 1;
let pc       = 0;
let pc2      = 30;
let move1    = 0;
let moveA    = 0;
let move2    = 0;
let moveB    = 0;
let cc       = 0;
let rgb      = [200,255,255];//r,g,b
let die      = 0;
let dl       = false;
let dis1     = 0;
let disA     = 0;
let sca      = 1;
let scaA     = 0;

LoadGraphic(img1);
LoadGraphic(img2);

loop(delay){yield;}

ObjEffect_SetTexture(id[0],img2);
ObjEffect_SetRenderState(id[0],ADD);
ObjEffect_SetPrimitiveType(id[0],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[0],0,0,45);
ObjEffect_SetLayer(id[0],1);
ObjEffect_CreateVertex(id[0],26);
ObjEffect_SetTexture(id[1],img1);
ObjEffect_SetRenderState(id[1],ADD);
ObjEffect_SetPrimitiveType(id[1],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[1],0,0,45);
ObjEffect_SetLayer(id[1],1);
ObjEffect_CreateVertex(id[1],26);//mp`{PQ
loop(26){
ObjEffect_SetVertexXY(id[0],i,60*sin(pc),60*cos(pc));
ObjEffect_SetVertexXY(id[0],i2,50*sin(pc2),50*cos(pc2));
ObjEffect_SetVertexUV(id[0],i,0,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400,0+pc2);
ObjEffect_SetVertexColor(id[0],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],i2,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexXY(id[1],i,60*sin(pc),60*cos(pc));
ObjEffect_SetVertexXY(id[1],i2,50*sin(pc2),50*cos(pc2));
ObjEffect_SetVertexUV(id[1],i,0,0+pc);
ObjEffect_SetVertexUV(id[1],i2,20,0+pc2);
ObjEffect_SetVertexColor(id[1],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[1],i2,255,rgb[0],rgb[1],rgb[2]);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

loop{
ObjEffect_SetScale(id[0],sca+0.02*sin(cc*3),sca+0.02*sin(cc*2));
ObjEffect_SetScale(id[1],sca+0.02*sin(cc*3),sca+0.02*sin(cc*2));

cc+=2;
loop(26){
ObjEffect_SetVertexUV(id[0],i,0+cc,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400+cc,0+pc2);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

if(dis1<dis){disA+=2;}
dis1=dis*sin(disA);
if(move2<360){moveB+=1;}
move2=360*sin(moveB);
alternative(spa)
case("+"){
Obj_SetPosition(id[0],GetEnemyX+dis1*sin(move2+ang),GetEnemyY+dis1*cos(move2+ang));
Obj_SetPosition(id[1],GetEnemyX+dis1*sin(move2+ang),GetEnemyY+dis1*cos(move2+ang));}
case("-"){
Obj_SetPosition(id[0],GetEnemyX-dis1*sin(move2+ang),GetEnemyY+dis1*cos(move2+ang));
Obj_SetPosition(id[1],GetEnemyX-dis1*sin(move2+ang),GetEnemyY+dis1*cos(move2+ang));}

if(move1<30){moveA+=2;}
move1=30*sin(moveA);
ObjEffect_SetVertexColor(id[0],0,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],6,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],12,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],18,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],24,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],8,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],10,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexXY(id[0],0,(0)*sin(30*12),(0)*cos(30*12));//_͊܂߂ȂB
ObjEffect_SetVertexXY(id[0],5,(move1-10)*sin(30*3),(move1-10)*cos(30*3));
ObjEffect_SetVertexXY(id[0],6,(0)*sin(30*3),(0)*cos(30*3));
ObjEffect_SetVertexXY(id[0],11,(move1-10)*sin(30*6),(move1-10)*cos(30*6));
ObjEffect_SetVertexXY(id[0],12,(0)*sin(30*6),(0)*cos(30*6));
ObjEffect_SetVertexXY(id[0],17,(move1-10)*sin(30*9),(move1-10)*cos(30*9));
ObjEffect_SetVertexXY(id[0],18,(0)*sin(30*9),(0)*cos(30*9));
ObjEffect_SetVertexXY(id[0],23,(move1-10)*sin(30*12),(move1-10)*cos(30*12));
ObjEffect_SetVertexXY(id[0],24,(0)*sin(30*12),(0)*cos(30*12));
ObjEffect_SetVertexXY(id[0],7,(move1*3-10)*sin(30*4+5),(move1*3-10)*cos(30*4+5));
ObjEffect_SetVertexXY(id[0],8,(0)*sin(30*4+5),(0)*cos(30*4+5));
ObjEffect_SetVertexXY(id[0],9,(move1*3-10)*sin(30*5-5),(move1*3-10)*cos(30*5-5));
ObjEffect_SetVertexXY(id[0],10,(0)*sin(30*5-5),(0)*cos(30*5-5));

ObjEffect_SetVertexXY(id[1],0,(move1)*sin(30*12),(move1)*cos(30*12));//_͊܂߂ȂB
ObjEffect_SetVertexXY(id[1],5,(move1-10)*sin(30*3),(move1-10)*cos(30*3));
ObjEffect_SetVertexXY(id[1],6,(move1)*sin(30*3),(move1)*cos(30*3));
ObjEffect_SetVertexXY(id[1],11,(move1-10)*sin(30*6),(move1-10)*cos(30*6));
ObjEffect_SetVertexXY(id[1],12,(move1)*sin(30*6),(move1)*cos(30*6));
ObjEffect_SetVertexXY(id[1],17,(move1-10)*sin(30*9),(move1-10)*cos(30*9));
ObjEffect_SetVertexXY(id[1],18,(move1)*sin(30*9),(move1)*cos(30*9));
ObjEffect_SetVertexXY(id[1],23,(move1-10)*sin(30*12),(move1-10)*cos(30*12));
ObjEffect_SetVertexXY(id[1],24,(move1)*sin(30*12),(move1)*cos(30*12));
ObjEffect_SetVertexXY(id[1],7,(move1*3-10)*sin(30*4+5),(move1*3-10)*cos(30*4+5));
ObjEffect_SetVertexXY(id[1],8,(move1*3)*sin(30*4+5),(move1*3)*cos(30*4+5));
ObjEffect_SetVertexXY(id[1],9,(move1*3-10)*sin(30*5-5),(move1*3-10)*cos(30*5-5));
ObjEffect_SetVertexXY(id[1],10,(move1*3)*sin(30*5-5),(move1*3)*cos(30*5-5));

cc++;
ObjEffect_SetAngle(id[0],0,0,135);
ObjEffect_SetAngle(id[1],0,0,135);

yield;
}
}

task Chaos(r,g,b,dis,delay,render,spa){
let img2	= GetCurrentScriptDirectory~".\enm6eff\str00.png";
let id 		= [Obj_Create(OBJ_EFFECT)];
let i        = 0;
let i2       = 1;
let pc       = 0;
let pc2      = 30;
let move1    = 0;
let moveA    = 0;
let move2    = 0;
let moveB    = 0;
let cc       = 0;
let rgb      = [r,g,b];//r,g,b
let die      = 0;
let dl       = false;
let dis1     = 0;
let disA     = 0;
let sca      = 1;
let scaA     = 0;
let alpha    = 0;

LoadGraphic(img2);

loop(delay){yield;}

ObjEffect_SetTexture(id[0],img2);
ObjEffect_SetRenderState(id[0],render);
ObjEffect_SetPrimitiveType(id[0],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[0],0,0,45);
ObjEffect_SetLayer(id[0],1);
ObjEffect_CreateVertex(id[0],26);
loop(26){
ObjEffect_SetVertexXY(id[0],i,0*sin(pc),0*cos(pc));
ObjEffect_SetVertexXY(id[0],i2,0*sin(pc2),0*cos(pc2));
ObjEffect_SetVertexUV(id[0],i,0,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400,0+pc2);
ObjEffect_SetVertexColor(id[0],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],i2,255,rgb[0],rgb[1],rgb[2]);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

loop{
ObjEffect_SetScale(id[0],sca+0.05*sin(cc*3),sca+0.05*sin(cc*2));

cc+=2;
loop(26){
ObjEffect_SetVertexUV(id[0],i,0+cc,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400+cc,0+pc2);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

Obj_SetPosition(id[0],GetEnemyX,GetEnemyY);

if(move1<dis){moveA+=1;}
move1=dis*sin(moveA);
ObjEffect_SetVertexXY(id[0],1,move1*sin(30*12),move1*cos(30*12));
ObjEffect_SetVertexXY(id[0],3,move1*sin(30*1),move1*cos(30*1));
ObjEffect_SetVertexXY(id[0],5,move1*sin(30*2),move1*cos(30*2));
ObjEffect_SetVertexXY(id[0],7,move1*sin(30*3),move1*cos(30*3));
ObjEffect_SetVertexXY(id[0],9,move1*sin(30*4),move1*cos(30*4));
ObjEffect_SetVertexXY(id[0],11,move1*sin(30*5),move1*cos(30*5));
ObjEffect_SetVertexXY(id[0],13,move1*sin(30*6),move1*cos(30*6));
ObjEffect_SetVertexXY(id[0],15,move1*sin(30*7),move1*cos(30*7));
ObjEffect_SetVertexXY(id[0],17,move1*sin(30*8),move1*cos(30*8));
ObjEffect_SetVertexXY(id[0],19,move1*sin(30*9),move1*cos(30*9));
ObjEffect_SetVertexXY(id[0],21,move1*sin(30*10),move1*cos(30*10));
ObjEffect_SetVertexXY(id[0],23,move1*sin(30*11),move1*cos(30*11));
ObjEffect_SetVertexXY(id[0],25,move1*sin(30*12),move1*cos(30*12));
ObjEffect_SetVertexColor(id[0],1,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],5,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],7,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],9,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],11,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],13,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],15,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],17,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],19,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],21,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],23,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],25,alpha,rgb[0],rgb[1],rgb[2]);

alternative(spa)
case("+"){
ObjEffect_SetAngle(id[0],0,0,0+cc/5);}
case("-"){
ObjEffect_SetAngle(id[0],0,0,0-cc/5);}

yield;
}
}

task Cross02(ang,dis,delay,spa){
let img1	= GetCurrentScriptDirectory~".\enm6eff\str01.png";
let img2	= GetCurrentScriptDirectory~".\enm6eff\str00.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		   Obj_Create(OBJ_EFFECT)];
let i        = 0;
let i2       = 1;
let pc       = 0;
let pc2      = 30;
let move1    = 30;
let moveA    = 0;
let move2    = 360;
let moveB    = 0;
let cc       = 0;
let rgb      = [200,255,255];//r,g,b
let die      = 0;
let dl       = false;
let dis1     = dis;
let disA     = 0;
let sca      = 1;
let scaA     = 0;

LoadGraphic(img1);
LoadGraphic(img2);

loop(delay){yield;}

ObjEffect_SetTexture(id[0],img2);
ObjEffect_SetRenderState(id[0],ADD);
ObjEffect_SetPrimitiveType(id[0],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[0],0,0,45);
ObjEffect_SetLayer(id[0],1);
ObjEffect_CreateVertex(id[0],26);
ObjEffect_SetTexture(id[1],img1);
ObjEffect_SetRenderState(id[1],ADD);
ObjEffect_SetPrimitiveType(id[1],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[1],0,0,45);
ObjEffect_SetLayer(id[1],1);
ObjEffect_CreateVertex(id[1],26);//mp`{PQ
loop(26){
ObjEffect_SetVertexXY(id[0],i,60*sin(pc),60*cos(pc));
ObjEffect_SetVertexXY(id[0],i2,50*sin(pc2),50*cos(pc2));
ObjEffect_SetVertexUV(id[0],i,0,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400,0+pc2);
ObjEffect_SetVertexColor(id[0],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],i2,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexXY(id[1],i,60*sin(pc),60*cos(pc));
ObjEffect_SetVertexXY(id[1],i2,50*sin(pc2),50*cos(pc2));
ObjEffect_SetVertexUV(id[1],i,0,0+pc);
ObjEffect_SetVertexUV(id[1],i2,20,0+pc2);
ObjEffect_SetVertexColor(id[1],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[1],i2,255,rgb[0],rgb[1],rgb[2]);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

loop{
ObjEffect_SetScale(id[0],sca+0.02*sin(cc*3),sca+0.02*sin(cc*2));
ObjEffect_SetScale(id[1],sca+0.02*sin(cc*3),sca+0.02*sin(cc*2));

cc+=2;
loop(26){
ObjEffect_SetVertexUV(id[0],i,0+cc,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400+cc,0+pc2);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

if(dis1<dis){disA+=2;}
dis1=dis*sin(disA);
if(move2<360){moveB+=1;}
move2=360*sin(moveB);
alternative(spa)
case("+"){
Obj_SetPosition(id[0],GetEnemyX+dis*sin(ang),GetEnemyY+dis*cos(ang));
Obj_SetPosition(id[1],GetEnemyX+dis*sin(ang),GetEnemyY+dis*cos(ang));}
case("-"){
Obj_SetPosition(id[0],GetEnemyX-dis*sin(ang),GetEnemyY+dis*cos(ang));
Obj_SetPosition(id[1],GetEnemyX-dis*sin(ang),GetEnemyY+dis*cos(ang));}

move1=30;
ObjEffect_SetVertexColor(id[0],0,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],6,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],12,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],18,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],24,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],8,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],10,0,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexXY(id[0],0,(0)*sin(30*12),(0)*cos(30*12));//_͊܂߂ȂB
ObjEffect_SetVertexXY(id[0],5,(move1-10)*sin(30*3),(move1-10)*cos(30*3));
ObjEffect_SetVertexXY(id[0],6,(0)*sin(30*3),(0)*cos(30*3));
ObjEffect_SetVertexXY(id[0],11,(move1-10)*sin(30*6),(move1-10)*cos(30*6));
ObjEffect_SetVertexXY(id[0],12,(0)*sin(30*6),(0)*cos(30*6));
ObjEffect_SetVertexXY(id[0],17,(move1-10)*sin(30*9),(move1-10)*cos(30*9));
ObjEffect_SetVertexXY(id[0],18,(0)*sin(30*9),(0)*cos(30*9));
ObjEffect_SetVertexXY(id[0],23,(move1-10)*sin(30*12),(move1-10)*cos(30*12));
ObjEffect_SetVertexXY(id[0],24,(0)*sin(30*12),(0)*cos(30*12));
ObjEffect_SetVertexXY(id[0],7,(move1*3-10)*sin(30*4+5),(move1*3-10)*cos(30*4+5));
ObjEffect_SetVertexXY(id[0],8,(0)*sin(30*4+5),(0)*cos(30*4+5));
ObjEffect_SetVertexXY(id[0],9,(move1*3-10)*sin(30*5-5),(move1*3-10)*cos(30*5-5));
ObjEffect_SetVertexXY(id[0],10,(0)*sin(30*5-5),(0)*cos(30*5-5));

ObjEffect_SetVertexXY(id[1],0,(move1)*sin(30*12),(move1)*cos(30*12));//_͊܂߂ȂB
ObjEffect_SetVertexXY(id[1],5,(move1-10)*sin(30*3),(move1-10)*cos(30*3));
ObjEffect_SetVertexXY(id[1],6,(move1)*sin(30*3),(move1)*cos(30*3));
ObjEffect_SetVertexXY(id[1],11,(move1-10)*sin(30*6),(move1-10)*cos(30*6));
ObjEffect_SetVertexXY(id[1],12,(move1)*sin(30*6),(move1)*cos(30*6));
ObjEffect_SetVertexXY(id[1],17,(move1-10)*sin(30*9),(move1-10)*cos(30*9));
ObjEffect_SetVertexXY(id[1],18,(move1)*sin(30*9),(move1)*cos(30*9));
ObjEffect_SetVertexXY(id[1],23,(move1-10)*sin(30*12),(move1-10)*cos(30*12));
ObjEffect_SetVertexXY(id[1],24,(move1)*sin(30*12),(move1)*cos(30*12));
ObjEffect_SetVertexXY(id[1],7,(move1*3-10)*sin(30*4+5),(move1*3-10)*cos(30*4+5));
ObjEffect_SetVertexXY(id[1],8,(move1*3)*sin(30*4+5),(move1*3)*cos(30*4+5));
ObjEffect_SetVertexXY(id[1],9,(move1*3-10)*sin(30*5-5),(move1*3-10)*cos(30*5-5));
ObjEffect_SetVertexXY(id[1],10,(move1*3)*sin(30*5-5),(move1*3)*cos(30*5-5));

cc++;
ObjEffect_SetAngle(id[0],0,0,135);
ObjEffect_SetAngle(id[1],0,0,135);

yield;
}
}

task Chaos2(r,g,b,dis,delay,render,spa){
let img2	= GetCurrentScriptDirectory~".\enm6eff\str00.png";
let id 		= [Obj_Create(OBJ_EFFECT)];
let i        = 0;
let i2       = 1;
let pc       = 0;
let pc2      = 30;
let move1    = dis;
let moveA    = 0;
let move2    = 0;
let moveB    = 0;
let cc       = 0;
let rgb      = [r,g,b];//r,g,b
let die      = 0;
let dl       = false;
let dis1     = 0;
let disA     = 0;
let sca      = 1;
let scaA     = 0;
let alpha    = 0;

LoadGraphic(img2);

loop(delay){yield;}

ObjEffect_SetTexture(id[0],img2);
ObjEffect_SetRenderState(id[0],render);
ObjEffect_SetPrimitiveType(id[0],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[0],0,0,45);
ObjEffect_SetLayer(id[0],1);
ObjEffect_CreateVertex(id[0],26);
loop(26){
ObjEffect_SetVertexXY(id[0],i,0*sin(pc),0*cos(pc));
ObjEffect_SetVertexXY(id[0],i2,0*sin(pc2),0*cos(pc2));
ObjEffect_SetVertexUV(id[0],i,0,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400,0+pc2);
ObjEffect_SetVertexColor(id[0],i,255,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],i2,255,rgb[0],rgb[1],rgb[2]);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

loop{
ObjEffect_SetScale(id[0],sca+0.05*sin(cc*3),sca+0.05*sin(cc*2));

cc+=2;
loop(26){
ObjEffect_SetVertexUV(id[0],i,0+cc,0+pc);
ObjEffect_SetVertexUV(id[0],i2,400+cc,0+pc2);
pc+=30;
pc2+=30;
i+=2;
i2+=2;
}
pc=0;
pc2=30;
i=0;
i2=1;

Obj_SetPosition(id[0],GetEnemyX,GetEnemyY);

move1=dis;
ObjEffect_SetVertexXY(id[0],1,move1*sin(30*12),move1*cos(30*12));
ObjEffect_SetVertexXY(id[0],3,move1*sin(30*1),move1*cos(30*1));
ObjEffect_SetVertexXY(id[0],5,move1*sin(30*2),move1*cos(30*2));
ObjEffect_SetVertexXY(id[0],7,move1*sin(30*3),move1*cos(30*3));
ObjEffect_SetVertexXY(id[0],9,move1*sin(30*4),move1*cos(30*4));
ObjEffect_SetVertexXY(id[0],11,move1*sin(30*5),move1*cos(30*5));
ObjEffect_SetVertexXY(id[0],13,move1*sin(30*6),move1*cos(30*6));
ObjEffect_SetVertexXY(id[0],15,move1*sin(30*7),move1*cos(30*7));
ObjEffect_SetVertexXY(id[0],17,move1*sin(30*8),move1*cos(30*8));
ObjEffect_SetVertexXY(id[0],19,move1*sin(30*9),move1*cos(30*9));
ObjEffect_SetVertexXY(id[0],21,move1*sin(30*10),move1*cos(30*10));
ObjEffect_SetVertexXY(id[0],23,move1*sin(30*11),move1*cos(30*11));
ObjEffect_SetVertexXY(id[0],25,move1*sin(30*12),move1*cos(30*12));
ObjEffect_SetVertexColor(id[0],1,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],5,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],7,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],9,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],11,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],13,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],15,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],17,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],19,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],21,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],23,alpha,rgb[0],rgb[1],rgb[2]);
ObjEffect_SetVertexColor(id[0],25,alpha,rgb[0],rgb[1],rgb[2]);

alternative(spa)
case("+"){
ObjEffect_SetAngle(id[0],0,0,0+cc/5);}
case("-"){
ObjEffect_SetAngle(id[0],0,0,0-cc/5);}

yield;
}
}

task Set_StainedGlass(d_ang,dis){
let img0	= GetCurrentScriptDirectory~".\enm6eff\ef2.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT)];
let i        = 0;
let move1    = 0;
let moveA    = 0;
let ang1     = 0;
let angA     = 0;
let cc       = 0;
let rgb1     = [255,255,255];//
let rgb2     = [255,0,0];//
let rgb3     = [0,255,0];//
let rgb4     = [255,0,255];//
let die      = 0;
let dl       = false;
let sca1     = 0;
let scaA     = 0;
let alpha    = 200;
let cc       = 0;

LoadGraphic(img0);

loop(4){
ObjEffect_SetTexture(id[i],img0);
ObjEffect_SetRenderState(id[i],ALPHA);
ObjEffect_SetPrimitiveType(id[i],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[i],0,0,45);
ObjEffect_SetLayer(id[i],1);
ObjEffect_CreateVertex(id[i],4);
ObjEffect_SetVertexXY(id[i],0,-135,-135);
ObjEffect_SetVertexXY(id[i],1,-135,135);
ObjEffect_SetVertexXY(id[i],2,135,-135);
ObjEffect_SetVertexXY(id[i],3,135,135);
ObjEffect_SetVertexUV(id[i],0,0,0);
ObjEffect_SetVertexUV(id[i],1,0,270);
ObjEffect_SetVertexUV(id[i],2,270,0);
ObjEffect_SetVertexUV(id[i],3,270,270);
i++;
}
i=0;

loop{
cc++;
Obj_SetPosition(id[0],GetEnemyX+(100-move1)*sin(0+d_ang),GetEnemyY+(100-move1)*cos(0+d_ang));
Obj_SetPosition(id[1],GetEnemyX+(100-move1)*sin(90+d_ang),GetEnemyY+(100-move1)*cos(90+d_ang));
Obj_SetPosition(id[2],GetEnemyX+(100-move1)*sin(180+d_ang),GetEnemyY+(100-move1)*cos(180+d_ang));
Obj_SetPosition(id[3],GetEnemyX+(100-move1)*sin(270+d_ang),GetEnemyY+(100-move1)*cos(270+d_ang));
ObjEffect_SetAngle(id[0],360-ang1,360-ang1,0-ang1-d_ang);
ObjEffect_SetAngle(id[1],ang1,360-ang1,0-ang1+90-d_ang);
ObjEffect_SetAngle(id[2],360-ang1,360-ang1,0-ang1-180-d_ang);
ObjEffect_SetAngle(id[3],ang1,360-ang1,0-ang1+270-d_ang);
ObjEffect_SetVertexColor(id[0],0,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],1,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],2,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[1],0,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],1,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],2,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],3,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[2],0,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],1,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],2,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],3,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[3],0,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],1,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],2,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],3,alpha,rgb4[0],rgb4[1],rgb4[2]);

if(alpha<200){alpha+=10;}

if(move1<(100+dis)){moveA+=2;}
move1=(100+dis)*sin(moveA);
if(sca1<0.4){scaA+=2;}
sca1=0.4*sin(scaA);
if(ang1<360){angA+=1;}
ang1=360*sin(angA);

loop(4){
ObjEffect_SetScale(id[i],sca1/2+0.02*sin(cc*5),sca1*1.2+0.03*sin(cc*2));
i++;
}
i=0;

yield;
}
}

task Set_StainedGlass02(d_ang,dis){
let img0	= GetCurrentScriptDirectory~".\enm6eff\ef2.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT)];
let i        = 0;
let move1    = 0;
let moveA    = 0;
let ang1     = 0;
let angA     = 0;
let cc       = 0;
let rgb1     = [100,100,100];//
let rgb2     = [255,0,50];//o
let rgb3     = [255,255,0];//
let rgb4     = [0,0,255];//
let die      = 0;
let dl       = false;
let sca1     = 0;
let scaA     = 0;
let alpha    = 200;
let cc       = 0;

LoadGraphic(img0);

loop(4){
ObjEffect_SetTexture(id[i],img0);
ObjEffect_SetRenderState(id[i],ALPHA);
ObjEffect_SetPrimitiveType(id[i],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[i],0,0,45);
ObjEffect_SetLayer(id[i],1);
ObjEffect_CreateVertex(id[i],4);
ObjEffect_SetVertexXY(id[i],0,-135,-135);
ObjEffect_SetVertexXY(id[i],1,-135,135);
ObjEffect_SetVertexXY(id[i],2,135,-135);
ObjEffect_SetVertexXY(id[i],3,135,135);
ObjEffect_SetVertexUV(id[i],0,0,0);
ObjEffect_SetVertexUV(id[i],1,0,270);
ObjEffect_SetVertexUV(id[i],2,270,0);
ObjEffect_SetVertexUV(id[i],3,270,270);
i++;
}
i=0;

loop{
Obj_SetPosition(id[0],GetEnemyX+(100-move1)*sin(45+d_ang),GetEnemyY+(100-move1)*cos(45+d_ang));
Obj_SetPosition(id[1],GetEnemyX+(100-move1)*sin(135+d_ang),GetEnemyY+(100-move1)*cos(135+d_ang));
Obj_SetPosition(id[2],GetEnemyX+(100-move1)*sin(225+d_ang),GetEnemyY+(100-move1)*cos(225+d_ang));
Obj_SetPosition(id[3],GetEnemyX+(100-move1)*sin(315+d_ang),GetEnemyY+(100-move1)*cos(315+d_ang));
ObjEffect_SetAngle(id[0],360-ang1,360-ang1,0-ang1-45-d_ang);
ObjEffect_SetAngle(id[1],0,360-ang1,0-ang1-135-d_ang);
ObjEffect_SetAngle(id[2],360-ang1,360-ang1,0-ang1-225-d_ang);
ObjEffect_SetAngle(id[3],0,360-ang1,0-ang1-315-d_ang);
ObjEffect_SetVertexColor(id[0],0,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],1,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],2,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[1],0,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],1,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],2,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],3,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[2],0,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],1,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],2,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],3,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[3],0,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],1,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],2,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],3,alpha,rgb4[0],rgb4[1],rgb4[2]);

if(alpha<200){alpha+=10;}

if(move1<(100+dis)){moveA+=1;}
move1=(100+dis)*sin(moveA);
if(sca1<0.4){scaA+=1;}
sca1=0.4*sin(scaA);
if(ang1<360){angA+=1;}
ang1=360*sin(angA);

cc++;

loop(4){
ObjEffect_SetScale(id[i],sca1/2-0.02*sin(cc*5),sca1*1.2-0.03*sin(cc*2));
i++;
}
i=0;

yield;
}
}

task WasSet_StainedGlass(d_ang,dis){
let img0	= GetCurrentScriptDirectory~".\enm6eff\ef2.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT)];
let i        = 0;
let move1    = 0;
let moveA    = 0;
let ang1     = 0;
let angA     = 0;
let cc       = 0;
let rgb1     = [255,255,255];//
let rgb2     = [255,0,0];//
let rgb3     = [0,255,0];//
let rgb4     = [255,0,255];//
let die      = 0;
let dl       = false;
let sca1     = 0;
let scaA     = 0;
let alpha    = 200;
let cc       = 0;

LoadGraphic(img0);

loop(4){
ObjEffect_SetTexture(id[i],img0);
ObjEffect_SetRenderState(id[i],ALPHA);
ObjEffect_SetPrimitiveType(id[i],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[i],0,0,45);
ObjEffect_SetLayer(id[i],1);
ObjEffect_CreateVertex(id[i],4);
ObjEffect_SetVertexXY(id[i],0,-135,-135);
ObjEffect_SetVertexXY(id[i],1,-135,135);
ObjEffect_SetVertexXY(id[i],2,135,-135);
ObjEffect_SetVertexXY(id[i],3,135,135);
ObjEffect_SetVertexUV(id[i],0,0,0);
ObjEffect_SetVertexUV(id[i],1,0,270);
ObjEffect_SetVertexUV(id[i],2,270,0);
ObjEffect_SetVertexUV(id[i],3,270,270);
i++;
}
i=0;

loop{
cc++;
Obj_SetPosition(id[0],GetEnemyX+(100-move1)*sin(0+d_ang),GetEnemyY+(100-move1)*cos(0+d_ang));
Obj_SetPosition(id[1],GetEnemyX+(100-move1)*sin(90+d_ang),GetEnemyY+(100-move1)*cos(90+d_ang));
Obj_SetPosition(id[2],GetEnemyX+(100-move1)*sin(180+d_ang),GetEnemyY+(100-move1)*cos(180+d_ang));
Obj_SetPosition(id[3],GetEnemyX+(100-move1)*sin(270+d_ang),GetEnemyY+(100-move1)*cos(270+d_ang));
ObjEffect_SetAngle(id[0],360-ang1,360-ang1,0-ang1-d_ang);
ObjEffect_SetAngle(id[1],ang1,360-ang1,0-ang1+90-d_ang);
ObjEffect_SetAngle(id[2],360-ang1,360-ang1,0-ang1-180-d_ang);
ObjEffect_SetAngle(id[3],ang1,360-ang1,0-ang1+270-d_ang);
ObjEffect_SetVertexColor(id[0],0,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],1,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],2,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[1],0,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],1,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],2,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],3,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[2],0,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],1,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],2,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],3,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[3],0,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],1,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],2,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],3,alpha,rgb4[0],rgb4[1],rgb4[2]);

if(alpha<200){alpha+=10;}

move1=(100+dis);
sca1=0.4;
ang1=360;

loop(4){
ObjEffect_SetScale(id[i],sca1/2+0.02*sin(cc*5),sca1*1.2+0.03*sin(cc*2));
i++;
}
i=0;

yield;
}
}

task WasSet_StainedGlass02(d_ang,dis){
let img0	= GetCurrentScriptDirectory~".\enm6eff\ef2.png";
let id 		= [Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT),
		Obj_Create(OBJ_EFFECT)];
let i        = 0;
let move1    = 0;
let moveA    = 0;
let ang1     = 0;
let angA     = 0;
let cc       = 0;
let rgb1     = [100,100,100];//
let rgb2     = [255,0,50];//o
let rgb3     = [255,255,0];//
let rgb4     = [0,0,255];//
let die      = 0;
let dl       = false;
let sca1     = 0;
let scaA     = 0;
let alpha    = 200;
let cc       = 0;

LoadGraphic(img0);

loop(4){
ObjEffect_SetTexture(id[i],img0);
ObjEffect_SetRenderState(id[i],ALPHA);
ObjEffect_SetPrimitiveType(id[i],PRIMITIVE_TRIANGLESTRIP);
ObjEffect_SetAngle(id[i],0,0,45);
ObjEffect_SetLayer(id[i],1);
ObjEffect_CreateVertex(id[i],4);
ObjEffect_SetVertexXY(id[i],0,-135,-135);
ObjEffect_SetVertexXY(id[i],1,-135,135);
ObjEffect_SetVertexXY(id[i],2,135,-135);
ObjEffect_SetVertexXY(id[i],3,135,135);
ObjEffect_SetVertexUV(id[i],0,0,0);
ObjEffect_SetVertexUV(id[i],1,0,270);
ObjEffect_SetVertexUV(id[i],2,270,0);
ObjEffect_SetVertexUV(id[i],3,270,270);
i++;
}
i=0;

loop{
Obj_SetPosition(id[0],GetEnemyX+(100-move1)*sin(45+d_ang),GetEnemyY+(100-move1)*cos(45+d_ang));
Obj_SetPosition(id[1],GetEnemyX+(100-move1)*sin(135+d_ang),GetEnemyY+(100-move1)*cos(135+d_ang));
Obj_SetPosition(id[2],GetEnemyX+(100-move1)*sin(225+d_ang),GetEnemyY+(100-move1)*cos(225+d_ang));
Obj_SetPosition(id[3],GetEnemyX+(100-move1)*sin(315+d_ang),GetEnemyY+(100-move1)*cos(315+d_ang));
ObjEffect_SetAngle(id[0],360-ang1,360-ang1,0-ang1-45-d_ang);
ObjEffect_SetAngle(id[1],0,360-ang1,0-ang1-135-d_ang);
ObjEffect_SetAngle(id[2],360-ang1,360-ang1,0-ang1-225-d_ang);
ObjEffect_SetAngle(id[3],0,360-ang1,0-ang1-315-d_ang);
ObjEffect_SetVertexColor(id[0],0,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],1,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],2,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[0],3,alpha,rgb1[0],rgb1[1],rgb1[2]);
ObjEffect_SetVertexColor(id[1],0,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],1,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],2,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[1],3,alpha,rgb2[0],rgb2[1],rgb2[2]);
ObjEffect_SetVertexColor(id[2],0,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],1,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],2,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[2],3,alpha,rgb3[0],rgb3[1],rgb3[2]);
ObjEffect_SetVertexColor(id[3],0,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],1,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],2,alpha,rgb4[0],rgb4[1],rgb4[2]);
ObjEffect_SetVertexColor(id[3],3,alpha,rgb4[0],rgb4[1],rgb4[2]);

if(alpha<200){alpha+=10;}

move1=(100+dis);
sca1=0.4;
ang1=360;

cc++;

loop(4){
ObjEffect_SetScale(id[i],sca1/2-0.02*sin(cc*5),sca1*1.2-0.03*sin(cc*2));
i++;
}
i=0;

yield;
}
}