Advertisement
Guest User

Untitled

a guest
Jun 5th, 2016
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. new EditObj[MAX_PLAYERS], PlayerCar[MAX_PLAYERS];
  2.  
  3. CMD:objedit(playerid,params[])
  4. {
  5. new carid = strval(params);
  6. printf("%d",carid);
  7. new Float:p[4];
  8. GetPlayerPosition(playerid,p);
  9. EditObj[playerid] = CreateDynamicObject(1000, p[0]+1,p[1]+1,p[2], 0.0, 0.0, 0.0);
  10. EditDynamicObject(playerid, EditObj[playerid]);
  11. PlayerCar[playerid] = carid;
  12. return 1;
  13. }
  14.  
  15. new Offsets[MAX_OBJECTS][e_AttachData];
  16.  
  17. stock ReattachObject(objId, veh) //Reattachs the object to a vehicle
  18. {
  19. new Float:q[4];
  20. GetVehicleRotationQuat(veh, q[0], q[1], q[2], q[3]);
  21. if(!IsValidQuaternion(q)) return INVALID_VEHICLE_ID;
  22.  
  23. //printf("Miafasz");
  24.  
  25. new Float:a[3], Float:ar[3];
  26. GetDynamicObjectPos(objId, a[0], a[1], a[2]);
  27. GetDynamicObjectRot(objId, ar[0], ar[1], ar[2]);
  28.  
  29. new Float:x, Float:y, Float:z,Float:rx, Float:ry, Float:rz;
  30. GetVehiclePos(veh, x, y, z);
  31. GetVehicleRotation(veh, rx, ry, rz);
  32. a[0] -= x;
  33. a[1] -= y;
  34. a[2] -= z;
  35. VectorAbsToRelQuat(q, a, a); //a is now a vehicle-relative vector
  36. RotationAbsToRelQuat(q, ar, ar); //a is now a vehicle-relative rotation
  37.  
  38. AttachDynamicObjectToVehicle(objId, veh, a[0], a[1], a[2], ar[0], ar[1], ar[2]);
  39. return 1;
  40. }
  41.  
  42. public OnPlayerEditDynamicObject(playerid, STREAMER_TAG_OBJECT objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz)
  43. {
  44. //printf("fasz");
  45. if(response == EDIT_RESPONSE_FINAL)
  46. {
  47. SetDynamicObjectPos(objectid,x,y,z);
  48. SetDynamicObjectRot(objectid,rx,ry,rz);
  49. ReattachObject(EditObj[playerid],PlayerCar[playerid]);
  50. }
  51. return 1;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement