Advertisement
Guest User

Untitled

a guest
Oct 12th, 2018
702
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.91 KB | None | 0 0
  1. new allowTrailer[MAX_VEHICLES char];
  2.  
  3. stock ac_AttachTrailerToVehicle(trailerid, vehicleid)
  4. {
  5.     if(!(0 < vehicleid < 2000) || !(0 < trailerid < 2000)) return;
  6.     allowTrailer{trailerid} = 1;
  7.     return AttachTrailerToVehicle(trailerid, vehicleid);
  8. }
  9. #if defined _ALS_AttachTrailerToVehicle
  10.     #undef AttachTrailerToVehicle
  11. #else
  12.     #define _ALS_AttachTrailerToVehicle
  13. #endif
  14. #define AttachTrailerToVehicle ac_AttachTrailerToVehicle
  15.  
  16. stock ac_DetachTrailerFromVehicle(vehicleid)
  17. {
  18.     if(!(0 < vehicleid < 2000)) return;
  19.     allowTrailer{vehicleid} = 0;
  20.     return DetachTrailerFromVehicle(vehicleid);
  21. }
  22. #if defined _ALS_DetachTrailerFromVehicle
  23.     #undef DetachTrailerFromVehicle
  24. #else
  25.     #define _ALS_DetachTrailerFromVehicle
  26. #endif
  27. #define DetachTrailerFromVehicle ac_DetachTrailerFromVehicle
  28.  
  29. public OnVehicleSpawn(vehicleid)
  30. {
  31.     allowTrailer{vehicleid} = 0;
  32.     #if defined ac_OnVehicleSpawn
  33.         return ac_OnVehicleSpawn(vehicleid);
  34.     #else
  35.         return 1;
  36.     #endif
  37. }
  38. #if defined _ALS_OnVehicleSpawn
  39.     #undef OnVehicleSpawn
  40. #else
  41.     #define _ALS_OnVehicleSpawn
  42. #endif
  43. #if defined ac_OnVehicleSpawn
  44.     forward ac_OnVehicleSpawn(vehicleid);
  45. #endif
  46. #define OnVehicleSpawn ac_OnVehicleSpawn
  47.  
  48. IPacket:210(playerid, BitStream:bs)
  49. {
  50.     new data[PR_TrailerSync];
  51.     BS_IgnoreBits(bs, 8);
  52.     BS_ReadTrailerSync(bs, data);
  53.  
  54.     if(allowTrailer{data[PR_trailerId]}) return 1;
  55.     new model = GetVehicleModel(data[PR_trailerId]);
  56.     switch(model)
  57.     {
  58.         case 435, 450, 584, 591, 606..608, 610, 611: {}
  59.         default: return 0;
  60.     }
  61.     if(!IsPlayerInRangeOfPoint(playerid, 50.0, data[PR_position][0], data[PR_position][1], data[PR_position][2])) return 0;
  62.     return 1;
  63. }
  64.  
  65. 1secTimer
  66. {
  67.     for(new vehid = GetVehiclePoolSize(); vehid > 0; vehid--) if(allowTrailer{vehid} && !IsTrailerAttachedToVehicle(vehid))
  68.     {
  69.         allowTrailer{vehid} = 0;
  70.     }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement