Guest User

Laser Code2

a guest
Sep 15th, 2011
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. task lasercage(CenterX,CenterY,ang_vel,r,i){
  2. let obj = Obj_Create(OBJ_LASER);
  3. let corner = Obj_Create(OBJ_SHOT);
  4. let bullet = Obj_Create(OBJ_SHOT);
  5.  
  6. let t = 0;
  7. let h = 0;
  8. let bounce = true;
  9. arrayLaser = arrayLaser~[obj];
  10.  
  11. Obj_SetPosition(obj,CenterX+r*cos(90*i+ang_vel*t),CenterY+r*sin(90*i+ang_vel*t));
  12. Obj_SetPosition(corner,CenterX+r*cos(90*i+ang_vel*t),CenterY+r*sin(90*i+ang_vel*t));
  13. Obj_SetAngle(obj,90*i+135+ang_vel*t);
  14. ObjLaser_SetLength(obj,r*2^(1/2));
  15. ObjLaser_SetWidth(obj,15);
  16. ObjShot_SetGraphic(obj,4);
  17. ObjShot_SetGraphic(corner,204);
  18. ObjShot_SetDelay(obj,90);
  19. ObjShot_SetDelay(corner,0);
  20. ObjLaser_SetSource(obj,false);
  21. ObjShot_SetBombResist(corner,true);
  22.  
  23. Obj_SetPosition(bullet,Obj_GetX(obj),Obj_GetY(obj));
  24. Obj_SetAngle(bullet,atan2(GetPlayerY - Obj_GetY(obj), GetPlayerX - Obj_GetX(obj)));
  25. Obj_SetSpeed(bullet,0.75);
  26. ObjShot_SetGraphic(bullet,225);
  27.  
  28.  
  29. while(!Obj_BeDeleted(obj)) {
  30. Obj_SetPosition(obj,CenterX+r*cos(90*i+ang_vel*t),CenterY+r*sin(90*i+ang_vel*t));
  31. Obj_SetPosition(corner,CenterX+r*cos(90*i+ang_vel*t),CenterY+r*sin(90*i+ang_vel*t));
  32. Obj_SetAngle(obj,90*i+135+ang_vel*t);
  33. ObjLaser_SetLength(obj,r*2^(1/2));
  34.  
  35. ascent (h in 0..length(arrayLaser)) {
  36. if (Collision_Obj_Obj(arrayLaser[h],bullet)==true && bounce==true) { Obj_SetAngle(bullet,2*Obj_GetAngle(obj) - Obj_GetAngle(bullet)); bounce = false; }
  37. }
  38.  
  39. t++;
  40. r+=0.5*cos(t);
  41. yield;
  42. }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment