20.07.2018, 02:50
Meu sistema de salvamento esta errado, de alguma maneira, quando o player spawna ele fica sem vida as vezes ou quando nao, o dinheiro nao e setado na mao dele, alguem me ajuda?
PHP код:
public OnPlayerDisconnect(playerid, reason)
{
new string[64], Float:health, Float:armour;
format(string, sizeof(string), "O player %s se conectou ao servidor!", Pname(playerid));
SendClientMessageToAll(-1, string);
format(gfile, sizeof(gfile), "Contas/%s.txt", Pname(playerid));
if(DOF2_FileExists(gfile))
{
DOF2_SetInt(gfile, "Dinheiro", GetPlayerMoney(playerid));
DOF2_SetFloat(gfile, "Vida", GetPlayerHealth(playerid, health));
DOF2_SetFloat(gfile, "Colete", GetPlayerArmour(playerid, armour));
DOF2_SetInt(gfile, "Level", GetPlayerScore(playerid));
DOF2_SetInt(gfile, "Ajudante", aInfo[playerid][Ajudante]);
DOF2_SetInt(gfile, "Moderador", aInfo[playerid][Moderador]);
DOF2_SetInt(gfile, "Corregedor", aInfo[playerid][Corregedor]);
DOF2_SetInt(gfile, "Administrador", aInfo[playerid][Administrador]);
DOF2_SetInt(gfile, "Master", aInfo[playerid][Master]);
DOF2_SaveFile();
}
return 1;
}
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
format(gfile, sizeof(gfile), "Contas/%s.txt", Pname(playerid));
switch(dialogid) {
case Registro: {
if(!strlen(inputtext))
{
SendClientMessage(playerid, -1, "[ {FFFFFF}ERRO ]Digite uma senha para se registrar!");
format(str, sizeof(str), "Ola, seja bem vindo pela primeira vez Sr.%s !", Pname(playerid));
ShowPlayerDialog(playerid, Registro, DIALOG_STYLE_PASSWORD, "{FFFFFF}REGISTRO", str, "Registro", "Cancelar");
}
else
{
DOF2_CreateFile(gfile);
DOF2_SetString(gfile, "Senha", inputtext);
DOF2_SetInt(gfile, "Dinheiro", 1000);
DOF2_SetFloat(gfile, "Vida", 100);
DOF2_SetFloat(gfile, "Colete", 0);
DOF2_SetInt(gfile, "Level", 0);
DOF2_SetInt(gfile, "Ajudante", 0);
DOF2_SetInt(gfile, "Moderador", 0);
DOF2_SetInt(gfile, "Corregedor", 0);
DOF2_SetInt(gfile, "Administrador", 0);
DOF2_SetInt(gfile, "Master", 0);
DOF2_SaveFile();
format(str, sizeof(str), "Ola, seja bem vindo ao servidor novamente!");
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}LOGIN", str, "Login", "Cancelar");
}
}
case Login: {
if(!strlen(inputtext))
{
SendClientMessage(playerid, -1, "[{FFFFFF}ERRO ] Digite Sua senha para logar no servidor!");
format(str, sizeof(str), "Ola, seja bem vindo ao servidor novamente!");
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}LOGIN", str, "Login", "Cancelar");
}
if(strcmp(inputtext, DOF2_GetString(gfile, "Senha"), true) == 0)
{
GivePlayerMoney(playerid, DOF2_GetInt(gfile, "Dinheiro"));
SetPlayerHealth(playerid, DOF2_GetFloat(gfile, "Vida"));
SetPlayerArmour(playerid, DOF2_GetFloat(gfile, "Colete"));
SetPlayerScore(playerid, DOF2_GetInt(gfile, "Level"));
SpawnPlayer(playerid);
SendClientMessage(playerid, -1, "{FFFFFF}Login efeituado com sucesso!");
}
else
{
format(str, sizeof(str), "Ola, seja bem vindo ao servidor novamente!");
ShowPlayerDialog(playerid, Login, DIALOG_STYLE_PASSWORD, "{FFFFFF}LOGIN", str, "Login", "Cancelar");
}
}
}
return 1;
}