Hatiro

pular seleção de classe com registro/login samp

May 11th, 2020
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.73 KB | None | 0 0
  1. #include <a_samp>
  2. #include <DOF2>
  3.  
  4. //defines
  5. #define Dialog_Registro 1
  6. #define Dialog_Login 2
  7. #define Contas "Contas/%s.ini"
  8.  
  9. // Variáveis //
  10.  
  11. enum InfoPlayer {
  12.  
  13.     Senha,
  14.     Skin,
  15.     Score,
  16.     Matou,
  17.     Morreu,
  18.     Dinheiro,
  19.     Admin
  20.  
  21. };
  22.  
  23. new Erro[MAX_PLAYERS];
  24. new Player[MAX_PLAYERS][InfoPlayer];
  25. main (  )  {  }
  26. public OnPlayerConnect(playerid)
  27. {
  28.     if(DOF2_FileExists( GetPlayerArquivo( playerid ) ) )
  29.     {
  30.         ShowPlayerDialog( playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "Login", "Digite Sua Senha Para Entrar!","Logar","Sair");
  31.     }
  32.     else
  33.     {
  34.         ShowPlayerDialog( playerid, Dialog_Registro, DIALOG_STYLE_PASSWORD, "Registro De Conta", "Digite Sua Senha Para Se Registrar!", "Registrar","Sair");
  35.     }
  36.    
  37.     return 1;
  38. }
  39.  
  40. public OnPlayerDisconnect(playerid, reason)
  41. {
  42.     SavePlayer(playerid);
  43.     return 1;
  44. }
  45.  
  46. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  47. {
  48. switch(dialogid){
  49.  
  50.     case Dialog_Registro:
  51.     {
  52.         if( response )
  53.         {
  54.             if( strlen( inputtext ) < 5 || strlen( inputtext ) > 20 || !strlen( inputtext ) )
  55.             {
  56.  
  57.                   ShowPlayerDialog( playerid, Dialog_Registro ,DIALOG_STYLE_PASSWORD, "Registro", "Sua Senha Deve Conter No Mínimo 5 Caracteres!\nE No Máximo 20!\nTente Novamente!","Registrar","Sair" );
  58.  
  59.                 return 1;
  60.             }
  61.  
  62.             // Criar Arquivo E Colocar Os Valores //
  63.             DOF2_CreateFile( GetPlayerArquivo( playerid ) );
  64.             DOF2_SetString( GetPlayerArquivo( playerid ),"Senha", inputtext );
  65.             DOF2_SetInt( GetPlayerArquivo( playerid ), "Score" ,0 );
  66.             DOF2_SetInt( GetPlayerArquivo( playerid ), "Matou" ,0 );
  67.             DOF2_SetInt( GetPlayerArquivo( playerid ), "Morreu" ,0 );
  68.             DOF2_SetInt( GetPlayerArquivo( playerid ), "Skin" ,0 );
  69.             DOF2_SetInt( GetPlayerArquivo( playerid ),"Dinheiro", 50000 );
  70.             DOF2_SetInt( GetPlayerArquivo( playerid ), "Admin",0 );
  71.  
  72.             SendClientMessage(playerid, -1, "{0097FF}Registrado Com Sucesso!.");
  73.  
  74.             ShowPlayerDialog( playerid, Dialog_Login ,DIALOG_STYLE_PASSWORD, "Login", "Digite Sua Senha Registrada Abaixo Para Fazer O Login!","Logar","Sair" );
  75.  
  76.         }
  77.         else Kick( playerid );
  78.     }
  79.  
  80.     case Dialog_Login:
  81.     {
  82.         if( response )
  83.         {
  84.             if( strlen( inputtext ) < 5 || strlen( inputtext ) > 20 || !strlen( inputtext ) )
  85.             {
  86.  
  87.                    SendClientMessage( playerid, -1, "{FF0000}Digite Sua Senha Corretamente!." );
  88.                    ShowPlayerDialog( playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "Login","Digite Sua Senha Para Entrar!","Entrar","Sair");
  89.  
  90.                 return 1;
  91.             }
  92.             if( strcmp( inputtext, DOF2_GetString( GetPlayerArquivo( playerid ), "Senha" )) == 0 )
  93.             {
  94.  
  95.                 LoadPlayer( playerid );
  96.  
  97.                 SendClientMessage(playerid, 0x19B519FF, "{00FF04}Logado Com Sucesso!.");
  98.  
  99.             }
  100.             else
  101.             {
  102.                 Erro[ playerid ] ++; // Aquivo adiciona + 1 a variavel erro...
  103.                 if ( Erro[ playerid ] == 5 ){ SavePlayer(playerid); Kick ( playerid ); } // se a variavel chegar a 5, kicka o player pois ele errou 5 vezes a senha.
  104.  
  105.                 SendClientMessage( playerid, -1, "{FF0000}Digite Sua Senha Corretamente!." );
  106.                 ShowPlayerDialog( playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "Login","Digite Sua Senha Para Entrar!","Entrar","Sair");
  107.  
  108.             }
  109.         }
  110.         else{
  111.  
  112.          SavePlayer( playerid );
  113.          Kick( playerid );
  114.  
  115.         }
  116.     }
  117.  
  118.     }
  119.  
  120. return 1;
  121. }
  122.  
  123. GetPlayerArquivo(playerid)
  124. {
  125.     new ArquivoPlayer[ 30 ];
  126.     format( ArquivoPlayer, sizeof( ArquivoPlayer ), Contas, GetPlayerNameEx( playerid ) );
  127.     return ArquivoPlayer;
  128. }
  129.  
  130. stock GetPlayerNameEx(playerid)
  131. {
  132.     new Nome[MAX_PLAYER_NAME];
  133.     GetPlayerName(playerid, Nome, sizeof(Nome));
  134.     return Nome;
  135. }
  136.  
  137. SavePlayer(playerid)
  138. {
  139.     if( DOF2_FileExists( GetPlayerArquivo( playerid ) ) )
  140.     {
  141.  
  142.         DOF2_CreateFile(GetPlayerArquivo(playerid));
  143.  
  144.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Skin", Player[ playerid ][ Skin ] );
  145.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Score", Player[ playerid ][ Score ] );
  146.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Matou", Player[ playerid ][ Matou ] );
  147.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Morreu", Player[ playerid ][ Morreu ] );
  148.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Dinheiro", GetPlayerMoney( playerid ));
  149.         DOF2_SetInt( GetPlayerArquivo( playerid ), "Admin", Player[ playerid ][ Admin ] );
  150.  
  151.         DOF2_SaveFile();
  152.  
  153.     }
  154.     return 1;
  155. }
  156.  
  157. LoadPlayer(playerid)
  158. {
  159.     if( DOF2_FileExists( GetPlayerArquivo( playerid ) ) )
  160.     {
  161.         Player[ playerid ][ Skin ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Skin" );
  162.         Player[ playerid ][ Score ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Score" );
  163.         Player[ playerid ][ Dinheiro ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Dinheiro" );
  164.         Player[ playerid ][ Admin ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Admin"  );
  165.         Player[ playerid ][ Matou ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Matou" );
  166.         Player[ playerid ][ Morreu ] = DOF2_GetInt( GetPlayerArquivo( playerid ), "Morreu" );
  167.         SetSpawnInfo( playerid, 0, Player[ playerid ][ Skin ] , -319.9085,1057.2325,19.7422,306.3438,0,0,0,0,0,0 );
  168.         SpawnPlayer(playerid);
  169.  
  170.         SetPlayerScore( playerid, Player[ playerid ][ Score ] );
  171.         GivePlayerMoney( playerid, Player[ playerid] [ Dinheiro ] );
  172.         SetPlayerSkin(playerid, Player[ playerid ][ Skin ] );
  173.  
  174.     }
  175.     return 1;
  176. }
Add Comment
Please, Sign In to add comment