Advertisement
Guest User

Untitled

a guest
Jan 25th, 2016
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.27 KB | None | 0 0
  1. /* Credits to SA:MP team for Dev package, Y_Less for SSCANF, Jeff for function to get closest vehicle, Zeex for ZCMD & Twinki for making this script*/
  2.  
  3. #include <a_samp>
  4.  
  5. native IsValidVehicle(vehicleid);
  6.  
  7.  
  8. new v_EngineStatus[MAX_VEHICLES],
  9.     v_VehicleLights[MAX_VEHICLES],
  10.     v_TrunkStatus[MAX_VEHICLES];
  11.  
  12.  
  13.  
  14. /* Vehicle Engine */
  15. stock ToggleVehicleEngine(vehicle, status) {
  16.     new engine, lights, alarm, doors, bonnet, boot, objective;
  17.     GetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
  18.    
  19.     switch(status) {
  20.         case 0: { v_EngineStatus[vehicle] = 0; SetVehicleParamsEx(vehicle, 0, lights, alarm, doors, bonnet, boot, objective); return true; }
  21.         case 1: { v_EngineStatus[vehicle] = 1; SetVehicleParamsEx(vehicle, 1, lights, alarm, doors, bonnet, boot, objective); return true; }
  22.     }
  23.     return true;
  24. }
  25.  
  26. stock GetVehicleEngineStatusString(vehicle) {
  27.     new StatusString[4];
  28.     switch(v_EngineStatus[vehicle]) {
  29.         case 0: StatusString = "Off";
  30.         case 1: StatusString = "On";
  31.     }
  32.     return StatusString;
  33. }
  34.  
  35. stock GetVehicleEngineStatus(vehicle) return v_EngineStatus[vehicle];
  36.  
  37. stock AutomaticEngineSwitch(vehicle) {
  38.     new engine, lights, alarm, doors, bonnet, boot, objective;
  39.     GetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
  40.     switch(v_EngineStatus[vehicle]) {
  41.         case 0: { v_EngineStatus[vehicle] = 1; SetVehicleParamsEx(vehicle, 1, lights, alarm, doors, bonnet, boot, objective); return true; }
  42.         case 1: { v_EngineStatus[vehicle] = 0; SetVehicleParamsEx(vehicle, 0, lights, alarm, doors, bonnet, boot, objective); return true; }
  43.     }
  44.     return true;
  45. }
  46.  
  47.  
  48.  
  49. /* Lights */
  50. stock ToggleVehicleLights(vehicle, status) {
  51.     new engine, lights, alarm, doors, bonnet, boot, objective;
  52.     GetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
  53.     switch(status) {
  54.         case 0: { v_VehicleLights[vehicle] = 0; SetVehicleParamsEx(vehicle, engine, 0, alarm, doors, bonnet, boot, objective); }
  55.         case 1: { v_VehicleLights[vehicle] = 1; SetVehicleParamsEx(vehicle, engine, 1, alarm, doors, bonnet, boot, objective); }
  56.     }
  57.     return true;
  58. }
  59.  
  60. stock GetVehicleLightsStatusString(vehicle) {
  61.     new LightsStatus[4];
  62.     switch(v_VehicleLights[vehicle]) {
  63.         case 0: LightsStatus = "Off";
  64.         case 1: LightsStatus = "On";
  65.     }
  66.     return LightsStatus;
  67. }
  68.  
  69. stock GetVehicleLightsStatus(vehicle) return v_VehicleLights[vehicle];
  70.  
  71. stock AutomaticLightSwitch(vehicle) {
  72.     new engine, lights, alarm, doors, bonnet, boot, objective;
  73.     GetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
  74.     switch(v_VehicleLights[vehicle]) {
  75.         case 0: { v_VehicleLights[vehicle] = 1; SetVehicleParamsEx(vehicle, engine, 1, alarm, doors, bonnet, boot, objective); }
  76.         case 1: { v_VehicleLights[vehicle] = 0; SetVehicleParamsEx(vehicle, engine, 0, alarm, doors, bonnet, boot, objective); }
  77.     }
  78.     return true;
  79. }
  80.  
  81.  
  82.  
  83.  
  84. /* Trunk system */
  85. stock ToggleVehicleTrunk(vehicle, status) {
  86.     new engine, lights, alarm, doors, bonnet, boot, objective;
  87.     GetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
  88.     switch(status) {
  89.         case 0: { v_TrunkStatus[vehicle] = 0; SetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, 0, objective); }
  90.         case 1: { v_TrunkStatus[vehicle] = 1; SetVehicleParamsEx(vehicle, engine, lights, alarm, doors, bonnet, 1, objective); }
  91.     }
  92.     return true;
  93. }
  94.  
  95. stock GetVehicleTrunkStatus(vehicle) return v_TrunkStatus[vehicle];
  96.  
  97. stock GetVehicleTrunkStatusString(vehicle) {
  98.     new TrunkStatus[7];
  99.     switch(v_TrunkStatus[vehicle]) {
  100.         case 0: TrunkStatus = "Closed";
  101.         case 1: TrunkStatus = "Open";
  102.     }
  103.     return TrunkStatus;
  104. }
  105.  
  106.  
  107. stock ToggleNearestPlayerTrunk(playerid,status) {
  108.     new sCar = GetClosestVehicleForPlayer(playerid);
  109.     new engine, lights, alarm, doors, bonnet, boot, objective;
  110.     GetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, boot, objective);
  111.     switch(status) {
  112.         case 0: { v_TrunkStatus[sCar] = 0; SetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, 0, objective); }
  113.         case 1: { v_TrunkStatus[sCar] = 1; SetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, 1, objective); }
  114.     }
  115.     return true;
  116. }
  117.  
  118. stock ToggleAutomaticNearestTrunk(playerid) {
  119.     new sCar = GetClosestVehicleForPlayer(playerid);
  120.     new engine, lights, alarm, doors, bonnet, boot, objective;
  121.     GetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, boot, objective);
  122.     switch(v_TrunkStatus[sCar]) {
  123.         case 0: { v_TrunkStatus[sCar] = 1; SetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, 1, objective); }
  124.         case 1: { v_TrunkStatus[sCar] = 0; SetVehicleParamsEx(sCar, engine, lights, alarm, doors, bonnet, 0, objective); }
  125.     }
  126.     return true;
  127. }
  128.  
  129.  
  130.  
  131. stock GetClosestVehicleForPlayer(playerid) //credits to Jeff
  132. {
  133.     new vehicleid = INVALID_VEHICLE_ID;
  134.     new Float:distance = 10.0;
  135.     new Float:X, Float:Y, Float:Z;
  136.     GetPlayerPos(playerid, X, Y, Z);
  137.     for(new i = 0; i < MAX_VEHICLES; i++) {
  138.         if(!IsValidVehicle(i)) continue;
  139.         new Float: tmp = GetVehicleDistanceFromPoint(i, X, Y, Z);
  140.         if(tmp > distance) continue;
  141.         vehicleid = i;
  142.         distance = tmp;
  143.     }
  144.     if(vehicleid != INVALID_VEHICLE_ID) return vehicleid;
  145.     else return SendClientMessage(playerid,0xAA3333AA,"There are no vehicle near to you!");
  146. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement