    let esp = 0;
    let psp = 1.0;
    let psp2 = 1.0;
    let psp3 = 1.0;
    let ssp = 4;
    let ssp2 = 0;
    let ssp3 = 0;
    let ssp4 = 0;
    let spdraai = 0;
    let spdraai2 = 0;
    let spcirclanm = 0;
    let spellcircle = CSD ~ "system\halloweencircle.png";
    let spellcircle2 = CSD ~ "system\spellcirkel.png";
    let spellcircle3 = CSD ~ "system\spellcirkel.png";
    let spellcircle4 = CSD ~ "system\arapcircle.png";

    LoadGraphic(spellcircle);
    LoadGraphic(spellcircle2);
    LoadGraphic(spellcircle3);
    LoadGraphic(spellcircle4);

// -----------------------------------------------------------------------------------------

    // spellcircle animation ( classic star )
    task SpellCircle{

	SetTexture(spellcircle);
	SetGraphicRect(0,0,256,256); 
	SetRenderState(ADD);
	SetAlpha(255);
	SetGraphicAngle(0,0,-spdraai);
	SetGraphicScale(psp,psp); 
	DrawGraphic(GetX, GetY);

	spdraai+=2;

	if(ssp==4){psp+=0.05; if(psp>1.50){ssp=3;} } 
	if(ssp==3){psp-=0.05; if(psp<0.70){ssp=0;} }
	if(ssp==0){psp+=0.005; if(psp>1.00){ssp=1;} }
	if(ssp==1){psp-=0.005; if(psp<0.70){ssp=0;} }	

	if(spdraai>360){spdraai=0;}
	if(spdraai2>360){spdraai2=0;}

    }

// -----------------------------------------------------------------------------------------

    // disco spellcircle animation
    task DiscoCircle{
	SetTexture(spellcircle);
	SetGraphicRect(0,0,256,256);
		if(spcirclanm<10){SetGraphicRect(0,0,256,256);}
		if(spcirclanm>=10 && spcirclanm<20){SetGraphicRect(256,0,512,256);}
		if(spcirclanm>=20 && spcirclanm<30){SetGraphicRect(512,0,768,256);}
		if(spcirclanm>=30 && spcirclanm<40){SetGraphicRect(768,0,1024,256);}
		if(spcirclanm>=40 && spcirclanm<50){SetGraphicRect(0,256,256,512);}
		if(spcirclanm>=50 && spcirclanm<60){SetGraphicRect(256,256,512,512);}
		if(spcirclanm>=60 && spcirclanm<70){SetGraphicRect(512,256,768,512);}
		if(spcirclanm>=70 && spcirclanm<80){SetGraphicRect(768,256,1024,512);}
		if(spcirclanm>=80 && spcirclanm<90){SetGraphicRect(0,512,256,768);}
		if(spcirclanm>=90 && spcirclanm<100){SetGraphicRect(256,512,512,768);}
		if(spcirclanm>=100 && spcirclanm<110){SetGraphicRect(512,512,768,768);}
		if(spcirclanm>=110 && spcirclanm<120){SetGraphicRect(768,512,1024,768);}
		if(spcirclanm>=120 && spcirclanm<130){SetGraphicRect(0,768,256,1024);}
		if(spcirclanm>=130 && spcirclanm<140){SetGraphicRect(256,768,512,1024);}
		if(spcirclanm>=140 && spcirclanm<150){SetGraphicRect(512,768,768,1024);}
		if(spcirclanm>=150 && spcirclanm<160){SetGraphicRect(768,768,1024,1024);}

	SetRenderState(ADD);
	SetAlpha(255);
	SetGraphicAngle(0,0,spdraai);
	SetGraphicScale(psp,psp); 
	DrawGraphic(GetX, GetY);

	spdraai-=2;

	if(ssp==4){psp+=0.03; if(psp>1.00){ssp=3;} } 
	if(ssp==3){psp-=0.03; if(psp<0.70){ssp=0;} }	
	if(ssp==0){psp+=0.005; if(psp>1.00){ssp=1;} }
	if(ssp==1){psp-=0.005; if(psp<0.70){ssp=0;} }	
	
        if(ssp2<60){esp+=0.05; ssp2++;}
	if(ssp2>=60 && ssp2<120){ssp2++;}
	if(ssp2>=120 && ssp2<180){esp-=0.023; ssp2++;}
	if(ssp2>=180){esp=1.6;}

	if(spdraai>360){spdraai=0;}
	if(spdraai2>360){spdraai2=0;}

	if(spcirclanm>170){spcirclanm=0;}
	spcirclanm+=0.5;

    }

// ------------------------------------------------------------------------------------------