Advertisement
Guest User

Simple Plate System by Roperr (6/5/2012)

a guest
Jun 5th, 2012
735
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.03 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <sscanf2>
  4.  
  5. #define color_GREEN 0x9FFF00FF
  6.  
  7. new plateString[128], playerVeh, Float:vehPos[4],Plate[32];
  8.  
  9. /*
  10. *
  11. |
  12.  - Simple vehicle plate system by Roperr. Date: 5/6/2012
  13.  
  14.  Terms of usage: - You may use this Filterscript
  15.                  - You may edit this Filterscript in any way so it fits your needs.
  16.  
  17.  If you encounter any problems while using the Filterscript, please go to the original thread on forums and
  18.  ask for help.
  19. |
  20. *
  21. */
  22.  
  23. /*
  24.  
  25. Notice: While setting the plate number, the car colors might change because of the respawn
  26. To save the colors you'd need to use GetVehicleColor
  27. Found here: http://forum.sa-mp.com/showthread.php?t=235398
  28.  
  29. If requested I'll add that function to the code and make your car's colors get saved also.
  30.  
  31. */
  32.  
  33. CMD:setplate( playerid, params[] )
  34. {
  35.     new pid;
  36.     if(sscanf(params,"us[32]",pid,Plate)) return SendClientMessage(playerid, color_GREEN, "Usage: /plate (playerid)(plate name)");
  37.     if(strlen(Plate) > 32) return SendClientMessage( playerid, color_GREEN, "Usage: /plate (playerid)(plate name)" );
  38.     if(!IsPlayerAdmin(playerid)) return 0; // add an administrator check here
  39.     if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, color_GREEN, "ERROR: Invalid player.");
  40.     if(!IsPlayerInAnyVehicle(pid)) return SendClientMessage(playerid, color_GREEN, "ERROR: Target player isn't inside a vehicle!");
  41.     playerVeh = GetPlayerVehicleID(pid);
  42.     SetVehicleNumberPlate(playerVeh,Plate);
  43.     GetPlayerPos(pid, vehPos[0], vehPos[1], vehPos[2] );
  44.     GetVehicleZAngle(playerVeh, vehPos[3]);
  45.     SetVehicleToRespawn(playerVeh);
  46.     SetVehiclePos(playerVeh, vehPos[0], vehPos[1], vehPos[2] );
  47.     SetVehicleZAngle(playerVeh, vehPos[3]);
  48.     PutPlayerInVehicle(pid, playerVeh, 0);
  49.     format(plateString, 128, "[Plate system] Your vehicle plate has been changed to '%s' by an administrator.", Plate);
  50.     SendClientMessage(playerid, color_GREEN, plateString);
  51.     format(plateString, 128, "[Plate system] You have changed the vehicle plate of id:%i to '%s'", pid, Plate);
  52.     SendClientMessage(playerid, color_GREEN, plateString);
  53.     return 1;
  54. }
  55. CMD:plate(playerid, params[])
  56. {
  57.     if(isnull(params))return SendClientMessage(playerid, color_GREEN, "Usage: /plate [plate name]" );
  58.     if(strlen(params) > 32) return SendClientMessage( playerid, color_GREEN, "ERROR: Plate names can only be 32 characters long!" );
  59.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, color_GREEN, "ERROR: Enter a vehicle to change it's plate name!" );
  60.     playerVeh = GetPlayerVehicleID(playerid);
  61.     format(Plate, 32, "%s", params);
  62.     SetVehicleNumberPlate(playerVeh, Plate);
  63.     GetPlayerPos(playerid, vehPos[0], vehPos[1], vehPos[2]);
  64.     GetVehicleZAngle(playerVeh, vehPos[3]);
  65.     SetVehicleToRespawn(playerVeh);
  66.     SetVehiclePos(playerVeh, vehPos[0], vehPos[1], vehPos[2] );
  67.     SetVehicleZAngle(playerVeh, vehPos[3]);
  68.     PutPlayerInVehicle(playerid, playerVeh, 0);
  69.     format(plateString, 128, "[Plate system] You have changed your plate name to '%s'.", Plate);
  70.     SendClientMessage(playerid, color_GREEN, plateString);
  71.     return 1;
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement