Advertisement
Johurt

[SCR] jASH(v1).

Jan 15th, 2013
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.33 KB | None | 0 0
  1. /*
  2.     Author: Johurt(ES.^, Edgar).
  3.         Date: 15-01-2013.
  4.     Video: http://www.youtube.com/watch?v=2MQDDcyU-jw
  5.  */
  6. #include <a_samp>
  7.  
  8. #define R_SPEED     50
  9. #define A_SPEED     50
  10. #define R_TIME      200
  11. #define A_TIME      200
  12.  
  13. new rSpeed[MAX_PLAYERS], rSpeedTimer[MAX_PLAYERS],
  14.     aSpeed[MAX_PLAYERS], aSpeedTimer[MAX_PLAYERS];
  15.  
  16. public OnPlayerConnect(playerid)
  17. {
  18.     rSpeedTimer[playerid] = -5;
  19.     aSpeedTimer[playerid] = -5;
  20.     return 1;
  21. }
  22.  
  23. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  24. {
  25.     if(newkeys & 262144)
  26.     {
  27.         if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && !IsPlayerNPC(playerid) && rSpeedTimer[playerid] == -5)
  28.         {
  29.             rSpeed[playerid] = GetVehicleSpeed(GetPlayerVehicleID(playerid));
  30.             rSpeedTimer[playerid] = SetTimerEx("CheckSpeed", R_TIME, false, "dd", playerid, 0);
  31.         }
  32.     }
  33.     if(newkeys & 4)
  34.     {
  35.         if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && !IsPlayerNPC(playerid) && aSpeedTimer[playerid] == -5)
  36.         {
  37.             aSpeed[playerid] = GetVehicleSpeed(GetPlayerVehicleID(playerid));
  38.             if(aSpeed[playerid] > 50) aSpeedTimer[playerid] = SetTimerEx("CheckSpeed", A_TIME, false, "dd", playerid, 1);
  39.         }
  40.     }
  41.     return 1;
  42. }
  43.  
  44. forward CheckSpeed(playerid, mode);
  45. public CheckSpeed(playerid, mode)
  46. {
  47.     if(IsPlayerNPC(playerid) || !IsPlayerConnected(playerid) || GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return 1;
  48.     new nSpeed = GetVehicleSpeed(GetPlayerVehicleID(playerid)), str[78];
  49.     if(mode == 0)
  50.     {
  51.         rSpeedTimer[playerid] = -5;
  52.         if(rSpeed[playerid] - R_SPEED > nSpeed)
  53.         {
  54.             format(str, 77, "Old speed: {d4650b}%d {ffffff}km/h, New speed: {d4650b}%d {ffffff}km/h.", rSpeed[playerid], nSpeed);
  55.             SendClientMessage(playerid, -1, str);
  56.             SendClientMessage(playerid, -1, "Don't use cheats!");
  57.         }
  58.     }
  59.     else
  60.     {
  61.         aSpeedTimer[playerid] = -5;
  62.         if(nSpeed > aSpeed[playerid] + A_SPEED)
  63.         {
  64.             format(str, 77, "Old speed: {d4650b}%d {ffffff}km/h, New speed: {d4650b}%d {ffffff}km/h.", aSpeed[playerid], nSpeed);
  65.             SendClientMessage(playerid, -1, str);
  66.             SendClientMessage(playerid, -1, "Don't use cheats!");
  67.         }
  68.     }
  69.     return 1;
  70. }
  71.  
  72. stock GetVehicleSpeed(vehicleid)
  73. {
  74.     new Float:spd[4];
  75.     GetVehicleVelocity(vehicleid, spd[0], spd[1], spd[2]);
  76.     spd[3] = floatsqroot(floatpower(floatabs(spd[0]), 2.0) + floatpower(floatabs(spd[1]), 2.0) + floatpower(floatabs(spd[2]), 2.0)) * 170.3;
  77.     return floatround(spd[3]);
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement