SHARE
TWEET

[FS] Sistema de Registro/Login Samp 0.3e

Chip7 Apr 28th, 2012 1,495 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*VISITE NOSSO SITE: http://www.sampknd.com/
  2.   SAMP KND MELHOR BLOG DE SAMP DO BRASIL
  3. */
  4.  
  5. #include <a_samp>
  6. #include DOF2
  7. #include keypad
  8. new Contas[128];
  9. new Erros[MAX_PLAYERS];
  10. new bool:Logado[MAX_PLAYERS];
  11. #define DIALOG_Registro           1
  12. #define DIALOG_Login              2
  13. #define DIALOG_SenhaRegistrar     3
  14. #define DIALOG_SenhaLogar         4
  15. #define DIALOG_Teste              5
  16.  
  17. public OnGameModeInit()
  18. {  
  19.     return 1;
  20. }
  21.  
  22. public OnGameModeExit()
  23. {
  24.         DOF2_Exit();
  25.         return 1;
  26. }
  27.  
  28. public OnPlayerConnect(playerid)
  29. {
  30.         SendClientMessage(playerid,-1,"Sistema de registo criado por LuizFel");
  31.         format(Contas,128,"Players/%s.txt", Nome(playerid));
  32.         if(!DOF2_FileExists(Contas))
  33.         {
  34.                 new string1[128],string[128],ip[50];
  35.                 GetPlayerIp(playerid, ip, sizeof(ip));
  36.                 format(string, 128, "{FFFFFF}Olá {E60000}%s  {FFFFFF}Seja bem Vindo\n" , Nome(playerid));
  37.                 strcat(string1,string);
  38.                 format(string, 128, "{FFFFFF}Status: {E60000}Não Registrada\n");
  39.                 strcat(string1,string);
  40.                 format(string, 128, "{FFFFFF}Seu IP: {E60000} %s               \n" , ip);
  41.                 strcat(string1,string);
  42.                 ShowPlayerDialog(playerid, DIALOG_Registro, DIALOG_STYLE_INPUT, "Registrando...", string1, "Registrar", "Sair");
  43.                 return 1;
  44.          }
  45.         new string1[128],string[128],ip[50];
  46.         GetPlayerIp(playerid, ip, sizeof(ip));
  47.         format(string, 128, "{FFFFFF}Olá {E60000}%s {FFFFFF}Seja bem Vindo\n" , Nome(playerid));
  48.         strcat(string1,string);
  49.         format(string, 128, "{FFFFFF}Status:{E60000} Registrado\n");
  50.         strcat(string1,string);
  51.         format(string, 128, "{FFFFFF}Seu IP: {E60000} %s \n" , ip);
  52.         strcat(string1,string);
  53.         ShowPlayerDialog(playerid, DIALOG_Login, DIALOG_STYLE_INPUT, "Logando...", string1, "Logar", "Sair");
  54.     return 1;
  55. }
  56.  
  57. public OnPlayerDisconnect(playerid, reason)
  58. {
  59.         return 1;
  60. }
  61.  
  62. public OnPlayerSpawn(playerid)
  63. {
  64.         if(Logado[playerid] == false)
  65.         {
  66.                 SendClientMessage(playerid,-1,"Você foi kickado por spawnar sem usar senha mestre");
  67.                 Kick(playerid);
  68.                 return 1;
  69.         }
  70.         return 1;
  71. }
  72.  
  73. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  74. {
  75.  
  76. if(dialogid == DIALOG_Registro)
  77. {
  78.         if(!response)
  79.         {
  80.         SendClientMessage(playerid,-1, "{E60000}[F-Register] Você foi kickado por não registrar ");
  81.         Kick(playerid);
  82.         return 1;
  83.         }
  84.         if(!strlen(inputtext))
  85.         {
  86.                 ShowPlayerDialog(playerid, DIALOG_Registro, DIALOG_STYLE_INPUT, "Registrando...", "Por Favor, para jogar se registre em \nNosso server :D\n\n{1BE0E0}Digite uma senha", "Registrar", "Sair");
  87.         SendClientMessage(playerid, -1, "{E60000}[F-Register] Escolha uma senha");
  88.         return 1;
  89.         }
  90.         new string[128]; format(string, 128, "%s", inputtext);
  91.         DOF2_CreateFile(Contas);
  92.         format(Contas, sizeof(Contas), "Players/%s.txt", Nome(playerid));
  93.         DOF2_SetString(Contas, "Senha", string);
  94.         new string1[128];
  95.         strcat(string1, "Olá, a senha mestre é uma senha para evitar roubos \n");
  96.         strcat(string1, "Por favor, não utilize letras, apenas números.");
  97.         ShowPlayerDialog(playerid, DIALOG_SenhaRegistrar, DIALOG_STYLE_INPUT, "Senha Mestre...", string1, "Logar", "Sair");
  98.         return 1;
  99. }
  100. if(dialogid == DIALOG_SenhaRegistrar)
  101. {
  102.         if(!response)
  103.         {
  104.                 SendClientMessage(playerid,-1, "{E60000}[F-Register] Você não escolheu senha mestre e foi kickado");
  105.         Kick(playerid);
  106.         return 1;
  107.         }
  108.         if(!strlen(inputtext))
  109.         {
  110.                 ShowPlayerDialog(playerid, DIALOG_SenhaRegistrar, DIALOG_STYLE_INPUT, "Senha Mestre...", "Escolha uma senha mestre", "Logar", "Sair");
  111.         SendClientMessage(playerid, -1, "{E60000}[F-Register] Digite uma senha mestre para registrar");
  112.         return 1;
  113.         }
  114.     new string[128]; format(string, 128, "%s", inputtext);
  115.         format(Contas, sizeof(Contas), "Players/%s.txt", Nome(playerid));
  116.         DOF2_SetString(Contas, "Mestre", string);
  117.         SendClientMessage(playerid,-1,"{E60000}[F-Register] Você foi registrado e logado com sucesso.");
  118.     Logar(playerid);
  119. }
  120. if(dialogid == DIALOG_Login)
  121. {
  122.         if(!response)
  123.         {
  124.                 SendClientMessage(playerid, -1, "{E60000}[F-Register] Você não logou-se com a senha e foi kickado.");
  125.         Kick(playerid);
  126.         return 1;
  127.         }
  128.         if(!strlen(inputtext))
  129.         {
  130.                 ShowPlayerDialog(playerid, DIALOG_Login, DIALOG_STYLE_INPUT, "Logando...", "Logue-se usando sua senha :D", "Logar", "Sair");
  131.         SendClientMessage(playerid, -1, "{E60000}[F-Register] Digite a senha para logar.");
  132.         return 1;
  133.     }
  134.     format(Contas, sizeof(Contas), "Players/%s.txt", Nome(playerid));
  135.     if(strcmp(inputtext, DOF2_GetString(Contas, "Senha"), true))
  136.         {
  137.                 ShowPlayerDialog(playerid, DIALOG_Login, DIALOG_STYLE_INPUT, "Logando...", "Logue-se usando sua senha :D", "Logar", "Sair");
  138.         SendClientMessage(playerid, -1, "{E60000}[F-Register] Senha Incorreta.");
  139.                 SendClientMessage(playerid, -1, "{E60000}[F-Register] Se errar a senha 3 vezes é kickado.");
  140.                 Erros[playerid] ++;
  141.                 if(Erros[playerid] == 3) return Kick(playerid);
  142.                 return 1;
  143.         }
  144.         GameTextForPlayer(playerid, "Utilize sua senha mestre para se logar", 3000, 1);
  145.         format(Contas, sizeof(Contas), "%s.txt", Nome(playerid));
  146.         ShowPlayerKeypad(playerid, DIALOG_Teste, DOF2_GetString(Contas, "Mestre"));
  147.         return 1;
  148. }
  149.  
  150. if(dialogid == DIALOG_SenhaLogar)
  151. {
  152.         if(!response)
  153.         {
  154.                 SendClientMessage(playerid,-1,"{E60000}[F-Register]Você não logou-se com a senha e foi kickado.");
  155.                 Kick(playerid);
  156.                 return 1;
  157.         }
  158.         if(!strlen(inputtext))
  159.         {
  160.                 ShowPlayerDialog(playerid, DIALOG_SenhaLogar, DIALOG_STYLE_INPUT, "Senha Mestre...","Use a senha mestre", "Logar", "Sair");
  161.                 SendClientMessage(playerid, -1,"{E60000}[F-Register] Digite a senha mestre para logar");
  162.                 return 1;
  163.         }
  164.         format(Contas, sizeof(Contas), "Players/%s.txt", Nome(playerid));
  165.         if(strcmp(inputtext, DOF2_GetString(Contas, "Mestre"), true))
  166.         {
  167.                 ShowPlayerDialog(playerid, DIALOG_SenhaLogar, DIALOG_STYLE_INPUT, "Senha Mestre...","Use a senha mestre", "Logar", "Sair");
  168.                 SendClientMessage(playerid,-1, "{E60000}[F-Register] Senha mestre incorreta");
  169.                 return 1;
  170.         }
  171.     Logar(playerid);
  172.     return 1;
  173. }
  174. return 1;
  175. }
  176.  
  177. stock Nome(playerid)
  178. {
  179.         new pNome[MAX_PLAYER_NAME];
  180.         GetPlayerName(playerid, pNome, 24);
  181.         return pNome;
  182. }
  183.  
  184. public OnPlayerKeypadInput(playerid, keypadID, type, key)
  185. {
  186.         if(keypadID == DIALOG_Teste && type == KEYPAD_INPUT_GOOD)
  187.         {
  188.         Logar(playerid);
  189.             return 1;
  190.         }
  191.         if(keypadID == DIALOG_Teste && type == KEYPAD_INPUT_BAD)
  192.         {
  193.             SendClientMessage(playerid,-1,"{E60000}[F-Register] Senha mestre incorreta.");
  194.             Kick(playerid);
  195.         return 1;
  196. }
  197.     return 1;
  198. }
  199.  
  200. stock Logar(playerid)
  201. {
  202.         SendClientMessage(playerid,-1,"{E60000}[F-Register] Você foi logado com sucesso.");
  203.         SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0 );
  204.     SpawnPlayer(playerid);
  205.     DOF2_SaveFile();
  206.         Logado[playerid] = true;
  207.         return 1;
  208. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top