Raggae1998

Untitled

Jul 13th, 2012
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 9.85 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`,`PlayerVisits`,`PlayerMoney`,`PlayerRespect`,`PlayerLevel`,`PlayerRespectToNextLevel`,`PlayerSuicides`,`PlayerDeaths`,`PlayerKills`,`PlayerRconAdministrator`,`PlayerHeadAdministrator`,`PlayerAdministrator`,`PlayerJuniorAdministrator`,`PlayerModerator`,`PlayerVip`) VALUES ('%s','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d') WHERE `PlayerName` = '%s'",PlayerPassword[playerid],PlayerVisits[playerid],
  84.         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],PlayerName[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 * 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.             db_free_result(DatabaseResult);
  107.             new FieldDateOfRegister[20];
  108.             db_get_field_assoc(DatabaseResult,"PlayerDateOfRegister",FieldDateOfRegister,20);
  109.             format(PlayerDateOfRegister[playerid],20,"%s",strlen(FieldDateOfRegister));
  110.             db_free_result(DatabaseResult);
  111.             new FieldVisits[20];
  112.             db_get_field_assoc(DatabaseResult,"PlayerVisits",FieldVisits,20);
  113.             PlayerVisits[playerid] = strval(FieldVisits);
  114.             db_free_result(DatabaseResult);
  115.             new FieldMoney[20];
  116.             db_get_field_assoc(DatabaseResult,"PlayerMoney",FieldMoney,20);
  117.             PlayerMoney[playerid] = strval(FieldMoney);
  118.             db_free_result(DatabaseResult);
  119.             new FieldRespect[20];
  120.             db_get_field_assoc(DatabaseResult,"PlayerRespect",FieldRespect,20);
  121.             PlayerRespect[playerid] = strval(FieldRespect);
  122.             db_free_result(DatabaseResult);
  123.             new FieldLevel[5];
  124.             db_get_field_assoc(DatabaseResult,"PlayerLevel",FieldLevel,5);
  125.             PlayerLevel[playerid] = strval(FieldLevel);
  126.             db_free_result(DatabaseResult);
  127.             new FieldRespectToNextLevel[20];
  128.             db_get_field_assoc(DatabaseResult,"PlayerRespectToNextLevel",FieldRespectToNextLevel,20);
  129.             PlayerRespectToNextLevel[playerid] = strval(FieldRespectToNextLevel);
  130.             db_free_result(DatabaseResult);
  131.             new FieldSuicides[20];
  132.             db_get_field_assoc(DatabaseResult,"PlayerSuicides",FieldSuicides,20);
  133.             PlayerSuicides[playerid] = strval(FieldSuicides);
  134.             db_free_result(DatabaseResult);
  135.             new FieldDeaths[20];
  136.             db_get_field_assoc(DatabaseResult,"PlayerDeaths",FieldDeaths,20);
  137.             PlayerDeaths[playerid] = strval(FieldDeaths);
  138.             db_free_result(DatabaseResult);
  139.             new FieldKills[20];
  140.             db_get_field_assoc(DatabaseResult,"PlayerKills",FieldKills,20);
  141.             PlayerKills[playerid] = strval(FieldKills);
  142.             db_free_result(DatabaseResult);
  143.             new FieldRconAdministrator[1];
  144.             db_get_field_assoc(DatabaseResult,"PlayerRconAdministrator",FieldRconAdministrator,1);
  145.             PlayerRconAdministrator[playerid] = strval(FieldRconAdministrator);
  146.             db_free_result(DatabaseResult);
  147.             new FieldHeadAdministrator[1];
  148.             db_get_field_assoc(DatabaseResult,"PlayerHeadAdministrator",FieldHeadAdministrator,1);
  149.             PlayerHeadAdministrator[playerid] = strval(FieldHeadAdministrator);
  150.             db_free_result(DatabaseResult);
  151.             new FieldAdministrator[1];
  152.             db_get_field_assoc(DatabaseResult,"PlayerAdministrator",FieldAdministrator,1);
  153.             PlayerAdministrator[playerid] = strval(FieldAdministrator);
  154.             db_free_result(DatabaseResult);
  155.             new FieldJuniorAdministrator[1];
  156.             db_get_field_assoc(DatabaseResult,"PlayerJuniorAdministrator",FieldJuniorAdministrator,1);
  157.             PlayerHeadAdministrator[playerid] = strval(FieldJuniorAdministrator);
  158.             db_free_result(DatabaseResult);
  159.             new FieldModerator[1];
  160.             db_get_field_assoc(DatabaseResult,"PlayerModerator",FieldModerator,1);
  161.             PlayerModerator[playerid] = strval(FieldModerator);
  162.             db_free_result(DatabaseResult);
  163.             new FieldVip[1];
  164.             db_get_field_assoc(DatabaseResult,"PlayerVip",FieldVip,1);
  165.             PlayerVip[playerid] = strval(FieldVip);
  166.             db_free_result(DatabaseResult);
  167.             PlayerVisits[playerid] += 1;
  168.             PlayerLoggedIn[playerid] = 1;
  169.             SendClientMessage(playerid,0,""GREEN">>> Zalogowałeś się pomyślnie, życzymy miłej gry.");
  170.         }
  171.         if(!response)
  172.         {
  173.             format(String,150,""RED">>> Gracz "DARK_RED"%s (%d) "RED"został wyrzucony. Powód: Anulowanie logowania.",PlayerName[playerid],playerid);
  174.             SendClientMessageToAll(0,String);
  175.             Kick(playerid);
  176.         }
  177.     }
  178.     if(dialogid == DIALOG_REGISTRATION)
  179.     {
  180.         if(response)
  181.         {
  182.             if(strlen(inputtext) < 5)
  183.             {
  184.                 SendClientMessage(playerid,0,""RED">>> Wpisałeś nieprawidłowe hasło, minimalnie 5 znaków.");
  185.                 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");
  186.                 return 1;
  187.             }
  188.             if(strlen(inputtext) > 20)
  189.             {
  190.                 SendClientMessage(playerid,0,""RED">>> Wpisałeś nieprawidłowe hasło, maksymalnie 20 znaków.");
  191.                 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");
  192.                 return 1;
  193.             }
  194.             format(PlayerPassword[playerid],30,"%s",inputtext);
  195.             new Year,Month,Day;
  196.             getdate(Year,Month,Day);
  197.             format(PlayerDateOfRegister[playerid],20,"%02d/%02d/%d",Day,Month,Year);
  198.             PlayerVisits[playerid] = 1;
  199.             PlayerMoney[playerid] = 50000;
  200.             PlayerRespectToNextLevel[playerid] = 500;
  201.             PlayerLoggedIn[playerid] = 1;
  202.             format(String,150,""GREEN">>> Zarejestrowałeś się pomyślnie, twoje hasło to "DARK_GREEN"%s"GREEN". Życzymy miłej gry.",inputtext);
  203.             SendClientMessage(playerid,0,String);
  204.             format(String,150,"INSERT INTO `Players` (`PlayerName`,`PlayerPassword`) VALUES ('%s','%s');",PlayerName[playerid],inputtext);
  205.             new DBResult:DatabaseResult = db_query(Database,String);
  206.             db_free_result(DatabaseResult);
  207.         }
  208.         if(!response)
  209.         {
  210.             format(String,150,""RED">>> Gracz "DARK_RED"%s (%d) "RED"został wyrzucony. Powód: Anulowanie rejestracji.",PlayerName[playerid],playerid);
  211.             SendClientMessageToAll(0,String);
  212.             Kick(playerid);
  213.         }
  214.     }
  215.     return 1;
  216. }
Advertisement
Add Comment
Please, Sign In to add comment