Advertisement
alwinto

bensin ssitem kek gta 5

Apr 20th, 2025
315
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.03 KB | None | 0 0
  1. // ========================================================================== //
  2.        /*
  3.                       B E N Z I N     S Y S T E M
  4.  
  5.                            @Author: tayloR
  6.  
  7.                               31/7/2021
  8.  
  9.  
  10.                                                                         */
  11. // ========================================================================== //
  12. // >> INCLUDES
  13. #include <a_samp>
  14.  
  15. // ========================================================================== //
  16. // >> MAIN
  17. main() { }
  18.  
  19. // ========================================================================== //
  20. // >> DEFINES, podesavate koliko zelite da se moze prosuti kapi benzina
  21. #define KAPI_BENZINA 40
  22.  
  23. // ========================================================================== //
  24. // >> PLAYER VARIABLES
  25. new bool:_postavioBure[MAX_PLAYERS],
  26.     _bureObject[MAX_PLAYERS],
  27.     _bureBenzin[MAX_PLAYERS][KAPI_BENZINA],
  28.     _counter[MAX_PLAYERS];
  29.  
  30. // ========================================================================== //
  31. // >> PUBLICS
  32. public OnPlayerConnect(playerid) {
  33.     GameTextForPlayer(playerid,"~w~Benzin SYSTEM~n~Script by tayloR",5000,5);
  34.     return 1;
  35. }
  36.  
  37. public OnPlayerDisconnect(playerid) {
  38.  
  39.     reset_bureVariables(playerid);
  40.     return 1;
  41. }
  42.  
  43. public OnPlayerCommandText(playerid, cmdtext[]) {
  44.  
  45.     new idx;
  46.     new cmd[256];
  47.  
  48.     cmd = strtok(cmdtext, idx);
  49.  
  50.     if(strcmp(cmd, "/postavibure", true) == 0) {
  51.  
  52.         if(_postavioBure[playerid])
  53.             return SendClientMessage(playerid, -1, "Vec si postavio bure!");
  54.  
  55.         reset_bureVariables(playerid);
  56.  
  57.         _postavioBure[playerid] = true;
  58.         SetPlayerAttachedObject( playerid, 8, 1650, 6, 0.145482, 0.035119, 0.040793, 8.881844, 276.183959, 329.795593, 1.561557, 1.177534, 1.265636 );
  59.         SendClientMessage(playerid, -1, "Uspjesno si postavio bure, sada se kreci kako bi sipao benzin!");
  60.  
  61.         new Float:X, Float:Y, Float:Z;
  62.         GetPlayerPos(playerid, X,Y,Z);
  63.  
  64.         _bureObject[playerid] = CreateObject(3046, X,Y,Z-0.5, -90,0,0);
  65.  
  66.         SetPlayerPos(playerid, X+1,Y,Z);
  67.  
  68.         return 1;
  69.     }
  70.  
  71.     return 0;
  72. }
  73.  
  74. public OnPlayerSpawn(playerid)
  75. {
  76.     SetPlayerInterior(playerid,0);
  77.     TogglePlayerClock(playerid,0);
  78.     return 1;
  79. }
  80.  
  81. public OnPlayerUpdate(playerid) {
  82.  
  83.     if(_postavioBure[playerid] && _counter[playerid] < KAPI_BENZINA) {
  84.         if(!IsPlayerInAnyVehicle(playerid) && GetSpeed(playerid) > 15) {
  85.  
  86.             new Float:X, Float:Y, Float:Z;
  87.             GetPlayerPos(playerid, X,Y,Z);
  88.             _bureBenzin[playerid][_counter[playerid]] = CreateObject(19836, X,Y,Z-0.95, 0,0,0);
  89.             _counter[playerid] ++;
  90.  
  91.             if(_counter[playerid] >= KAPI_BENZINA-1) {
  92.  
  93.                 RemovePlayerAttachedObject(playerid, 8);
  94.                 _postavioBure[playerid] = false;
  95.                 SetTimerEx("_benzinFire", 500, false, "i", playerid);
  96.             }
  97.         }
  98.     }
  99.     return 1;
  100. }
  101.  
  102. public OnGameModeInit()
  103. {
  104.     SetGameModeText("Benzin system");
  105.     ShowPlayerMarkers(1);
  106.     ShowNameTags(1);
  107.  
  108.     AddPlayerClass(265,0,0,0+5,270.1425,0,0,0,0,-1,-1);
  109.  
  110.  
  111.     printf(" >> 'Benzin system' gamemode loaded << ");
  112.     printf(" >> Script by tayloR << ");
  113.  
  114.     return 1;
  115. }
  116. // ========================================================================== //
  117. // >> FUNCTIONS
  118. strtok(const string[], &index)
  119. {
  120.     new length = strlen(string);
  121.     while ((index < length) && (string[index] <= ' '))
  122.     {
  123.         index++;
  124.     }
  125.  
  126.     new offset = index;
  127.     new result[20];
  128.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  129.     {
  130.         result[index - offset] = string[index];
  131.         index++;
  132.     }
  133.     result[index - offset] = EOS;
  134.     return result;
  135. }
  136.  
  137. reset_bureVariables(playerid) {
  138.  
  139.     _postavioBure[playerid] = false;
  140.     for(new i = 0; i < KAPI_BENZINA; i++) DestroyObject(_bureBenzin[playerid][i]), _bureBenzin[playerid][i] = 0;
  141.     _bureObject[playerid] = 0; DestroyObject(_bureObject[playerid]);
  142.     _counter[playerid] = 0;
  143.     return 1;
  144. }
  145.  
  146. forward GetSpeed(playerid);
  147. public GetSpeed(playerid) {
  148.  
  149.     new Float:ST[4];
  150.     if(IsPlayerInAnyVehicle( playerid ))
  151.     GetVehicleVelocity(GetPlayerVehicleID( playerid ),ST[0],ST[1],ST[2]);
  152.     else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]);
  153.     ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 178.8617875;
  154.     return floatround(ST[3]);
  155. }
  156.  
  157. forward _benzinFire(playerid);
  158. public _benzinFire(playerid) {
  159.  
  160.     new i = _counter[playerid],
  161.         Float:x, Float:y, Float:z;
  162.  
  163.     if(i<0) {
  164.         GetObjectPos(_bureObject[playerid], x, y, z);
  165.         DestroyObject(_bureObject[playerid]);
  166.         CreateExplosion(x, y, z, 10, 10.0);
  167.     }
  168.     else {
  169.         GetObjectPos(_bureBenzin[playerid][i], x, y, z);
  170.         DestroyObject(_bureBenzin[playerid][i]);
  171.         _bureBenzin[playerid][i] = CreateObject(18689, x,y,z-1.6, 0,0,0);
  172.         SetTimerEx("_benzinVatra", 500, false, "ii", playerid, i);
  173.         _counter[playerid] -- ;
  174.         return SetTimerEx("_benzinFire", 300, false, "i", playerid);
  175.     }
  176.     return 1;
  177. }
  178.  
  179. forward _benzinVatra(playerid, a);
  180. public _benzinVatra(playerid, a) {
  181.  
  182.     DestroyObject(_bureBenzin[playerid][a]);
  183.     return 1;
  184. }
  185.  
  186. // ========================================================================== //
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement