Advertisement
JeffryUGP

allowedPassengerDriveByWeapons

Sep 3rd, 2015
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.88 KB | None | 0 0
  1. new allowedPassengerDriveByWeapons[] = {25, 29, 30, 31};
  2.  
  3. public OnPlayerStateChange(playerid, newstate, oldstate)
  4. {
  5.     if(newstate == PLAYER_STATE_PASSENGER)
  6.     {
  7.         if(!IsAllowedPassengerWeapon(GetPlayerWeapon(playerid))) SetPlayerArmedWeapon(playerid, 0);
  8.     }
  9.     return 1;
  10. }
  11.  
  12. /*public OnPlayerStateChange(playerid, newstate, oldstate)
  13. {
  14.     if(newstate == PLAYER_STATE_PASSENGER)
  15.     {
  16.         new weap = GetPlayerWeapon(playerid);
  17.         if(!IsAllowedPassengerWeapon(weap))
  18.         {
  19.             new wdata[2][13];
  20.             for(new i = 0; i < 13; i++) GetPlayerWeaponData(playerid, i, wdata[0][i], wdata[1][i]);
  21.             new slot = GetWeaponSlot(weap), bool:found;
  22.             for(new i = slot + 1; i < 13; i++)
  23.             {
  24.                 if(wdata[0][i] > 0 && wdata[1][i] > 0)
  25.                 {
  26.                     if(IsAllowedPassengerWeapon(wdata[0][i]))
  27.                     {
  28.                         SetPlayerArmedWeapon(playerid, wdata[0][i]);
  29.                         found = true;
  30.                         break;
  31.                     }
  32.                 }
  33.             }
  34.             if(!found)
  35.             {
  36.                 for(new i = 0; i < slot; i++)
  37.                 {
  38.                     if(wdata[0][i] > 0 && wdata[1][i] > 0)
  39.                     {
  40.                         if(IsAllowedPassengerWeapon(wdata[0][i]))
  41.                         {
  42.                             SetPlayerArmedWeapon(playerid, wdata[0][i]);
  43.                             found = true;
  44.                             break;
  45.                         }
  46.                     }
  47.                 }
  48.                 if(!found) SetPlayerArmedWeapon(playerid, 0);
  49.             }
  50.         }
  51.     }
  52.     return 1;
  53. }*/
  54.  
  55. stock IsAllowedPassengerWeapon(w_id) //©Jeffry
  56. {
  57.     for(new i = 0; i < sizeof(allowedPassengerDriveByWeapons); i++)
  58.     {
  59.         if(w_id == allowedPassengerDriveByWeapons[i])
  60.         {
  61.             return 1;
  62.         }
  63.     }
  64.     return 0;
  65. }
  66.  
  67. stock GetWeaponSlot(weaponid) //©Jeffry
  68. {
  69.     switch(weaponid)
  70.     {
  71.         case 0,1: return 0;
  72.         case 2..9: return 1;
  73.         case 22..24: return 2;
  74.         case 25..27: return 3;
  75.         case 28,29,32: return 4;
  76.         case 30,31: return 5;
  77.         case 33,34: return 6;
  78.         case 35..38: return 7;
  79.         case 16..18,39: return 8;
  80.         case 41..43: return 9;
  81.         case 10..15: return 10;
  82.         case 44..46: return 11;
  83.         case 40: return 12;
  84.         default: return -1;
  85.     }
  86.     return -1;
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement