[Ajuda] DOF2
#1

oi, estou comeзando a programar pawn e entгo procurei por algum tutorial de registro e entгo achei usando DOF2
tentei fazer mas algo da errado ele compila tudo ok mais nгo cria o arquivo .ini do player tambйm nгo spawna o player.
tentei olhar vбrios tutoriais aqui mais a maioria й antigo e nгo funciona "corretamente" de modo que eu entenda pois cada tutorial й algo diferente sei lб :\. entгo estou pedindo ajuda aqui se alguйm puder ajudar agradeзo
e se alguйm quiser me recomendar alguma outra include para sistemas de salvamento й sу colocar aqui na thread mas nгo algo como MySql pois й bem complexo mais ainda estou no level iniciante...
pawn Код:
enum pInfo
{
    pMoney,
    pAdmin,
    pDeaths,
    pKills
}
new PlayerInfo[MAX_PLAYERS][pInfo];

main()
{

}
public OnGameModeInit()
{

    return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
    return 1;
}
public OnPlayerConnect(playerid)
{
    new file[70], name[32];
    GetPlayerName(playerid, file, sizeof(file));
    format(file, sizeof(file), "Contas/%s.ini", name);
    if(DOF2_FileExists(file))
    {
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Bem Vindo novamente para se logar digite sua senha", "Logar-se", "Sair");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Olб, seja bem vindo ao servidor digite uma senha para se registrar-se", "Registra-se", "Sair");
    }
    return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
    new file[64], name[32];
    GetPlayerName(playerid,file,sizeof(file));
    format(file, sizeof(file), "Contas/%s.ini", name);
    DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]);
    DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
    DOF2_SetInt(file, "Money",PlayerInfo[playerid][pMoney]);
    DOF2_SetInt(file, "AdminLevel",PlayerInfo[playerid][pAdmin]);
    return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
    PlayerInfo[killerid][pKills]++;
    PlayerInfo[playerid][pDeaths]++;
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)
    {
        case DIALOG_REGISTER:
        {
            if(!response) Kick(playerid);
            if(!strlen(inputtext))
            if(response)
            {
                new  file[70], name[32];
                GetPlayerName(playerid, file, sizeof(file));
                format(file, sizeof(file), "Contas/%s.ini", name);
                DOF2_CreateFile(file, inputtext);
                DOF2_SetInt(file, "Kills", 0);
                DOF2_SetInt(file, "Deaths", 0);
                DOF2_SetInt(file, "Admin", 0);
                DOF2_SetInt(file, "Money", 1000);
                DOF2_SaveFile();
                SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                SpawnPlayer(playerid);
             }
        }
        case DIALOG_LOGIN:
        {
            if(!response) Kick(playerid);
            if(response)
            {
                new file[64], name[32];
                GetPlayerName(playerid, file, sizeof(file));
                format(file, sizeof(file), "Contas/%s.ini", name);
                if(DOF2_FileExists(file))
                {
                    if(DOF2_CheckLogin(file,inputtext))
                    {
                        PlayerInfo[playerid][pMoney] = DOF2_GetInt(file, "Money");
                        PlayerInfo[playerid][pKills] = DOF2_GetInt(file, "Kills");
                        PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file, "Deaths");
                        PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file, "Admin");
                        SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                        SpawnPlayer(playerid);
                        GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
                        return 1;
                    }
                    else
                    {
                        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Vocк errou sua senha tente novamente", "Logar-se", "Sair");
                        return 1;
                    }
                 }
            }
         }
    }
    return 1;
}
Reply
#2

Olha aq
https://sampforum.blast.hk/showthread.php?tid=448081

Eu aprendi com esse, e agora o meu ja pode se registrar com letras e numeros sem erros ^^

Espero que seja ъtil pra vc como foi pra min
Reply
#3

PHP код:
enum pInfo
{
    
pMoney,
    
pAdmin,
    
pDeaths,
    
pKills,
    
pSenha
}
new 
PlayerInfo[MAX_PLAYERS][pInfo];
main()
{
}
public 
OnGameModeInit()
{
    return 
1;
}
public 
OnGameModeExit()
{
    
DOF2_Exit();
    return 
1;
}
public 
OnPlayerConnect(playerid)
{
    new 
file[70], name[32];
    
GetPlayerName(playeridnamesizeof(name));
    
format(filesizeof(file), "Contas/%s.ini"name);
    if(
DOF2_FileExists(file))
    {
        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"LOGIN""Bem Vindo novamente para se logar digite sua senha""Logar-se""Sair");
    }
    else
    {
        
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Olб, seja bem vindo ao servidor digite uma senha para se registrar-se""Registra-se""Sair");
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
file[64], name[32];
    
GetPlayerName(playeridnamesizeof(name));
    
format(filesizeof(file), "Contas/%s.ini"name);
    if(
DOF2_FileExists(file))
    {
        
DOF2_SetInt(file"Kills",PlayerInfo[playerid][pKills]);
        
DOF2_SetInt(file"Deaths",PlayerInfo[playerid][pDeaths]);
        
DOF2_SetInt(file"Money",PlayerInfo[playerid][pMoney]);
        
DOF2_SetInt(file"Admin",PlayerInfo[playerid][pAdmin]);
        
DOF2_SaveFile();
    }
    return 
1;
}
public 
OnPlayerDeath(playeridkilleridreason)
{
    
PlayerInfo[killerid][pKills]++;
    
PlayerInfo[playerid][pDeaths]++;
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch(
dialogid)
    {
        case 
DIALOG_REGISTER:
        {
            if(!
strval(inputtext))
            {
                 
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Status da conta : Nгo Registrada\n digite uma senha para se registrar!""Registrar""Sair");
                  
SendClientMessage(playerid, -1"[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                return 
1;
            }
            if(!
response) return Kick(playerid);
            else
            {
                new  
file[70], name[32];
                
GetPlayerName(playeridnamesizeof(name));
                
format(filesizeof(file), "Contas/%s.ini"name);
                
PlayerInfo[playerid][pSenha] = strval(inputtext);
                
DOF2_CreateFile(file);
                
DOF2_SetInt(file"Senha"PlayerInfo[playerid][pSenha]);
                
DOF2_SetInt(file"Kills"0);
                
DOF2_SetInt(file"Deaths"0);
                
DOF2_SetInt(file"Admin"0);
                
DOF2_SetInt(file"Money"0);
                
GivePlayerMoney(playerid1000);
                
DOF2_SaveFile();
                 
SetSpawnInfo(playerid001112.1842,-1434.9047,15.7981,148.2633000000);
                 
SpawnPlayer(playerid);
             }
        }
        case 
DIALOG_LOGIN:
        {
            if(!
responseKick(playerid);
            else
            {
                new 
file[70];
                
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file"Senha");
                if(
strval(inputtext) == PlayerInfo[playerid][pSenha])
                {
                
                       
PlayerInfo[playerid][pMoney] = DOF2_GetInt(file"Money");
                    
PlayerInfo[playerid][pKills] = DOF2_GetInt(file"Kills");
                    
PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file"Deaths");
                    
PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file"Admin");
                    
SetSpawnInfo(playerid001112.1842,-1434.9047,15.7981,148.2633000000);
                    
SpawnPlayer(playerid);
                    
GivePlayerMoney(playeridPlayerInfo[playerid][pMoney]);
                       return 
1;
                   }
                    else
                    {
                        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"LOGIN""Vocк errou sua senha tente novamente""Logar-se""Sair");
                        return 
1;
                    }
                 }
               }
         }
    return 
1;

e entгo o source ficou assim resolveu 90% dos meus problemas agora o problema й que quando eu digito a senha para logar nгo bate com a senha do .ini e o dinheiro nгo ta setando na hr que eu deslogo fica 0
Reply
#4

Tira o return 1 logo apуs o GivePlayerMoney.
Reply
#5

Quote:
Originally Posted by K1w0
Посмотреть сообщение
PHP код:
enum pInfo
{
    
pMoney,
    
pAdmin,
    
pDeaths,
    
pKills,
    
pSenha
}
new 
PlayerInfo[MAX_PLAYERS][pInfo];
main()
{
}
public 
OnGameModeInit()
{
    return 
1;
}
public 
OnGameModeExit()
{
    
DOF2_Exit();
    return 
1;
}
public 
OnPlayerConnect(playerid)
{
    new 
file[70], name[32];
    
GetPlayerName(playeridnamesizeof(name));
    
format(filesizeof(file), "Contas/%s.ini"name);
    if(
DOF2_FileExists(file))
    {
        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"LOGIN""Bem Vindo novamente para se logar digite sua senha""Logar-se""Sair");
    }
    else
    {
        
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Olб, seja bem vindo ao servidor digite uma senha para se registrar-se""Registra-se""Sair");
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
file[64], name[32];
    
GetPlayerName(playeridnamesizeof(name));
    
format(filesizeof(file), "Contas/%s.ini"name);
    if(
DOF2_FileExists(file))
    {
        
DOF2_SetInt(file"Kills",PlayerInfo[playerid][pKills]);
        
DOF2_SetInt(file"Deaths",PlayerInfo[playerid][pDeaths]);
        
DOF2_SetInt(file"Money",PlayerInfo[playerid][pMoney]);
        
DOF2_SetInt(file"Admin",PlayerInfo[playerid][pAdmin]);
        
DOF2_SaveFile();
    }
    return 
1;
}
public 
OnPlayerDeath(playeridkilleridreason)
{
    
PlayerInfo[killerid][pKills]++;
    
PlayerInfo[playerid][pDeaths]++;
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch(
dialogid)
    {
        case 
DIALOG_REGISTER:
        {
            if(!
strval(inputtext))
            {
                 
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Status da conta : Nгo Registrada\n digite uma senha para se registrar!""Registrar""Sair");
                  
SendClientMessage(playerid, -1"[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                return 
1;
            }
            if(!
response) return Kick(playerid);
            else
            {
                new  
file[70], name[32];
                
GetPlayerName(playeridnamesizeof(name));
                
format(filesizeof(file), "Contas/%s.ini"name);
                
PlayerInfo[playerid][pSenha] = strval(inputtext);
                
DOF2_CreateFile(file);
                
DOF2_SetInt(file"Senha"PlayerInfo[playerid][pSenha]);
                
DOF2_SetInt(file"Kills"0);
                
DOF2_SetInt(file"Deaths"0);
                
DOF2_SetInt(file"Admin"0);
                
DOF2_SetInt(file"Money"0);
                
GivePlayerMoney(playerid1000);
                
DOF2_SaveFile();
                 
SetSpawnInfo(playerid001112.1842,-1434.9047,15.7981,148.2633000000);
                 
SpawnPlayer(playerid);
             }
        }
        case 
DIALOG_LOGIN:
        {
            if(!
responseKick(playerid);
            else
            {
                new 
file[70];
                
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file"Senha");
                if(
strval(inputtext) == PlayerInfo[playerid][pSenha])
                {
                
                       
PlayerInfo[playerid][pMoney] = DOF2_GetInt(file"Money");
                    
PlayerInfo[playerid][pKills] = DOF2_GetInt(file"Kills");
                    
PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file"Deaths");
                    
PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file"Admin");
                    
SetSpawnInfo(playerid001112.1842,-1434.9047,15.7981,148.2633000000);
                    
SpawnPlayer(playerid);
                    
GivePlayerMoney(playeridPlayerInfo[playerid][pMoney]);
                       return 
1;
                   }
                    else
                    {
                        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD"LOGIN""Vocк errou sua senha tente novamente""Logar-se""Sair");
                        return 
1;
                    }
                 }
               }
         }
    return 
1;

e entгo o source ficou assim resolveu 90% dos meus problemas agora o problema й que quando eu digito a senha para logar nгo bate com a senha do .ini e o dinheiro nгo ta setando na hr que eu deslogo fica 0
pawn Код:
enum pInfo
{
    pMoney,
    pAdmin,
    pDeaths,
    pKills,
    pSenha
}
new PlayerInfo[MAX_PLAYERS][pInfo];

main()
{

}
public OnGameModeInit()
{

    return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
    return 1;
}
public OnPlayerConnect(playerid)
{
    new file[70], name[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), "Contas/%s.ini", name);
    if(DOF2_FileExists(file))
    {
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Bem Vindo novamente para se logar digite sua senha", "Logar-se", "Sair");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Olб, seja bem vindo ao servidor digite uma senha para se registrar-se", "Registra-se", "Sair");
    }
    return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
    new file[64], name[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), "Contas/%s.ini", name);
    if(DOF2_FileExists(file))
    {
        DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]);
        DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
        DOF2_SetInt(file, "Money",GetPlayerMoney(playerid));
        DOF2_SetInt(file, "Admin",PlayerInfo[playerid][pAdmin]);
        DOF2_SaveFile();
    }
    return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
    PlayerInfo[killerid][pKills]++;
    PlayerInfo[playerid][pDeaths]++;
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)
    {
        case DIALOG_REGISTER:
        {
            if(!strval(inputtext))
            {
                 ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Status da conta : Nгo Registrada\n digite uma senha para se registrar!", "Registrar", "Sair");
                  SendClientMessage(playerid, -1, "[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                return 1;
            }
            if(!response) return Kick(playerid);
            else
            {
                new  file[70], name[32];
                GetPlayerName(playerid, name, sizeof(name));
                format(file, sizeof(file), "Contas/%s.ini", name);
                PlayerInfo[playerid][pSenha] = strval(inputtext);
                DOF2_CreateFile(file);
                DOF2_SetInt(file, "Senha", PlayerInfo[playerid][pSenha]);
                DOF2_SetInt(file, "Kills", 0);
                DOF2_SetInt(file, "Deaths", 0);
                DOF2_SetInt(file, "Admin", 0);
                DOF2_SetInt(file, "Money", 0);
                GivePlayerMoney(playerid, 1000);
                DOF2_SaveFile();
                 SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                 SpawnPlayer(playerid);
             }
        }
        case DIALOG_LOGIN:
        {
            if(!response) Kick(playerid);
            else
            {
                new file[70], name[31];
                GetPlayerName(playerid, name, sizeof(name));
                format(file, sizeof(file), "Contas/%s.ini", name);
                PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha");
                if(strval(inputtext) == PlayerInfo[playerid][pSenha])
                {
                 
                       PlayerInfo[playerid][pMoney] = DOF2_GetInt(file, "Money");
                    PlayerInfo[playerid][pKills] = DOF2_GetInt(file, "Kills");
                    PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file, "Deaths");
                    PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file, "Admin");
                    SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                    SpawnPlayer(playerid);
                    GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
                       return 1;
                   }
                    else
                    {
                        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Vocк errou sua senha tente novamente", "Logar-se", "Sair");
                        return 1;
                    }
                 }
               }
         }
    return 1;
}
Nгo testei, se der algum erro posta aqui pra mim ver. Abraзos.
Reply
#6

Quote:
Originally Posted by xCR7
Посмотреть сообщение
Tira o return 1 logo apуs o GivePlayerMoney.
A returnagem nesse caso nгo tem nada a ver, o que tinha de errado й que ele estava salvando errado o dinheiro, ele salvava a partir de uma variavel (que estava vazia ou 0) o que eu fiz foi getar a grana que o player tinha na hora do salvamento da conta. Й mais rбpido, prбtico e funcional

@Desculpem Double Post.
Reply
#7

Quote:
Originally Posted by Duduloch
Посмотреть сообщение
pawn Код:
enum pInfo
{
    pMoney,
    pAdmin,
    pDeaths,
    pKills,
    pSenha
}
new PlayerInfo[MAX_PLAYERS][pInfo];

main()
{

}
public OnGameModeInit()
{

    return 1;
}

public OnGameModeExit()
{
    DOF2_Exit();
    return 1;
}
public OnPlayerConnect(playerid)
{
    new file[70], name[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), "Contas/%s.ini", name);
    if(DOF2_FileExists(file))
    {
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Bem Vindo novamente para se logar digite sua senha", "Logar-se", "Sair");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Olб, seja bem vindo ao servidor digite uma senha para se registrar-se", "Registra-se", "Sair");
    }
    return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
    new file[64], name[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), "Contas/%s.ini", name);
    if(DOF2_FileExists(file))
    {
        DOF2_SetInt(file, "Kills",PlayerInfo[playerid][pKills]);
        DOF2_SetInt(file, "Deaths",PlayerInfo[playerid][pDeaths]);
        DOF2_SetInt(file, "Money",GetPlayerMoney(playerid));
        DOF2_SetInt(file, "Admin",PlayerInfo[playerid][pAdmin]);
        DOF2_SaveFile();
    }
    return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
    PlayerInfo[killerid][pKills]++;
    PlayerInfo[playerid][pDeaths]++;
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)
    {
        case DIALOG_REGISTER:
        {
            if(!strval(inputtext))
            {
                 ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "REGISTRO", "Status da conta : Nгo Registrada\n digite uma senha para se registrar!", "Registrar", "Sair");
                  SendClientMessage(playerid, -1, "[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                return 1;
            }
            if(!response) return Kick(playerid);
            else
            {
                new  file[70], name[32];
                GetPlayerName(playerid, name, sizeof(name));
                format(file, sizeof(file), "Contas/%s.ini", name);
                PlayerInfo[playerid][pSenha] = strval(inputtext);
                DOF2_CreateFile(file);
                DOF2_SetInt(file, "Senha", PlayerInfo[playerid][pSenha]);
                DOF2_SetInt(file, "Kills", 0);
                DOF2_SetInt(file, "Deaths", 0);
                DOF2_SetInt(file, "Admin", 0);
                DOF2_SetInt(file, "Money", 0);
                GivePlayerMoney(playerid, 1000);
                DOF2_SaveFile();
                 SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                 SpawnPlayer(playerid);
             }
        }
        case DIALOG_LOGIN:
        {
            if(!response) Kick(playerid);
            else
            {
                new file[70], name[31];
                GetPlayerName(playerid, name, sizeof(name));
                format(file, sizeof(file), "Contas/%s.ini", name);
                PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha");
                if(strval(inputtext) == PlayerInfo[playerid][pSenha])
                {
                 
                       PlayerInfo[playerid][pMoney] = DOF2_GetInt(file, "Money");
                    PlayerInfo[playerid][pKills] = DOF2_GetInt(file, "Kills");
                    PlayerInfo[playerid][pDeaths] = DOF2_GetInt(file, "Deaths");
                    PlayerInfo[playerid][pAdmin] = DOF2_GetInt(file, "Admin");
                    SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
                    SpawnPlayer(playerid);
                    GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
                       return 1;
                   }
                    else
                    {
                        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "LOGIN", "Vocк errou sua senha tente novamente", "Logar-se", "Sair");
                        return 1;
                    }
                 }
               }
         }
    return 1;
}
Nгo testei, se der algum erro posta aqui pra mim ver. Abraзos.
pawn Код:
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha");
A senha nгo й sу nъmeros, contйm letras tambйm, entгo estб errado usar DOF2_GetInt, deve se usar DOF2_GetString e usar o format.
pawn Код:
format(PlayerInfo[playerid][pSenha], 30, "%s" DOF2_GetString(file, "Senha"));
Reply
#8

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
pawn Код:
PlayerInfo[playerid][pSenha] = DOF2_GetInt(file, "Senha");
A senha nгo й sу nъmeros, contйm letras tambйm, entгo estб errado usar DOF2_GetInt, deve se usar DOF2_GetString e usar o format.
pawn Код:
format(PlayerInfo[playerid][pSenha], 30, "%s" DOF2_GetString(file, "Senha"));
Nгo prestei atenзгo no detalhe, obg pela correзгo
Reply
#9

multikill combat arms ? kk
bom multi kill
substitui do jeito que vocк falou
PHP код:
format(PlayerInfo[playerid][pSenha], 30"%s" DOF2_GetString(file"Senha")); 
ali atй faltou uma virgula jб arrumei
sу que tipo ele sу registra se for nъmeros nй conforme o tutorial do Arthur me recomendou eu queria retirar
creio que й aqui
PHP код:
 if(!strval(inputtext))
            {
                 
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Status da conta : Nгo Registrada\n digite uma senha para se registrar!""Registrar""Sair");
                 
SendClientMessage(playerid, -1"[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                 return 
1;
            } 
porйm jб tirei sу que ele registra apenas o valor 0 mesmo sу colocando nъmero se eu coloco a funзгo ele registra a senha corretamente sу que apenas com nъmeros e eu queria usar letras tambйm alguma ideia... coisa boba o erro de antes sу nгo tinha prestado atenзгo x.x
Reply
#10

Quote:
Originally Posted by K1w0
Посмотреть сообщение
multikill combat arms ? kk
bom multi kill
substitui do jeito que vocк falou
PHP код:
format(PlayerInfo[playerid][pSenha], 30"%s" DOF2_GetString(file"Senha")); 
ali atй faltou uma virgula jб arrumei
sу que tipo ele sу registra se for nъmeros nй conforme o tutorial do Arthur me recomendou eu queria retirar
creio que й aqui
PHP код:
 if(!strval(inputtext))
            {
                 
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD"REGISTRO""Status da conta : Nгo Registrada\n digite uma senha para se registrar!""Registrar""Sair");
                 
SendClientMessage(playerid, -1"[REGISTRO] Erro, Digite apenas nъmeros para se registrar.");
                 return 
1;
            } 
porйm jб tirei sу que ele registra apenas o valor 0 mesmo sу colocando nъmero se eu coloco a funзгo ele registra a senha corretamente sу que apenas com nъmeros e eu queria usar letras tambйm alguma ideia... coisa boba o erro de antes sу nгo tinha prestado atenзгo x.x
Conseguiu arrumar com a minha forma ?

Para utilizar letras na senha utilize a seguinte lуgica:

pawn Код:
new senha[31];
format(senha, sizeof(senha), "%s", inputtext);
PlayerInfo[playerid][pSenha] = senha;

adaptando no seu cуdigo:

pawn Код:
case DIALOG_REGISTER:
{
    if(strlen(inputtext) ==0) return SendClientMessage(playerid, -1, "Digite uma senha!");
    new  file[70], name[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(PlayerInfo[playerid][pSenha], 30, "%s", inputtext);
    DOF2_CreateFile(file);
    DOF2_SetString(file, "Senha", PlayerInfo[playerid][pSenha]);
    DOF2_SetInt(file, "Kills", 0);
    DOF2_SetInt(file, "Deaths", 0);
    DOF2_SetInt(file, "Admin", 0);
    DOF2_SetInt(file, "Money", 0);
    GivePlayerMoney(playerid, 1000);
    DOF2_SaveFile();
    SetSpawnInfo(playerid, 0, 0, 1112.1842,-1434.9047,15.7981,148.2633, 0, 0, 0, 0, 0, 0);
    SpawnPlayer(playerid);
}

abraзo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)