Advertisement
RenasAP

[PAWN BATTLE]: RENAS VS BIČAS - REKORDO SISTEMA.

Jun 11th, 2014
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.61 KB | None | 0 0
  1. /*
  2.     PAWN battle: Renas vs Bičas.
  3.     Darbo tipas: Rekordo sistema.
  4.     Saugojimas/Krovimas: mySQL r5.
  5.         Renas(c)2014
  6.  
  7. */
  8. // .inc
  9. #include <a_samp>
  10. #include <a_mysql>
  11. // Konstantos
  12. #define Online(%0)                  IsPlayerConnected(%0)
  13. // Enum'ai
  14. enum _rekordoInformacija{
  15.  
  16.     serverioRekordas,
  17.     serverioRekordasPasiektas[32],
  18.     padejoPasiektiRekorda[MAX_PLAYER_NAME+1]
  19. };
  20. new rekordoInfo_[_rekordoInformacija];
  21.  
  22. public OnPlayerConnect(playerid)
  23. {
  24.     new getString[50],str[256];
  25.     mysql_query("SELECT Rekordas FROM rekordas");
  26.     mysql_store_result();
  27.     mysql_retrieve_row();
  28.  
  29.     mysql_fetch_field_row(getString,"Rekordas");        rekordoInfo_[serverioRekordas]=strval(getString);
  30.  
  31.     if(OnlinePlayers()>rekordoInfo_[serverioRekordas]){
  32.  
  33.         format(rekordoInfo_[serverioRekordasPasiektas],32,"%s",GautiData());
  34.         format(rekordoInfo_[padejoPasiektiRekorda],MAX_PLAYER_NAME+1,"%s",pName(playerid));
  35.         rekordoInfo_[serverioRekordas]=OnlinePlayers();
  36.         updateRecord(rekordoInfo_[serverioRekordas],rekordoInfo_[serverioRekordasPasiektas],rekordoInfo_[padejoPasiektiRekorda]);
  37.  
  38.         SendClientMessageToAll(-1,"~*~ Pasiektas naujas serverio rekordas ~*~");
  39.         format(str,128,"~*~ Pasiektas žaidėjų rekordas: %i žaidėjai ~*~",rekordoInfo_[serverioRekordas]);
  40.         SendClientMessageToAll(-1,str);
  41.         format(str,128,"~*~ Rekordas pasiektas: %s ~*~",rekordoInfo_[serverioRekordasPasiektas]);
  42.         SendClientMessageToAll(-1,str);
  43.         format(str,128,"~*~ Žaidėjas, padėjęs pasiekti rekordą: %s ~*~",rekordoInfo_[padejoPasiektiRekorda]);
  44.         SendClientMessageToAll(-1,str);
  45.         SendClientMessageToAll(-1,"~*~ Visi gaunate po 500lt ir 150xp!");
  46.         for(new _i=0;_i!=MAX_PLAYERS;_i++)
  47.             {if(Online(_i)){GivePlayerMoney(_i,500); SetPlayerScore(_i,GetPlayerScore(_i)+150);}}
  48.  
  49.     }
  50.     mysql_free_result();
  51.     return 1;
  52. }
  53. // FUNKCIJOS REIKALINGOS SKRIPTUI.
  54. stock updateRecord(rekordas,data[],kaspadejo[])
  55. {
  56.     new
  57.         sendQuery[128]
  58.     ;
  59.     format(sendQuery,128,"UPDATE `rekordas` SET Rekordas = '%i', RekordasPasiektas = '%s', PadejoRekordaPasiekti = '%s'",rekordas,data,kaspadejo);
  60.     mysql_query(sendQuery);
  61.     printf("[updateRecord(rekordas,data[],kaspadejo[])]: Rekordas: %i, RekordasPasiektas: %s, PadejoRekordaPasiekti: %s",rekordas,data,kaspadejo);
  62. }
  63. stock GautiData() // by Ance_Zas
  64. {
  65.    
  66.     new
  67.         stringas[ 31 ],
  68.         data[ 6 ]
  69.     ;
  70.     getdate( data[ 0 ], data[ 1 ], data[ 2 ] );
  71.     gettime( data[ 3 ], data[ 4 ], data[ 5 ] );
  72.     format( stringas, 31, "%d-%02d-%02d %02d:%02d", data[ 0 ], data[ 1 ], data[ 2 ], data[ 3 ], data[ 4 ] );
  73.     return stringas;
  74. }
  75. stock OnlinePlayers()
  76. {
  77.     new x=0;
  78.     for(new i=0;i!=MAX_PLAYERS;i++)
  79.     {
  80.         if(Online(i))
  81.         {
  82.             x++;
  83.         }
  84.     }
  85.     return x;
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement