[Ajuda] Como usar DOF2
#1

Alguйm sabe como LER um ficheiro com o DOF2? Nгo consigo. Jб tentei tudo e nada
Reply
#2

Quote:
Originally Posted by bruxo00
Посмотреть сообщение
Alguйm sabe como LER um ficheiro com o DOF2? Nгo consigo. Jб tentei tudo e nada
Use o Search

nesse topico mostra como usar o DOF2

https://sampforum.blast.hk/showthread.php?tid=350855

de uma lida nele.
Reply
#3

Jб li esse tutorial e mais outro. Mas NГO FUNCIONA!!

Isto no OnPlayerConnect, estб bem nгo estб?

pawn Код:
DOF2_SetInt(file, "Emprego", checkemprego[playerid]);
Reply
#4

fiz um pequeno tutorial aqui para ler e escrever um arquivo simples, segue:

pawn Код:
//------------------ mini tutorial..
/*
aqui vou criar duas publics para ler e escrever um arquivo simples, como й uma public precisa de um forward*/

forward ler(arq[],id); //forward da public ler()
forward escrever(arq[]); //forward da public escrever()

public ler(arq[],id) //public ler()
{
    new str[128], info[128]; //variveis do tipo string a serem usadas.
    format(str, sizeof(str), "contas/%s.ini", arq); // formata a string com o nome e o caminho do arquivO. ATENЗГO: aqui ele mostra o nome de uma pasta, a qual deve ser criada em scriptfiles.
    if(DOF2_FileExists(str)) // verifica se o arquivo existe, caso contrario ele nгo lк o arquivo evitando dar bug
    {
        format(info, sizeof(info), "Nome: %s, Idade: %d, Sexo: %s",DOF2_GetString(str, "Nome"), DOF2_GetInt(str, "Idade"), DOF2_GetString(str, "Sexo")); /* Aqui nesse format a "magica" acontece.. bom, neste caso eu uso alguns parametros
        tais como:
        DOF2_GetString(str, "Nome") = isso lк os dados que tкm dentro do arquivo na tag NOME
        DOF2_GetInt(str, "Idade") = = isso lк os dados que tкm dentro do arquivo na tag Idade
        DOF2_GetString(str, "Sexo") = isso lк os dados que tкm dentro do arquivo na tag Sexo

        por sua vez, o format incorpora esses dados pegos do arquivo, e os anexa em uma nova string a qual й enviada a seguir*/

        SendClientMessage(id,-1,info); // envia a msg para o cliente.
    }
    else SendClientMessage(id,-1,"arquivo nгo encontrado"); // aqui caso o arquivo nгo exista, ele nos informa que ele nao existe.
    return 1;
}

public escrever(arq[]) //public escrever()
{
    new str[128]; //varivel do tipo string a ser usada.
    format(str, sizeof(str), "contas/%s.ini", arq); // formata a string com o nome e o caminho do arquivo
    if(!DOF2_FileExists(str)) DOF2_CreateFile(str); // verifica se o arquivo existe, caso ele nгo exista o mesmo й criado, para em seguida escrever os dados.
    DOF2_SetString(str, "Nome", "Gabriel"); //aqui esta funзгo vai escrever uma string na tag NOME
    DOF2_SetInt(str, "Idade", 26); //aqui esta funзгo vai escrever um numero na tag Idade
    DOF2_SetString(str, "Sexo", "Masculino"); //aqui esta funзгo vai escrever uma string na tag Sexo
    DOF2_SaveFile(); //aqui esta funзгo vai salvar nosso arquivo propriamente criado e escrito.
}

/*
Vamos criar alguns comandos para executar essas publics */


    if (strcmp("/ler", cmdtext, true, 4) == 0) // comando propriamente dito para public ler()
    {
        ler(cmdtext[5],playerid); // passa para a public ler os parametros NOME DO ARQUIVO e ID DE QUEM DIGITAR O COMANDO
        return 1;
    }
    if (strcmp("/escrever", cmdtext, true, 9) == 0)  // comando propriamente dito para public escrever()
    {
        escrever(cmdtext[10]); // passa para a public escrever o parametro NOME DO ARQUIVO
        return 1;
    }
   
   

public OnGameModeExit()
{
    DOF2_Exit(); // isso corrige um erro no dof q ao compilar diz que nao esta sendo usada essa funзгo;
    return 1;
}
Reply
#5

Nгo consegui. FUUUUUUUUUUUUUUUUUUUU!

ONDE й que isto estб mal?

PHP код:
checkemprego[playerid] = DOF2_GetInt(file"Emprego"); 
Coloco isso no OnPlayerConnect, mas nгo acontece NADA! Todas as variбveis a serem carregadas ficam a 0 mesmo que no ficheiro estejam diferentes.
Reply
#6

Quote:
Originally Posted by bruxo00
Посмотреть сообщение
Nгo consegui. FUUUUUUUUUUUUUUUUUUUU!

ONDE й que isto estб mal?

PHP код:
checkemprego[playerid] = DOF2_GetInt(file"Emprego"); 
Coloco isso no OnPlayerConnect, mas nгo acontece NADA! Todas as variбveis a serem carregadas ficam a 0 mesmo que no ficheiro estejam diferentes.
eu fiz somente um pequeno tutorial para vc aprender a usar o dof, pois vc falou que nгo estava conseguindo com os exemplos dados.

quanto a sua duvida, voce deve ter alguma funзгo no gm, que checa a profissгo do player.
no caso essa funзгo deve ser colocada na hora de carregar os dados do player, caso contrario vc nao vai conseguir pegar os dados. dб uma lida novamente no que eu escrevi..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)