SA-MP Forums Archive
[AJUDA]Alterar Registro de "arquivo" para "ini" - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA]Alterar Registro de "arquivo" para "ini" (/showthread.php?tid=260703)



[AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 10.06.2011

Olб galera gostaria de saber como faзo para trocar o meu registro do formato arquivo para ini

Porfavor peзo muito a ajuda de vocкs sу falta resolver esse problema para mim poder botar o sistema de salvamento.

No aguardo, e agredeзo quem puder ajudar, para que nгo puder ajudar agradeзo tambйm!

Code:
// === [Register] ===
new PlayerName[24];
    GetPlayerName(playerid, PlayerName, 30);
        if(strcmp(cmd, "/registrar", true) == 0)
        {
            tmp = strtok(cmdtext, idx);
                GetPlayerName(playerid, playername, sizeof(playername));
        if(20 < strlen(tmp) || strlen(tmp) < 4)
                {
                        SendClientMessage(playerid, COLOR_CYAN, "[RTX] INFORMA: Sua senha tem que ter mais de 4 e menos de 20 letras/nъmeros!");
                        return 1;
                }
            if(!strlen(tmp))
            {
                        SendClientMessage(playerid, COLOR_CYAN, "Uso correto: /registrar [senha] ~ Vai fazer com que vocк fique registrado com o server e seus stats sejam salvos!");
                }
                else
                {
                        if (!dini_Exists(udb_encode(playername)))
                        {
                                dini_Create(udb_encode(playername));
                                dini_IntSet(udb_encode(playername), "pass", udb_hash(tmp));
                                dini_Set(udb_encode(playername),"senha",tmp);
                        PlayerInfo[playerid][pAdmin] = 0;
                        PlayerInfo[playerid][pVIP] = 0;
                        PlayerInfo[playerid][pADA] = 0;
                        PlayerInfo[playerid][pTCP] = 0;
                        PlayerInfo[playerid][pPCC] = 0;
                        PlayerInfo[playerid][pRRB] = 0;
                        PlayerInfo[playerid][pEX] = 0;
                        PlayerInfo[playerid][pBOPE] = 0;
                        PlayerInfo[playerid][pGOE] = 0;
                        PlayerInfo[playerid][pCV] = 0;
                        dini_IntSet(udb_encode(playername), "level", PlayerInfo[playerid][pAdmin]);
                        dini_IntSet(udb_encode(playername), "levelvip", PlayerInfo[playerid][pVIP]);
                        dini_IntSet(udb_encode(playername), "levelada", PlayerInfo[playerid][pADA]);
                        dini_IntSet(udb_encode(playername), "leveltcp", PlayerInfo[playerid][pTCP]);
                        dini_IntSet(udb_encode(playername), "levelbope", PlayerInfo[playerid][pBOPE]);
                        dini_IntSet(udb_encode(playername), "levelex", PlayerInfo[playerid][pEX]);
                        dini_IntSet(udb_encode(playername), "levelpcc", PlayerInfo[playerid][pPCC]);
                        dini_IntSet(udb_encode(playername), "levelrrb", PlayerInfo[playerid][pRRB]);
                        dini_IntSet(udb_encode(playername), "levelgoe", PlayerInfo[playerid][pGOE]);
                        dini_IntSet(udb_encode(playername), "levelcv", PlayerInfo[playerid][pCV]);
                        format(string, sizeof(string), "%s(%i) registrado com a senha \"%s\"", playername, playerid, tmp);
                                printf(string);
                                format(string, sizeof(string), "Vocк criou a conta %s com a senha \"%s\". Nгo se esqueзa da sua senha!", playername, tmp);
                                SendClientMessage(playerid, COLOR_CYAN, string);
                                PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
                                ShowPlayerDialog(playerid, 60, DIALOG_STYLE_LIST, "Bem vindo(a), escolha uma facзгo", "Comando Vermelho - [CV]\nAmigos dos Amigos - [ADA]\nTerceiro Comando Puro - [TCP]\nPrimeiro Comando da Capital - [PCC]", "Selecionar", "");
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_YELLOW, "[RTX] INFORMA: Um erro aconteceu enquanto tentava se registrar ao server, vaza fakes!");
                                format(string, sizeof(string), "[RTX] INFORMA: O nick %s jб й registrado nesse server!", playername,tmp);
                                SendClientMessage(playerid, COLOR_YELLOW, string);
                        }
                }

                return 1;
        }
// === [Login] ===
        if(strcmp(cmd, "/login", true) == 0)
        {
  if(logged[playerid] == 1)
                {
                    SendClientMessage(playerid, COLOR_CYAN, "Vocк jб estб logado!");
                    return 1;
                }
  tmp = strtok(cmdtext, idx);
                         GetPlayerName(playerid, playername, sizeof(playername));
            if(!strlen(tmp))
            {
                        SendClientMessage(playerid, COLOR_GREEN, "Uso correto: [senha]");
                }
                else
                {
                        if(dini_Exists(udb_encode(playername)))
                        {
                            if(logged[playerid] == 0)
                            {
                                        tmp2 = dini_Get(udb_encode(playername), "pass");
                                        if(udb_hash(tmp) != strval(tmp2))
                                        {
                                            new PlayerName[24];
                                            GetPlayerName(playerid, PlayerName, 30);
                                            format(string, sizeof(string), "Erro! Vocк digitou a senha errada para %s!", PlayerName);
                                            SendClientMessage(playerid, COLOR_RED, string);
                                        }
                                        else
                                        {
                                            new pname[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
                                                logged[playerid] = 1;
                                                logado[playerid] = 1;
                                                dini_Set(udb_encode(playername),"senha",tmp);
                                PlayerInfo[playerid][pAdmin] = dini_Int(udb_encode(playername), "level");
                                PlayerInfo[playerid][pPMs] = dini_Int(udb_encode(playername), "SeePMs");
                                PlayerInfo[playerid][pVIP] = dini_Int(udb_encode(playername), "levelvip");
                                PlayerInfo[playerid][pADA] = dini_Int(udb_encode(playername), "levelada");
                                PlayerInfo[playerid][pTCP] = dini_Int(udb_encode(playername), "leveltcp");
                                PlayerInfo[playerid][pBOPE] = dini_Int(udb_encode(playername), "levelbope");
                                PlayerInfo[playerid][pEX] = dini_Int(udb_encode(playername), "levelex");
                                PlayerInfo[playerid][pPCC] = dini_Int(udb_encode(playername), "levelpcc");
                                PlayerInfo[playerid][pRRB] = dini_Int(udb_encode(playername), "levelrrb");
                                PlayerInfo[playerid][pGOE] = dini_Int(udb_encode(playername), "levelgoe");
                                PlayerInfo[playerid][pCV] = dini_Int(udb_encode(playername), "levelcv");

                                GameTextForPlayer(playerid, "~G~ LOGADO COM SUCESSO!",2000,1);
                                PlayerPlaySound(playerid,1057,0.0,0.0,0.0);

                       if(PlayerInfo[playerid][pAdmin] == 0)
                                {
                                    new PlayerName[24];
                                                GetPlayerName(playerid, PlayerName, 30);
                                                format(string, sizeof(string), "Logado como: %s", PlayerName);
                                                format(string, sizeof(string), "--------------------------");
                                                format(string, sizeof(string), "Membro Normal");
                                                SendClientMessage(playerid, COLOR_BLUE, string);

                                                }



Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - Macintosh - 10.06.2011

Basta vocк colocar no final do arquivo quando for carregar e quando for salvб-lo a terminaзгo .ini. Exemplo: 'arquivo.ini'


Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 10.06.2011

Aoonde troco no CODE Shickcard?


Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - [S]trong - 10.06.2011

tente

pawn Code:
#define Accounts Accounts/%s.ini

if(strcmp(cmd, "/registrar", true) == 0)
{
    new Account[40],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Name,sizeof(Name));
    format(Account,sizeof(Account),Accounts,Name);
    tmp = strtok(cmdtext, idx);
    if (!dini_Exists(udb_encode(Account)))
    {
        return SendClientMessage(playerid,-1,"Error:Conta jб cadastrada.");
    }
    if(20 < strlen(tmp) || strlen(tmp) < 4)
    {
        return SendClientMessage(playerid, COLOR_CYAN, "[RTX] INFORMA: Sua senha tem que ter mais de 4 e menos de 20 letras/nъmeros!");
    }
    else if(!strlen(tmp))
    {
        return SendClientMessage(playerid, COLOR_CYAN, "Uso correto: /registrar [senha] ~ Vai fazer com que vocк fique registrado com o server e seus stats sejam salvos!");
    }
    else
    {
        dini_Create(udb_encode(Account));
        dini_IntSet(udb_encode(Account),"pass",udb_hash(tmp));
        dini_Set(udb_encode(Account),"senha",tmp);
        PlayerInfo[playerid][pAdmin] = 0;
        PlayerInfo[playerid][pVIP] = 0;
        PlayerInfo[playerid][pADA] = 0;
        PlayerInfo[playerid][pTCP] = 0;
        PlayerInfo[playerid][pPCC] = 0;
        PlayerInfo[playerid][pRRB] = 0;
        PlayerInfo[playerid][pEX] = 0;
        PlayerInfo[playerid][pBOPE] = 0;
        PlayerInfo[playerid][pGOE] = 0;
        PlayerInfo[playerid][pCV] = 0;
        format(string, sizeof(string), "%s(%i) registrado com a senha \"%s\"",Name,playerid,tmp);
        printf(string);
        format(string, sizeof(string), "Vocк criou a conta %s com a senha \"%s\". Nгo se esqueзa da sua senha!",Name,tmp);
        SendClientMessage(playerid, COLOR_CYAN, string);
        PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
        ShowPlayerDialog(playerid, 60, DIALOG_STYLE_LIST, "Bem vindo(a), escolha uma facзгo", "Comando Vermelho - [CV]\nAmigos dos Amigos - [ADA]\nTerceiro Comando Puro - [TCP]\nPrimeiro Comando da Capital - [PCC]", "Selecionar", "");
    }
    return true;
}
else if(strcmp(cmd, "/login", true) == 0)
{
    new Account[40],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Name,sizeof(Name));
    format(Account,sizeof(Account),Accounts,Name);
    tmp = strtok(cmdtext, idx);
    if(logged[playerid] == 1)
    {
        return SendClientMessage(playerid, COLOR_CYAN, "Vocк jб estб logado!");
    }
    if(!strlen(tmp))
    {
        return SendClientMessage(playerid, COLOR_GREEN, "Uso correto: [senha]");
    }
    else if(dini_Exists(udb_encode(Account)))
    {
        if(udb_hash(tmp) != dini_Get(udb_encode(Account),"pass"))
        {
            SendClientMessage(playerid,-1,"Error: Senha incorreta.");
        }
        else
        {
            logged[playerid] = 1;
            logado[playerid] = 1;
            dini_Set(udb_encode(Account),"senha",tmp);
            PlayerInfo[playerid][pAdmin] = dini_Int(udb_encode(Account),"level");
            PlayerInfo[playerid][pPMs] = dini_Int(udb_encode(Account),"SeePMs");
            PlayerInfo[playerid][pVIP] = dini_Int(udb_encode(Account),"levelvip");
            PlayerInfo[playerid][pADA] = dini_Int(udb_encode(Account),"levelada");
            PlayerInfo[playerid][pTCP] = dini_Int(udb_encode(Account),"leveltcp");
            PlayerInfo[playerid][pBOPE] = dini_Int(udb_encode(Account),"levelbope");
            PlayerInfo[playerid][pEX] = dini_Int(udb_encode(Account),"levelex");
            PlayerInfo[playerid][pPCC] = dini_Int(udb_encode(Account),"levelpcc");
            PlayerInfo[playerid][pRRB] = dini_Int(udb_encode(Account),"levelrrb");
            PlayerInfo[playerid][pGOE] = dini_Int(udb_encode(Account),"levelgoe");
            PlayerInfo[playerid][pCV] = dini_Int(udb_encode(Account),"levelcv");
            GameTextForPlayer(playerid, "~G~ LOGADO COM SUCESSO!",2000,1);
            PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
            if(PlayerInfo[playerid][pAdmin] == 0)
            {
                SendClientMessage(playerid,COLOR_BLUE,"--------------------------");
                SendClientMessage(playerid,COLOR_BLUE,"Membro Normal");
                format(string,sizeof(string),"Logado como: %s",Name);
                SendClientMessage(playerid,COLOR_BLUE,string);
            }
    }
    return true;
}
e crie a pasta Accounts, caso queira sem pasta basta mudar o
pawn Code:
#define Accounts
para
pawn Code:
#define Accounts %s.ini



Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 11.06.2011

Na hora que compilo o Pawno nгo estб respondendo :S


Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 11.06.2011

UP AК ! PLEASE !


Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - [S]trong - 11.06.2011

tente,
pawn Code:
if(strcmp(cmd, "/login", true) == 0)
{
    new Account[40],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Name,sizeof(Name));
    format(Account,sizeof(Account),Accounts,Name);
    tmp = strtok(cmdtext, idx);
    if(logged[playerid] == 1)
    {
        return SendClientMessage(playerid, COLOR_CYAN, "Vocк jб estб logado!");
    }
    if(!strlen(tmp))
    {
        return SendClientMessage(playerid, COLOR_GREEN, "Uso correto: [senha]");
    }
    else if(dini_Exists(udb_encode(Account)))
    {
        if(udb_hash(tmp) != dini_Get(udb_encode(Account),"pass"))
        {
            SendClientMessage(playerid,-1,"Error: Senha incorreta.");
        }
        else
        {
            logged[playerid] = 1;
            logado[playerid] = 1;
            dini_Set(udb_encode(Account),"senha",tmp);
            PlayerInfo[playerid][pAdmin] = dini_Int(udb_encode(Account),"level");
            PlayerInfo[playerid][pPMs] = dini_Int(udb_encode(Account),"SeePMs");
            PlayerInfo[playerid][pVIP] = dini_Int(udb_encode(Account),"levelvip");
            PlayerInfo[playerid][pADA] = dini_Int(udb_encode(Account),"levelada");
            PlayerInfo[playerid][pTCP] = dini_Int(udb_encode(Account),"leveltcp");
            PlayerInfo[playerid][pBOPE] = dini_Int(udb_encode(Account),"levelbope");
            PlayerInfo[playerid][pEX] = dini_Int(udb_encode(Account),"levelex");
            PlayerInfo[playerid][pPCC] = dini_Int(udb_encode(Account),"levelpcc");
            PlayerInfo[playerid][pRRB] = dini_Int(udb_encode(Account),"levelrrb");
            PlayerInfo[playerid][pGOE] = dini_Int(udb_encode(Account),"levelgoe");
            PlayerInfo[playerid][pCV] = dini_Int(udb_encode(Account),"levelcv");
            GameTextForPlayer(playerid, "~G~ LOGADO COM SUCESSO!",2000,1);
            PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
            if(PlayerInfo[playerid][pAdmin] == 0)
            {
                SendClientMessage(playerid,COLOR_BLUE,"--------------------------");
                SendClientMessage(playerid,COLOR_BLUE,"Membro Normal");
                format(string,sizeof(string),"Logado como: %s",Name);
                SendClientMessage(playerid,COLOR_BLUE,string);
            }
        }
    }
    return true;
}



Respuesta: [AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 11.06.2011

deu mesmo problema :S


Re: [AJUDA]Alterar Registro de "arquivo" para "ini" - [S]trong - 11.06.2011

bom cara testei e nгo travou o compilador, mas bбsicamente й pegar seu cуdigo antigo e trocar o playername por uma format com o nome do jogador +.ini no final exemplo %s.ini ou digamos que o nick do maloqueiro seja Damares, ficando Damares.ini ....


Respuesta: [AJUDA]Alterar Registro de "arquivo" para "ini" - Nake01 - 11.06.2011

Porfavor ajudem :S