Advertisement
Aeoris2K18

SQ CLIENT

Apr 28th, 2020
908
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.12 KB | None | 0 0
  1. local lu = gta.tickCount;
  2. function abs(N)
  3. {
  4.     return ((N<0)?(-N):(N));
  5. }
  6. function getDotProduct(x,y,z,x2,y2,z2)
  7. {
  8.     return x*x2 + y*y2 + z*z2;
  9. }
  10. function calculateMileage(veh)
  11. {
  12.     local mileage = (veh.getData("mileage") || 0);
  13.     if ( gta.tickCount - lu > 250 )
  14.     {
  15.         lu = gta.tickCount;
  16.         local matrix = veh.matrix;
  17.         local vecMoveSpeed = veh.velocity;
  18.         local speed = getDotProduct(vecMoveSpeed.x,vecMoveSpeed.y,vecMoveSpeed.z,matrix.getElement(1*4+0),matrix.getElement(1*4+1),matrix.getElement(1*4+2));
  19.         speed = speed*90;
  20.         speed = abs(speed);
  21.         if ( speed > 0 )
  22.         {
  23.             veh.setData("mileage",mileage+(speed/3));
  24.         }
  25.     }
  26. }
  27. addEventHandler("onProcess",function(event,deltaTime)
  28. {
  29.     if ( localClient )
  30.     {
  31.         if ( localPlayer )
  32.         {
  33.  
  34.             if ( localPlayer.vehicle )
  35.             {
  36.                 calculateMileage(localPlayer.vehicle);
  37.             }
  38.         }
  39.     }
  40. });
  41. addCommandHandler("mileage",function(c,t)
  42. {
  43.     if ( localPlayer.vehicle )
  44.     {
  45.         local mil = localPlayer.vehicle.getData("mileage") || 0;
  46.         message("[#ffff00]Current car mileage: "+(mil/1000)+" KM");
  47.     }
  48.     else
  49.     {
  50.         message("[#ff0000]You must be in a vehicle"); return;
  51.     }
  52. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement