Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- task Explosion(tobj)
- {
- let spiral =0;
- let explosion = GetCurrentScriptDirectory ~ "se_explosion.wav";
- StartSlow(TARGET_ALL,40);
- loop(150)
- {
- Cherry(ObjMove_GetX(tobj),ObjMove_GetY(tobj),spiral,rand(2,7));
- Cherry(ObjMove_GetX(tobj),ObjMove_GetY(tobj),spiral,rand(2,7));
- spiral+=rand(15,20);
- loop(1){yield;}
- }
- wait(2);
- StopSlow(TARGET_ALL);
- PlaySE(explosion);
- loop(3)
- {
- ascent(i in 0..30)
- {
- Cherry(ObjMove_GetX(tobj),ObjMove_GetY(tobj),i*360/30,rand(2,5));
- }
- wait(2);
- }
- StopSlow(TARGET_ALL);
- ObjMove_SetDestAtFrame(objBoss, -1000, -5000, 0);
- ObjRender_SetAlpha(tobj,0);
- loop(60){DeleteShotAll(TYPE_ALL, TYPE_ITEM); yield;}
- loop(60){DeleteShotAll(TYPE_ALL, TYPE_ITEM); yield;}
- Obj_Delete(tobj);
- DeleteShotAll(TYPE_ALL, TYPE_ITEM);
- CloseScript(GetOwnScriptID());
- }
- // speed, mx, and my variables are used to make effect objects move across the screen
- task Cherry(xpos,ypos,angle,speed)
- {
- let mx = speed*cos(angle);
- let my = speed*sin(angle);
- let alpha = 255;
- let obj = ObjPrim_Create(OBJ_SPRITE_2D);
- ObjPrim_SetTexture(obj, GetCurrentScriptDirectory~"cherry.png");
- ObjSprite2D_SetSourceRect(obj,0, 0, 100, 100);
- Obj_SetRenderPriorityI(obj,60);
- ObjSprite2D_SetDestCenter(obj);
- ObjRender_SetPosition(obj,xpos,ypos,0);
- ObjRender_SetAngleZ(obj,angle);
- while(!Obj_IsDeleted(obj)&&alpha>0)
- {
- ObjRender_SetAlpha(obj,alpha);
- alpha-=rand(4,7);
- ObjRender_SetPosition(obj,ObjRender_GetX(obj)+mx,ObjRender_GetY(obj)+my,0);
- wait(2);
- }
- wait(20);
- Obj_Delete(obj);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement