[GameMode] GameMode Base Inglкs/Portuguкs
#1

Cуdigo Mais Otimizado, Editado Dia: 20/03/2018, аs 21:44
PHP код:
/* Idiomas
    - Linguagem 1 - Ingles
    - Linguagem 2 - Portugues
    - Sexo      1 - Homem
    - Sexo      2 - Mulher
    Usei SetInt Para Setar Nъmeros para nгo ter dificuldades para vocк no futuro.
*/
#include <a_samp>
#include <DOF2>
#define REGISTRO          0
#define LOGIN             1
#define IDIOMA          2
#define SEXO            3
#define IDADE           4
#define DIA_NASCIMENTO  5
#define MES_NASCIMENTO  6
#define ANO_NASCIMENTO  7
#define MensagemFormatada(%1,%2,%3,%4) do{format(gstring,sizeof(gstring),%3,%4 );SendClientMessage(%1,%2,gstring );}while(IsPlayerConnected(-1))
main()
{
    print(
"Servidor ligado/carregado com sucesso.");
}
enum PlayerInfo
{
    
Linguagem,
    
Sexo,
    
Idade,
    
Dia_Nascimento,
    
Mes_Nascimento,
    
Ano_Nascimento
}
new 
pInfo[MAX_PLAYERS][PlayerInfo];
new 
gstring[500];
new 
tentativas[MAX_PLAYERS];
public 
OnGameModeInit()
{
    return 
1;
}
public 
OnGameModeExit()
{
    
DOF2_Exit();
    return 
1;
}
public 
OnPlayerRequestClass(playeridclassid)
{
    if(!
DOF2_FileExists(Conta(playerid)))
    {
        
format(gstringsizeof(gstring), "Olб Jogador %s, vocк nгo й registrado, Digite uma senha para vocк se registrar."PlayerName(playerid));
        
format(gstringsizeof(gstring), "%s\n\nDepois de colocar sua senha responda as perguntas bбsicas.\n"gstring);
        
ShowPlayerDialog(playeridREGISTRODIALOG_STYLE_INPUT"Registro"gstring"Registrar""Sair");
    }
    else
    {
        
format(gstringsizeof(gstring), "Olб Jogador %s, vocк й registrado, digite sua senha para logar"PlayerName(playerid));
        
format(gstringsizeof(gstring), "%s\n\nAcompanhe nosso Server pelo Fуrum: DigiteSeuForumAqui.com\n"gstring);
        
ShowPlayerDialog(playeridLOGINDIALOG_STYLE_PASSWORD"Login"gstring"Logar""Sair");
    }
    return 
1;
}
public 
OnPlayerDisconnect(playerid)
{
    
SalvarConta(playerid);
    
ResetarVariaveis(playerid);
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    new 
len strlen(inputtext), val strval(inputtext);
    if(
dialogid == REGISTRO)
    {
        if(!
response) return Kick(playerid);
        if(
<= len <= 20)
        {
            
SendClientMessage(playerid, -1"| ERROR | Please enter a password between 4 and 20 characters!");
            
ShowPlayerDialog(playeridREGISTRODIALOG_STYLE_INPUT"Register""| ERROR | Please enter a password between 4 and 20 characters!""Register""Exit");
        }
        else
        {
            
DOF2_CreateFile(Conta(playerid));
            
DOF2_SetString(Conta(playerid), "Senha"inputtext);
            
ShowPlayerDialog(playeridIDIOMADIALOG_STYLE_LIST"What is your language?""English\nPortuguкs""Selecionar""Cancelar");
        }
    }
    if(
dialogid == LOGIN)
    {
        if(
strcmp(inputtextDOF2_GetString(Conta(playerid), "Senha"), true) == 0)
        {
            if(
pInfo[playerid][Linguagem] == 1) return SendClientMessage(playerid, -1"| INFO | successfully logged in");
            else 
SendClientMessage(playerid, -1"| INFO | Logado com sucesso.");
            
CarregarConta(playerid);
        }
        else
        {
            if(
tentativas[playerid] == 3)
            {
                if(
pInfo[playerid][Linguagem] == 1) return SendClientMessage(playerid, -1"You've made a mistake 3 times and been kicked.");
                   else 
SendClientMessage(playerid, -1"Vocк errou a senha 3 vezes e foi kikado.");
                
Kick(playerid);
            }
            else
            {
                new 
stg[100];
                
tentativas[playerid] ++;
                if(
pInfo[playerid][Linguagem] == 1)
                {
                    
format(stgsizeof(stg), "Number of attempts to log in to the server: (%d/3)"tentativas[playerid]);
                    
SendClientMessage(playerid, -1stg);
                    
ShowPlayerDialog(playeridLOGINDIALOG_STYLE_PASSWORD"Login""Enter the password correctly, you have 3 attempts""Next""Exit");
                }
                else
                {
                    
format(stgsizeof(stg), "Nъmero de Tentativas para vocк logar no servidor: (%d/3)"tentativas[playerid]);
                    
SendClientMessage(playerid, -1stg);
                    
ShowPlayerDialog(playeridLOGINDIALOG_STYLE_PASSWORD"Login""Digite sua senha correta, vocк tem 3 Tentativas""Proximo""Sair");
                }
            }
        }
    }
    if(
dialogid == IDIOMA)
    {
        if(!
response) return ShowPlayerDialog(playeridIDIOMADIALOG_STYLE_LIST"What is your language?""English\nPortuguкs""Selecionar""Cancelar");
        if(
listitem == 0)
        {
            
pInfo[playerid][Linguagem] = 1;
            
ShowPlayerDialog(playeridSEXODIALOG_STYLE_MSGBOX"Your Sex""Choose man or woman according to your gender""Man""Woman");
        }
        if(
listitem == 1)
        {
            
pInfo[playerid][Linguagem] = 2;
            
ShowPlayerDialog(playeridSEXODIALOG_STYLE_MSGBOX"Seu Sexo""Escolha Homem ou Mulher de acordo com seu Sexo""Homem""Mulher");
        }
    }
    if(
dialogid == SEXO)
    {
        if(
response)
        {
            
pInfo[playerid][Sexo] = 1;
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Your Age""Enter what is your age""Next""Exit");
            else 
ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Sua Idade""Digite quantos anos vocк tem""Proximo""Sair");
        }
        else
        {
            
pInfo[playerid][Sexo] = 2;
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Your Age""Enter what is your age""Next""Exit");
            else 
ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Sua Idade""Digite quantos anos vocк tem""Proximo""Sair");
        }
    }
    if(
dialogid == IDADE)
    {
        if(
16 <= val <= 70)
        {
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Your Age""Enter how old you are between the ages of 11 and 70""Next""Exit");
               else 
ShowPlayerDialog(playeridIDADEDIALOG_STYLE_INPUT"Sua Idade""Digite quantos anos vocк tem entre 11 e 70 Anos""Proximo""Sair");
        }
        else 
pInfo[playerid][Idade] = strval(inputtext);
        if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridDIA_NASCIMENTODIALOG_STYLE_INPUT"Your birth day""now enter your birth day""Next""Exit");
        else 
ShowPlayerDialog(playeridDIA_NASCIMENTODIALOG_STYLE_INPUT"Seu Dia de Nascimento""Digite seu Dia de Nascimento""Proximo""Sair");
    }
    if(
dialogid == DIA_NASCIMENTO)
    {
        if(
<= val <= 31)
        {
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridDIA_NASCIMENTODIALOG_STYLE_INPUT"Your birth day""Enter your date of birth between 1 and 31""Next""Exit");
            else 
ShowPlayerDialog(playeridDIA_NASCIMENTODIALOG_STYLE_INPUT"Seu Dia de Aniversбrio""Digite entre 1 e 31 a data do seu Aniversбrio""Proximo""Sair");
        }
        else 
pInfo[playerid][Dia_Nascimento] = strval(inputtext);
        if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridMES_NASCIMENTODIALOG_STYLE_INPUT"your month of birth""Enter your month of birth""Next""Exit");
           else 
ShowPlayerDialog(playeridMES_NASCIMENTODIALOG_STYLE_INPUT"Seu Mкs de Nascimento""Digite seu Mкs de Nascimento""Proximo""Sair");
    }
    if(
dialogid == MES_NASCIMENTO)
    {
        if(
<= val <= 12)
        {
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridMES_NASCIMENTODIALOG_STYLE_INPUT"your month of birth""Enter your birthday month between 1 and 12""Next""Exit");
            else 
ShowPlayerDialog(playeridMES_NASCIMENTODIALOG_STYLE_INPUT"Seu Mкs de Aniversбrio""Digite o seu mкs de aniversбrio entre 1 e 12""Proximo""Sair");
        }
        else 
pInfo[playerid][Mes_Nascimento] = strval(inputtext);
        if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridANO_NASCIMENTODIALOG_STYLE_INPUT"your birth year""type the year you were born""Next""Exit");
        else 
ShowPlayerDialog(playeridANO_NASCIMENTODIALOG_STYLE_INPUT"Seu Ano de Nascimento""Digite o ano que vocк nasceu""Proximo""Sair");
    }
    if(
dialogid == ANO_NASCIMENTO)
    {
        if(
1970 <= val <= 2013)
        {
            if(
pInfo[playerid][Linguagem] == 1) return ShowPlayerDialog(playeridANO_NASCIMENTODIALOG_STYLE_INPUT"Your birth year""Enter between the years of 1970 and 2013 the year you were born""Next""Exit");
            else 
ShowPlayerDialog(playeridANO_NASCIMENTODIALOG_STYLE_INPUT"Seu ano de Aniversбrio""Digite entra 1970 e 2013 o ano que vocк nasceu!""Proximo""Sair");
        }
        else 
pInfo[playerid][Ano_Nascimento] = strval(inputtext);
           
SpawnPlayer(playerid);
          if(
pInfo[playerid][Linguagem] == 1) return SendClientMessage(playerid, -1"| INFO | We finished our questions, now play at will!");
        else 
SendClientMessage(playerid, -1"| INFO | Terminamos nossas perguntas, agora jogue avontade!");
    }
    return 
0;
}
static 
SalvarConta(playerid)
{
    
DOF2_SetInt(Conta(playerid), "Linguagem"pInfo[playerid][Linguagem]);
    
DOF2_SetInt(Conta(playerid), "Sexo"pInfo[playerid][Sexo]);
    
DOF2_SetInt(Conta(playerid), "Idade"pInfo[playerid][Idade]);
    
DOF2_SetInt(Conta(playerid), "DiaNascimento"pInfo[playerid][Dia_Nascimento]);
    
DOF2_SetInt(Conta(playerid), "MesNascimento"pInfo[playerid][Mes_Nascimento]);
    
DOF2_SetInt(Conta(playerid), "AnoNascimento"pInfo[playerid][Ano_Nascimento]);
    
DOF2_SaveFile();
    return 
1;
}
static 
CarregarConta(playerid)
{
    
DOF2_GetInt(Conta(playerid), "Linguagem"pInfo[playerid][Linguagem]);
    
DOF2_GetInt(Conta(playerid), "Sexo"pInfo[playerid][Sexo]);
    
DOF2_GetInt(Conta(playerid), "Idade"pInfo[playerid][Idade]);
    
DOF2_GetInt(Conta(playerid), "DiaNascimento"pInfo[playerid][Dia_Nascimento]);
    
DOF2_GetInt(Conta(playerid), "MesNascimento"pInfo[playerid][Mes_Nascimento]);
    
DOF2_GetInt(Conta(playerid), "AnoNascimento"pInfo[playerid][Ano_Nascimento]);
    
SpawnPlayer(playerid);
    if(
pInfo[playerid][Linguagem] == 1)
    {
        
MensagemFormatada(playerid, -1"Hello player %s, welcome back to the server"PlayerName(playerid));
    }
    else 
MensagemFormatada(playerid, -1"Olб player %s, bem vindo ao servidor novamente"PlayerName(playerid));
    return 
1;
}
static 
Conta(playerid)
{
    new 
Arquivo[100];
    
format(Arquivosizeof(Arquivo), "/Contas/%s.ini"PlayerName(playerid));
    return 
Arquivo;
}
static 
ResetarVariaveis(playerid)
{
    
pInfo[playerid][Linguagem] = 0,
    
pInfo[playerid][Sexo] = 0,
    
pInfo[playerid][Idade] = 0,
    
pInfo[playerid][Dia_Nascimento] = 0,
    
pInfo[playerid][Mes_Nascimento] = 0,
    
pInfo[playerid][Ano_Nascimento] = 0;
}
static 
PlayerName(playerid)
{
    new 
Nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridNome20);
    return 
Nome;

Reply


Messages In This Thread
GameMode Base Inglкs/Portuguкs - by GuiKommander - 04.03.2018, 22:10
Re: GameMode Base Inglкs/Portuguкs - by KoloradO - 05.03.2018, 00:28
Re: GameMode Base Inglкs/Portuguкs - by GuiKommander - 05.03.2018, 00:35
Re: GameMode Base Inglкs/Portuguкs - by F1N4L - 05.03.2018, 10:47
Re: GameMode Base Inglкs/Portuguкs - by GuiKommander - 05.03.2018, 13:51
Re: GameMode Base Inglкs/Portuguкs - by SpikeCompiler - 05.03.2018, 14:44
Re: GameMode Base Inglкs/Portuguкs - by PT - 05.03.2018, 20:57
Re: GameMode Base Inglкs/Portuguкs - by GuiKommander - 05.03.2018, 21:34
Re: GameMode Base Inglкs/Portuguкs - by GuiKommander - 05.03.2018, 21:36

Forum Jump:


Users browsing this thread: 3 Guest(s)