Guest User

Speedometar

a guest
May 1st, 2014
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.15 KB | None | 0 0
  1. #define FILTERSCRIPT
  2. #include <a_samp>
  3. #include <streamer>
  4.  
  5. new SpdObj[MAX_PLAYERS][2];
  6. new bool:UpdateSpeed[MAX_PLAYERS] = {false,...};
  7.  
  8. public OnPlayerConnect(playerid)
  9. {
  10. UpdateSpeed[playerid] = false;
  11. SpdObj[playerid][0] = INVALID_OBJECT_ID;
  12. SpdObj[playerid][1] = INVALID_OBJECT_ID;
  13. return 0;
  14. }
  15.  
  16. public OnPlayerDisconnect(playerid,reason)
  17. {
  18. #pragma unused reason
  19. if(SpdObj[playerid][0] != INVALID_OBJECT_ID)
  20. {
  21. DestroyDynamicObject(SpdObj[playerid][0]);
  22. DestroyDynamicObject(SpdObj[playerid][1]);
  23. }
  24. return 0;
  25. }
  26.  
  27. public OnPlayerUpdate(playerid)
  28. {
  29. if(UpdateSpeed[playerid])
  30. {
  31. new Float:p[3];
  32. GetVehicleVelocity(GetPlayerVehicleID(playerid),p[0],p[1],p[2]);
  33. new str[12];
  34. format(str,12,"%.0f KM/H",150.0*(p[0]*p[0]+p[1]*p[1]));
  35. SetDynamicObjectMaterialText(SpdObj[playerid][0],0,str,OBJECT_MATERIAL_SIZE_512x256,"Arial",64,true,0xFFFFFFFF,0,OBJECT_MATERIAL_TEXT_ALIGN_CENTER);
  36. }
  37. return 1;
  38. }
  39.  
  40. public OnPlayerStateChange(playerid,newstate,oldstate)
  41. {
  42. if(newstate == PLAYER_STATE_DRIVER)
  43. {
  44. SpdObj[playerid][0] = CreateDynamicObject(19482,0.0,0.0,0.0,0.0,0.0,0.0,-1,-1,playerid,200.0);
  45. SpdObj[playerid][1] = CreateDynamicObject(19482,0.0,0.0,0.0,0.0,0.0,0.0,-1,-1,playerid,200.0);
  46. new Float:x,Float:y,Float:z;
  47. GetVehicleModelInfo(GetVehicleModel(GetPlayerVehicleID(playerid)),VEHICLE_MODEL_INFO_SIZE,x,y,z);
  48. AttachDynamicObjectToVehicle(SpdObj[playerid][0],GetPlayerVehicleID(playerid),-x-0.5,0.0,z/2-0.3,0.0,0.0,270.0);
  49. SetDynamicObjectMaterialText(SpdObj[playerid][1],0,"_________",OBJECT_MATERIAL_SIZE_512x256,"Arial",64,true,0xFF4EFD71,0,OBJECT_MATERIAL_TEXT_ALIGN_CENTER);
  50. AttachDynamicObjectToVehicle(SpdObj[playerid][1],GetPlayerVehicleID(playerid),-x-0.5,0.0,z/2-0.3,0.0,0.0,270.0);
  51. Streamer_Update(playerid);
  52. UpdateSpeed[playerid] = true;
  53. return 1;
  54. }
  55. if(oldstate == PLAYER_STATE_DRIVER)
  56. {
  57. UpdateSpeed[playerid] = false;
  58. DestroyDynamicObject(SpdObj[playerid][0]);
  59. DestroyDynamicObject(SpdObj[playerid][1]);
  60. SpdObj[playerid][0] = INVALID_OBJECT_ID;
  61. SpdObj[playerid][1] = INVALID_OBJECT_ID;
  62. return 1;
  63. }
  64. return 0;
  65. }
Advertisement
Add Comment
Please, Sign In to add comment