Advertisement
JHFlauzino

Aura Code

Sep 21st, 2018
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.39 KB | None | 0 0
  1. task aura(obj,R,G,B,size,prims,id){
  2.     let objS = [];
  3.     let test = CreateRenderTarget("Thing");
  4.     let scale = [];
  5.     let q = 0;
  6.     RenderToTextureB1("Thing",obj,true);
  7.     let objPrims = prims;
  8.     let sizep = (size-1)/prims;
  9.    
  10.     ascent(i in 0..objPrims){
  11.         objS = objS ~ [ObjPrim_Create(OBJ_SPRITE_2D)];
  12.         ObjPrim_SetTexture(objS[i],"Thing");
  13.         ObjSprite2D_SetSourceRect(objS[i],ObjMove_GetX(obj)-64,ObjMove_GetY(obj)-64,ObjMove_GetX(obj)+64,ObjMove_GetY(obj)+64);
  14.         Obj_SetRenderPriorityI(objS[i],31);
  15.         ObjRender_SetColor(objS[i],R,G,B);
  16.         ObjRender_SetAlpha(objS[i],255/(objPrims*1.5));
  17.         ObjRender_SetBlendType(objS[i],BLEND_ALPHA);
  18.         scale = scale ~ [(size/objPrims)*i];
  19.     }
  20.     let shader = ObjShader_Create;
  21.     ObjShader_SetShaderF(shader, GetCurrentScriptDirectory~"./hsls.txt");
  22.     ObjShader_SetTechnique(shader,"Technique1");
  23.    
  24.     while(!Obj_IsDeleted(obj)){
  25.         q++;
  26.         ascent(i in 0..objPrims){
  27.             ObjSprite2D_SetDestCenter(objS[i]);
  28.             ObjSprite2D_SetSourceRect(objS[i],ObjMove_GetX(obj)-64,ObjMove_GetY(obj)-64,ObjMove_GetX(obj)+64,ObjMove_GetY(obj)+64);
  29.             ObjRender_SetScaleXYZ(objS[i],scale[i],scale[i],scale[i]);
  30.             ObjRender_SetPosition(objS[i],ObjMove_GetX(obj),ObjMove_GetY(obj),1);
  31.             if(scale[i]>size){scale[i] = 1;}
  32.             else{scale[i]=scale[i]+sizep}
  33.         }
  34.         if(id == 1){ObjShader_SetShaderO(obj, shader);}
  35.         RenderToTextureB1("Thing",obj,true);
  36.         ObjShader_ResetShader(obj);
  37.         yield;
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement