Raggae1998

Untitled

Jul 13th, 2012
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 10.13 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define MAXIMAL_PLAYERS 500
  4. #define DIALOG_LOGIN 0
  5. #define DIALOG_REGISTRATION 1
  6. #define WHITE "{FFFFFF}"
  7. #define DARK_WHITE "{BBBBBB}"
  8. #define RED "{FF0000}"
  9. #define DARK_RED "{BB0000}"
  10. #define GREEN "{00FF00}"
  11. #define DARK_GREEN "{00BB00}"
  12.  
  13. new DB:Database;
  14. new PlayerName[MAXIMAL_PLAYERS][30];
  15. new PlayerPassword[MAXIMAL_PLAYERS][30];
  16. new PlayerDateOfRegister[MAXIMAL_PLAYERS][20];
  17. new PlayerVisits[MAXIMAL_PLAYERS];
  18. new PlayerMoney[MAXIMAL_PLAYERS];
  19. new PlayerRespect[MAXIMAL_PLAYERS];
  20. new PlayerLevel[MAXIMAL_PLAYERS];
  21. new PlayerRespectToNextLevel[MAXIMAL_PLAYERS];
  22. new PlayerSuicides[MAXIMAL_PLAYERS];
  23. new PlayerDeaths[MAXIMAL_PLAYERS];
  24. new PlayerKills[MAXIMAL_PLAYERS];
  25. new PlayerRconAdministrator[MAXIMAL_PLAYERS];
  26. new PlayerHeadAdministrator[MAXIMAL_PLAYERS];
  27. new PlayerAdministrator[MAXIMAL_PLAYERS];
  28. new PlayerJuniorAdministrator[MAXIMAL_PLAYERS];
  29. new PlayerModerator[MAXIMAL_PLAYERS];
  30. new PlayerVip[MAXIMAL_PLAYERS];
  31. new PlayerLoggedIn[MAXIMAL_PLAYERS];
  32.  
  33. main()
  34. {
  35.     return 1;
  36. }
  37.  
  38. public OnGameModeInit()
  39. {
  40.     Database = db_open("Server.db");
  41.     return 1;
  42. }
  43. public OnGameModeExit()
  44. {
  45.     db_close(Database);
  46.     return 1;
  47. }
  48.  
  49. public OnPlayerConnect(playerid)
  50. {
  51.     new String[150];
  52.     GetPlayerName(playerid,PlayerName[playerid],30);
  53.     format(PlayerPassword[playerid],30," ");
  54.     format(PlayerDateOfRegister[playerid],20," ");
  55.     PlayerVisits[playerid] = 0;
  56.     PlayerMoney[playerid] = 0;
  57.     PlayerRespect[playerid] = 0;
  58.     PlayerLevel[playerid] = 0;
  59.     PlayerRespectToNextLevel[playerid] = 0;
  60.     PlayerSuicides[playerid] = 0;
  61.     PlayerDeaths[playerid] = 0;
  62.     PlayerKills[playerid] = 0;
  63.     PlayerRconAdministrator[playerid] = 0;
  64.     PlayerHeadAdministrator[playerid] = 0;
  65.     PlayerAdministrator[playerid] = 0;
  66.     PlayerJuniorAdministrator[playerid] = 0;
  67.     PlayerModerator[playerid] = 0;
  68.     PlayerVip[playerid] = 0;
  69.     PlayerLoggedIn[playerid] = 0;
  70.     format(String,150,"SELECT * FROM `Players` WHERE `PlayerName` = '%s'",PlayerName[playerid]);
  71.     new DBResult:DatabaseResult = db_query(Database,String);
  72.     if(db_num_rows(DatabaseResult)) ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Logowanie",""WHITE">>> Witaj ponownie na serwerze.\n"WHITE">>> Twój nick został znaleziony w naszej bazie danych.\n"WHITE">>> Wpisz poniżej hasło do konta podane podczas rejestracji.","Ok","Anuluj");
  73.     if(!db_num_rows(DatabaseResult)) ShowPlayerDialog(playerid,DIALOG_REGISTRATION,DIALOG_STYLE_PASSWORD,"Rejestracja",""WHITE">>> Witaj na serwerze.\n"WHITE">>> Twój nick nie został znaleziony w naszej bazie danych.\n"WHITE">>> Wpisz poniżej hasło do konta którego będziesz używał podczas logowania.","Ok","Anuluj");
  74.     db_free_result(DatabaseResult);
  75.     return 1;
  76. }
  77.  
  78. public OnPlayerDisconnect(playerid,reason)
  79. {
  80.     new String[150];
  81.     if(PlayerLoggedIn[playerid] == 1)
  82.     {
  83.         format(String,150,"UPDATE `Players` (`PlayerPassword`,`PlayerDateOfRegister`,`PlayerVisits`,`PlayerMoney`,`PlayerRespect`,`PlayerLevel`,`PlayerRespectToNextLevel`,`PlayerSuicides`,`PlayerDeaths`,`PlayerKills`,`PlayerRconAdministrator`,`PlayerHeadAdministrator`,`PlayerAdministrator`,`PlayerJuniorAdministrator`,`PlayerModerator`,`PlayerVip`) VALUES ('%s','%s','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d') WHERE `PlayerName` = '%s'",PlayerPassword[playerid],
  84.         PlayerDateOfRegister[playerid],PlayerVisits[playerid],PlayerMoney[playerid],PlayerRespect[playerid],PlayerLevel[playerid],PlayerRespectToNextLevel[playerid],PlayerSuicides[playerid],PlayerDeaths[playerid],PlayerKills[playerid],PlayerRconAdministrator[playerid],PlayerHeadAdministrator[playerid],PlayerAdministrator[playerid],PlayerJuniorAdministrator[playerid],PlayerModerator[playerid],PlayerVip[playerid]);
  85.         new DBResult:DatabaseResult = db_query(Database,String);
  86.         db_free_result(DatabaseResult);
  87.     }
  88.     return 1;
  89. }
  90.  
  91. public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
  92. {
  93.     new String[150];
  94.     if(dialogid == DIALOG_LOGIN)
  95.     {
  96.         if(response)
  97.         {
  98.             format(String,150,"SELECT `PlayerDateOfRegister`,`PlayerVisits`,`PlayerMoney`,`PlayerRespect`,`PlayerLevel`,`PlayerRespectToNextLevel`,`PlayerSucides`,`PlayerDeaths`,`PlayerKills`,`PlayerRconAdministrator`,`PlayerHeadAdministrator`,`PlayerAdministrator`,`PlayerJuniorAdministrator`,`PlayerModerator`,`PlayerVip` FROM `Players` WHERE `PlayerName` = '%s' AND `PlayerPassword` = '%s'",PlayerName[playerid],inputtext);
  99.             new DBResult:DatabaseResult = db_query(Database,String);
  100.             if(!db_num_rows(DatabaseResult))
  101.             {
  102.                 SendClientMessage(playerid,0,""RED">>> Podałeś nieprawidłowe hasło.");
  103.                 ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Logowanie",""WHITE">>> Witaj ponownie na serwerze.\n"WHITE">>> Twój nick został znaleziony w naszej bazie danych.\n"WHITE">>> Wpisz poniżej hasło do konta podane podczas rejestracji.","Ok","Anuluj");
  104.                 return 1;
  105.             }
  106.             new FieldDateOfRegister[20];
  107.             db_get_field_assoc(DatabaseResult,"PlayerDateOfRegister",FieldDateOfRegister,20);
  108.             format(PlayerDateOfRegister[playerid],20,"%s",strlen(FieldDateOfRegister));
  109.             db_free_result(DatabaseResult);
  110.             new FieldVisits[20];
  111.             db_get_field_assoc(DatabaseResult,"PlayerVisits",FieldVisits,20);
  112.             PlayerVisits[playerid] = strval(FieldVisits);
  113.             db_free_result(DatabaseResult);
  114.             new FieldMoney[20];
  115.             db_get_field_assoc(DatabaseResult,"PlayerMoney",FieldMoney,20);
  116.             PlayerMoney[playerid] = strval(FieldMoney);
  117.             db_free_result(DatabaseResult);
  118.             new FieldRespect[20];
  119.             db_get_field_assoc(DatabaseResult,"PlayerRespect",FieldRespect,20);
  120.             PlayerRespect[playerid] = strval(FieldRespect);
  121.             db_free_result(DatabaseResult);
  122.             new FieldLevel[5];
  123.             db_get_field_assoc(DatabaseResult,"PlayerLevel",FieldLevel,5);
  124.             PlayerLevel[playerid] = strval(FieldLevel);
  125.             db_free_result(DatabaseResult);
  126.             new FieldRespectToNextLevel[20];
  127.             db_get_field_assoc(DatabaseResult,"PlayerRespectToNextLevel",FieldRespectToNextLevel,20);
  128.             PlayerRespectToNextLevel[playerid] = strval(FieldRespectToNextLevel);
  129.             db_free_result(DatabaseResult);
  130.             new FieldSuicides[20];
  131.             db_get_field_assoc(DatabaseResult,"PlayerSuicides",FieldSuicides,20);
  132.             PlayerSuicides[playerid] = strval(FieldSuicides);
  133.             db_free_result(DatabaseResult);
  134.             new FieldDeaths[20];
  135.             db_get_field_assoc(DatabaseResult,"PlayerDeaths",FieldDeaths,20);
  136.             PlayerDeaths[playerid] = strval(FieldDeaths);
  137.             db_free_result(DatabaseResult);
  138.             new FieldKills[20];
  139.             db_get_field_assoc(DatabaseResult,"PlayerKills",FieldKills,20);
  140.             PlayerKills[playerid] = strval(FieldKills);
  141.             db_free_result(DatabaseResult);
  142.             new FieldRconAdministrator[1];
  143.             db_get_field_assoc(DatabaseResult,"PlayerRconAdministrator",FieldRconAdministrator,1);
  144.             PlayerRconAdministrator[playerid] = strval(FieldRconAdministrator);
  145.             db_free_result(DatabaseResult);
  146.             new FieldHeadAdministrator[1];
  147.             db_get_field_assoc(DatabaseResult,"PlayerHeadAdministrator",FieldHeadAdministrator,1);
  148.             PlayerHeadAdministrator[playerid] = strval(FieldHeadAdministrator);
  149.             db_free_result(DatabaseResult);
  150.             new FieldAdministrator[1];
  151.             db_get_field_assoc(DatabaseResult,"PlayerAdministrator",FieldAdministrator,1);
  152.             PlayerAdministrator[playerid] = strval(FieldAdministrator);
  153.             db_free_result(DatabaseResult);
  154.             new FieldJuniorAdministrator[1];
  155.             db_get_field_assoc(DatabaseResult,"PlayerJuniorAdministrator",FieldJuniorAdministrator,1);
  156.             PlayerHeadAdministrator[playerid] = strval(FieldJuniorAdministrator);
  157.             db_free_result(DatabaseResult);
  158.             new FieldModerator[1];
  159.             db_get_field_assoc(DatabaseResult,"PlayerModerator",FieldModerator,1);
  160.             PlayerModerator[playerid] = strval(FieldModerator);
  161.             db_free_result(DatabaseResult);
  162.             new FieldVip[1];
  163.             db_get_field_assoc(DatabaseResult,"PlayerVip",FieldVip,1);
  164.             PlayerVip[playerid] = strval(FieldVip);
  165.             db_free_result(DatabaseResult);
  166.             PlayerVisits[playerid] += 1;
  167.             PlayerLoggedIn[playerid] = 1;
  168.             SendClientMessage(playerid,0,""GREEN">>> Zalogowałeś się pomyślnie, życzymy miłej gry.");
  169.         }
  170.         if(!response)
  171.         {
  172.             format(String,150,""RED">>> Gracz "DARK_RED"%s (%d) "RED"został wyrzucony. Powód: Anulowanie logowania.",PlayerName[playerid],playerid);
  173.             SendClientMessageToAll(0,String);
  174.             Kick(playerid);
  175.         }
  176.     }
  177.     if(dialogid == DIALOG_REGISTRATION)
  178.     {
  179.         if(response)
  180.         {
  181.             if(strlen(inputtext) < 5)
  182.             {
  183.                 SendClientMessage(playerid,0,""RED">>> Wpisałeś nieprawidłowe hasło, minimalnie 5 znaków.");
  184.                 ShowPlayerDialog(playerid,DIALOG_REGISTRATION,DIALOG_STYLE_PASSWORD,"Rejestracja",""WHITE">>> Witaj na serwerze.\n"WHITE">>> Twój nick nie został znaleziony w naszej bazie danych.\n"WHITE">>> Wpisz poniżej hasło do konta którego będziesz używał podczas logowania.","Ok","Anuluj");
  185.                 return 1;
  186.             }
  187.             if(strlen(inputtext) > 20)
  188.             {
  189.                 SendClientMessage(playerid,0,""RED">>> Wpisałeś nieprawidłowe hasło, maksymalnie 20 znaków.");
  190.                 ShowPlayerDialog(playerid,DIALOG_REGISTRATION,DIALOG_STYLE_PASSWORD,"Rejestracja",""WHITE">>> Witaj na serwerze.\n"WHITE">>> Twój nick nie został znaleziony w naszej bazie danych.\n"WHITE">>> Wpisz poniżej hasło do konta którego będziesz używał podczas logowania.","Ok","Anuluj");
  191.                 return 1;
  192.             }
  193.             format(PlayerPassword[playerid],30,"%s",inputtext);
  194.             new Year,Month,Day;
  195.             getdate(Year,Month,Day);
  196.             format(PlayerDateOfRegister[playerid],20,"%02d/%02d/%d",Day,Month,Year);
  197.             PlayerVisits[playerid] = 1;
  198.             PlayerMoney[playerid] = 50000;
  199.             PlayerRespectToNextLevel[playerid] = 500;
  200.             PlayerLoggedIn[playerid] = 1;
  201.             format(String,150,""GREEN">>> Zarejestrowałeś się pomyślnie, twoje hasło to "DARK_GREEN"%s"GREEN". Życzymy miłej gry.",inputtext);
  202.             SendClientMessage(playerid,0,String);
  203.             format(String,150,"INSERT INTO `Players` (`PlayerName`,`PlayerPassword`) VALUES ('%s','%s');",PlayerName[playerid],inputtext);
  204.             new DBResult:DatabaseResult = db_query(Database,String);
  205.             db_free_result(DatabaseResult);
  206.         }
  207.         if(!response)
  208.         {
  209.             format(String,150,""RED">>> Gracz "DARK_RED"%s (%d) "RED"został wyrzucony. Powód: Anulowanie rejestracji.",PlayerName[playerid],playerid);
  210.             SendClientMessageToAll(0,String);
  211.             Kick(playerid);
  212.         }
  213.     }
  214.     return 1;
  215. }
Advertisement
Add Comment
Please, Sign In to add comment