Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include_function ".\System\variables.txt"
- //Nuclear Fireballs
- task fireBalls{
- let fireScale = 0;
- let obj1 = Obj_Create(OBJ_EFFECT);
- let obj2 = Obj_Create(OBJ_EFFECT);
- let obj3 = Obj_Create(OBJ_EFFECT);
- let obj4 = Obj_Create(OBJ_EFFECT);
- LoadGraphic(nuclearFireBall1);
- LoadGraphic(nuclearFireBall2);
- //first fireball
- ObjEffect_SetRenderState(obj1,ALPHA);
- ObjEffect_SetTexture(obj1,nuclearFireBall2);
- ObjEffect_SetAngle(obj1,0,0,0);
- ObjEffect_SetScale(obj1,2.25,2.25);
- ObjEffect_SetLayer(obj1,2);
- ObjEffect_SetPrimitiveType(obj1,PRIMITIVE_TRIANGLESTRIP);
- ObjEffect_CreateVertex(obj1,4);
- ObjEffect_SetVertexXY(obj1,0,-128,-128);
- ObjEffect_SetVertexXY(obj1,1,128,-128);
- ObjEffect_SetVertexXY(obj1,2,-128,128);
- ObjEffect_SetVertexXY(obj1,3,128,128);
- ObjEffect_SetVertexUV(obj1,0,0,0);
- ObjEffect_SetVertexUV(obj1,1,256,0);
- ObjEffect_SetVertexUV(obj1,2,0,256);
- ObjEffect_SetVertexUV(obj1,3,256,256);
- //second fireball
- ObjEffect_SetRenderState(obj2,ALPHA);
- ObjEffect_SetTexture(obj2,nuclearFireBall2);
- ObjEffect_SetAngle(obj2,0,0,0);
- ObjEffect_SetScale(obj2,2.25,2.25);
- ObjEffect_SetLayer(obj2,2);
- ObjEffect_SetPrimitiveType(obj2,PRIMITIVE_TRIANGLESTRIP);
- ObjEffect_CreateVertex(obj2,4);
- ObjEffect_SetVertexXY(obj2,0,-128,-128);
- ObjEffect_SetVertexXY(obj2,1,128,-128);
- ObjEffect_SetVertexXY(obj2,2,-128,128);
- ObjEffect_SetVertexXY(obj2,3,128,128);
- ObjEffect_SetVertexUV(obj2,0,0,0);
- ObjEffect_SetVertexUV(obj2,1,256,0);
- ObjEffect_SetVertexUV(obj2,2,0,256);
- ObjEffect_SetVertexUV(obj2,3,256,256);
- //first fireball overLay
- ObjEffect_SetRenderState(obj3,ALPHA);
- ObjEffect_SetTexture(obj3,nuclearFireBall1);
- ObjEffect_SetAngle(obj3,0,0,0);
- ObjEffect_SetScale(obj3,2,2);
- ObjEffect_SetLayer(obj3,3);
- ObjEffect_SetPrimitiveType(obj3,PRIMITIVE_TRIANGLESTRIP);
- ObjEffect_CreateVertex(obj3,4);
- ObjEffect_SetVertexXY(obj3,0,-128,-128);
- ObjEffect_SetVertexXY(obj3,1,128,-128);
- ObjEffect_SetVertexXY(obj3,2,-128,128);
- ObjEffect_SetVertexXY(obj3,3,128,128);
- ObjEffect_SetVertexUV(obj3,0,0,0);
- ObjEffect_SetVertexUV(obj3,1,256,0);
- ObjEffect_SetVertexUV(obj3,2,0,256);
- ObjEffect_SetVertexUV(obj3,3,256,256);
- //second fireball overLay
- ObjEffect_SetRenderState(obj4,ALPHA);
- ObjEffect_SetTexture(obj4,nuclearFireBall1);
- ObjEffect_SetAngle(obj4,0,0,0);
- ObjEffect_SetScale(obj4,2,2);
- ObjEffect_SetLayer(obj4,3);
- ObjEffect_SetPrimitiveType(obj4,PRIMITIVE_TRIANGLESTRIP);
- ObjEffect_CreateVertex(obj4,4);
- ObjEffect_SetVertexXY(obj4,0,-128,-128);
- ObjEffect_SetVertexXY(obj4,1,128,-128);
- ObjEffect_SetVertexXY(obj4,2,-128,128);
- ObjEffect_SetVertexXY(obj4,3,128,128);
- ObjEffect_SetVertexUV(obj4,0,0,0);
- ObjEffect_SetVertexUV(obj4,1,256,0);
- ObjEffect_SetVertexUV(obj4,2,0,256);
- ObjEffect_SetVertexUV(obj4,3,256,256);
- //animation syntaxes
- let x = GetCenterX;
- let y = GetCenterY;
- let alphaVal = 0;
- let frame = 0;
- let spin = 0;
- while(!Obj_BeDeleted(obj1)){
- if(frame < 60){
- if(alphaVal < 255){
- alphaVal+=255/30;
- }
- }
- Obj_SetPosition(obj1,x,GetClipMaxY);
- Obj_SetPosition(obj2,x,GetClipMinY);
- Obj_SetPosition(obj3,x,GetClipMaxY);
- Obj_SetPosition(obj4,x,GetClipMinY);
- ascent(i in 0..4){
- ObjEffect_SetVertexColor(obj1,i,alphaVal,255,30,30);
- ObjEffect_SetVertexColor(obj2,i,alphaVal,255,30,30);
- ObjEffect_SetVertexColor(obj3,i,alphaVal,255,255,255);
- ObjEffect_SetVertexColor(obj4,i,alphaVal,255,255,255);
- }
- ObjEffect_SetAngle(obj1,0,0,spin);
- ObjEffect_SetAngle(obj2,0,0,spin);
- ObjEffect_SetAngle(obj3,0,0,spin);
- ObjEffect_SetAngle(obj4,0,0,spin);
- spin+=2;
- frame++;
- yield;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement