Salvar Informaçoes - LostZinqs - 23/09/2024
Bom dia, como posso salvar a grana do player e etc?
exemplo...
Salvar a grana que o player tem na pasta Contas, junto com as informaçoes de login, minha tela de login salva o nome e a senha, eu queria poder salvar o dinheiro tbm no mesmo arquivo, como posso fazer isso? Uso DOF2...
RE: Salvar Informaçoes - xbruno1000x - 23/09/2024
Normalmente existe uma função que encapsula todos os salvamentos da conta, tipo uma função SavePlayer(playerid);
Dentro dessa função, basta você inserir salvamentos como:
Código: //file deve ser o caminho onde o arquivo será salvo.
new file[128];
format(file, sizeof(file), "players/%d.txt", playerid); // Define o caminho do arquivo. Normalmente usamos o nome do jogador, usei o playerid por exemplo.
DOF2_SetInt(file, "Dinheiro", GetPlayerMoney(playerid)); //1° um caminho para o salvamento, 2° uma chave para obter o valor depois e 3° o valor inteiro.
Depois você pode inserir na função de carregar os dados da dof2 algo como:
Código: new file[128];
format(file, sizeof(file), "players/%d.txt", playerid);
Player[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro"); //O valor obtido no arquivo será atribuido a variável Player[playerid][Dinheiro].
RE: Salvar Informaçoes - LostZinqs - 23/09/2024
(23/09/2024 10:55)xbruno1000x Escreveu: Normalmente existe uma função que encapsula todos os salvamentos da conta, tipo uma função SavePlayer(playerid);
Dentro dessa função, basta você inserir salvamentos como:
Código: //file deve ser o caminho onde o arquivo será salvo.
new file[128];
format(file, sizeof(file), "players/%d.txt", playerid); // Define o caminho do arquivo. Normalmente usamos o nome do jogador, usei o playerid por exemplo.
DOF2_SetInt(file, "Dinheiro", GetPlayerMoney(playerid)); //1° um caminho para o salvamento, 2° uma chave para obter o valor depois e 3° o valor inteiro.
Depois você pode inserir na função de carregar os dados da dof2 algo como:
Código: new file[128];
format(file, sizeof(file), "players/%d.txt", playerid);
Player[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro"); //O valor obtido no arquivo será atribuido a variável Player[playerid][Dinheiro].
https://imgur.com/a/eb0UQ6B
assim?
RE: Salvar Informaçoes - xbruno1000x - 23/09/2024
(23/09/2024 12:10)LostZinqs Escreveu: https://imgur.com/a/eb0UQ6B
assim?
É mais ou menos isso.
Caso você já tenha uma função de salvamento, o ideal é jogar dentro dela. Além disso, como falei, salvar o arquivo com o playerid seria apenas para o exemplo, na prática você deve usar o nome da conta.
A SalvarDados ficaria algo como:
Código: public SalvarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
DOF2_SetInt(file, "Dinheiro", GetPlayerMoney(playerid));
DOF2_SaveFile();
}
E a de carregar:
Código: public CarregarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
Player[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro");
}
RE: Salvar Informaçoes - LostZinqs - 23/09/2024
(23/09/2024 12:38)xbruno1000x Escreveu: (23/09/2024 12:10)LostZinqs Escreveu: https://imgur.com/a/eb0UQ6B
assim?
É mais ou menos isso.
Caso você já tenha uma função de salvamento, o ideal é jogar dentro dela. Além disso, como falei, salvar o arquivo com o playerid seria apenas para o exemplo, na prática você deve usar o nome da conta.
A SalvarDados ficaria algo como:
Código: public SalvarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
DOF2_SetInt(file, "Dinheiro", GetPlayerMoney(playerid));
DOF2_SaveFile();
}
E a de carregar:
Código: public CarregarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
Player[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro");
}
so com isso ja esta sendo salvo o dinheiro? ou eu tenho que fazer algo, tipo botar alguam funçao pra quando o player sair ou ele logar
RE: Salvar Informaçoes - White_Blue - 23/09/2024
(23/09/2024 14:29)LostZinqs Escreveu: (23/09/2024 12:38)xbruno1000x Escreveu: (23/09/2024 12:10)LostZinqs Escreveu: https://imgur.com/a/eb0UQ6B
assim?
É mais ou menos isso.
Caso você já tenha uma função de salvamento, o ideal é jogar dentro dela. Além disso, como falei, salvar o arquivo com o playerid seria apenas para o exemplo, na prática você deve usar o nome da conta.
A SalvarDados ficaria algo como:
Código: public SalvarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
DOF2_SetInt(file, "Dinheiro", GetPlayerMoney(playerid));
DOF2_SaveFile();
}
E a de carregar:
Código: public CarregarDados(playerid) {
new file[128], playerName[24];
GetPlayerName(playerid, playerName, sizeof(playerName));
format(file, sizeof(file), "players/%s.txt", playerName);
Player[playerid][Dinheiro] = DOF2_GetInt(file, "Dinheiro");
}
so com isso ja esta sendo salvo o dinheiro? ou eu tenho que fazer algo, tipo botar alguam funçao pra quando o player sair ou ele logar
Obviamente, é necessário chamar essas funções quando o jogador faz login e desconecta. Suponho que você tenha uma função para quando o jogador digita sua senha na tela de login e é spawnado, é nessa função que você deve carregar os dados do jogador e salvá-los quando ele desconectar na callback OnPlayerDisconnect.
|