23/10/2023 06:13
(22/10/2023 19:47)leonardos08bt Escreveu: Atualize a include DOF2 para essa versão: https://pastebin.com/p2KAgAin
(22/10/2023 20:46)zBreno Escreveu: https://github.com/Los/LHouse/releases
Não funcionou.
Vou deixar todo meu código de salvamento abaixo.
OnDialogResponse
Código PHP:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == Dialog_Registro)
{
if(response)
{
if(strlen(inputtext) < 4 || strlen(inputtext) > 16) return SendClientMessage(playerid, -1, "{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Sua senha deve conter entre 4 a 16 caracteres."), ShowPlayerDialog(playerid, Dialog_Registro, DIALOG_STYLE_INPUT, "Kuatros Roleplay", "{FFFFFF}Crie uma senha com uma quantidade de caracteres que esteja entre 4 - 16.\nStatus de conta: {FF0000}Não registrada!", "Confirmar", "Sair");
DOF2_CreateFile(Arquivo(playerid));
DOF2_SetString(Arquivo(playerid), "Senha", inputtext);
DOF2_SaveFile();
SetSpawnInfo(playerid, 0, 26, 1730.0288, -2241.1431, 13.5396, 182.5398, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
TogglePlayerControllable(playerid, 1);
SetCameraBehindPlayer(playerid);
Player[playerid][pLogado] = 1;
SendClientMessage(playerid, -1, "{CFCFCF}||{00FF00}KUATROS{CFCFCF}|| Parabéns por estar registrado no servidor! Estamos te dando alguns privilégios por ser um novato.");
GivePlayerMoney(playerid, 2500);
}
else
{
Kick(playerid);
}
return 1;
}
if(dialogid == Dialog_Login)
{
if(response)
{
if(strcmp(inputtext, DOF2_GetString(Arquivo(playerid), "Senha")) == 0)
{
SetSpawnInfo(playerid, 0, 26, 1730.0288, -2241.1431, 13.5396, 182.5398, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
TogglePlayerControllable(playerid, 1);
SetCameraBehindPlayer(playerid);
Player[playerid][pLogado] = 1;
SendClientMessage(playerid, -1, "{CFCFCF}||{00FF00}KUATROS{CFCFCF}|| Bem vindo novamente! Obrigado por estar conosco.");
}
else
{
SendClientMessage(playerid, -1, "{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Sua senha está incorreta."); ShowPlayerDialog(playerid, Dialog_Login, DIALOG_STYLE_PASSWORD, "Kuatros Roleplay", "{FFFFFF}Digite sua senha criada anteriormente, para conectar-se ao servidor.\nStatus de conta: {00FF00}Registrada!", "Confirmar", "Sair");
}
}
else
{
Kick(playerid);
}
}
return 1;
}
Stock's
Código PHP:
stock pName(playerid) // Pegar o nickname do player
{
new Nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
return Nome;
}
stock Arquivo(playerid) // Diretório de contas
{
new String[100];
format(String, 100, "Contas/%s.ini", pName(playerid));
return String;
}
stock sDados(playerid) // Salvar os dados do player
{
if(DOF2_FileExists(Arquivo(playerid)))
{
new Float:Vida, Float:Colete, Arma, Municao, String[20];
DOF2_SetInt(Arquivo(playerid), "Dinheiro", GetPlayerMoney(playerid));
DOF2_SetInt(Arquivo(playerid), "Score", GetPlayerScore(playerid));
GetPlayerHealth(playerid, Vida);
DOF2_SetFloat(Arquivo(playerid), "Vida", Vida);
GetPlayerArmour(playerid, Colete);
DOF2_SetFloat(Arquivo(playerid), "Colete", Colete);
for(new i = 0; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, Arma, Municao);
format(String, 20, "Arma%d", i);
DOF2_SetInt(Arquivo(playerid), String, Arma);
format(String, 20, "Municao%d", i);
DOF2_SetInt(Arquivo(playerid), String, Municao);
}
DOF2_SaveFile();
return 1;
}
return 0;
}
stock cDados(playerid) // Carregar os dados do player
{
new Float:Vida, Float:Colete, Arma, Municao, String[20];
GivePlayerMoney(playerid, DOF2_GetInt(Arquivo(playerid), "Dinheiro"));
SetPlayerScore(playerid, DOF2_GetInt(Arquivo(playerid), "Score"));
Vida = DOF2_GetFloat(Arquivo(playerid), "Vida");
SetPlayerHealth(playerid, Vida);
Colete = DOF2_GetFloat(Arquivo(playerid), "Colete");
SetPlayerArmour(playerid, Colete);
ResetPlayerWeapons(playerid);
for(new i = 0; i < 13; i++)
{
format(String, 20, "Arma%d", i);
Arma = DOF2_GetInt(Arquivo(playerid), String);
format(String, 20, "Municao%d", i);
Municao = DOF2_GetInt(Arquivo(playerid), String);
GivePlayerWeapon(playerid, Arma, Municao);
}
}
stock GivePlayerWeaponKU(playerid, Gun, Ammo)
{
new gunname[32];
GivePlayerWeapon(playerid, Gun, Ammo);
GetWeaponName(Gun, gunname, sizeof(gunname));
SetPVarInt(playerid, gunname, GetPVarInt(playerid, gunname) +Ammo);
}
Notei que a vida não esta salvando, mas está igual ao colete... Eu não entendo.