03.10.2012, 14:18
Entгo galera, as contas do meu sistema de Salvamento nгo estгo salvando..
Код:
public OnPlayerConnect(playerid) { new nome[24]; GetPlayerName(playerid, nome, 24); format(str, sizeof(str),"%s {FFFFFF}Conectou-se no Servidor. (%d/%d)",nome, players, GetMaxPlayers()); SendClientMessageToAll(-1, str); // REGISTRO format(file, sizeof(file), "Contas/%s.ini", playername); if(!fexist(file)) { format(str, sizeof(str), "Olб %s vocк ainda nгo tem uma conta. \nDigite uma senha para registrar:", playername); ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", str, "Registrar", "Cancelar"); } else { format(str, sizeof(str), "Olб %s vocк jб tem uma conta, \nDigite sua senha para continuar:", playername); ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login", str, "Logar", "Cancelar"); } return 1; }
Код:
SalvarPlayer(playerid) { GetPlayerName(playerid, playername, sizeof(playername)); format(file, sizeof(file), "Contas/%s.ini", playername); if(INI_Open(file)) { INI_WriteInt("Leveladmin", PlayerInfo[playerid][Admin]); INI_WriteInt("Dinheiro", GetPlayerMoney(playerid)); INI_WriteInt("Score", GetPlayerScore(playerid)); INI_Save(); INI_Close(); } } SetarPlayer(playerid) { GetPlayerName(playerid, playername, sizeof(playername)); format(file, sizeof(file), "Contas/%s.ini", playername); if(INI_Open(file)) { PlayerInfo[playerid][Admin] = INI_ReadInt("Leveladmin"); GivePlayerMoney(playerid, INI_ReadInt("Dinheiro")); SetPlayerScore(playerid, INI_ReadInt("Score")); INI_Close(); } }
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "Contas/%s.ini", playername);
if(dialogid == REGISTRO)
{
if(response)
{
if(strlen(inputtext) < 4 || strlen(inputtext) > 20)
{
SendClientMessage(playerid, COR_AZULCLARO, "** Sua senha tem que ter mais de 4 e menos de 20 letras/nъmeros!");
format(str, sizeof(str), "Olб %s vocк ainda nгo tem uma conta. \nDigite uma senha para registrar:", playername);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", str, "Registrar", "Sair");
return 1;
}
if(!strlen(inputtext))
{
SendClientMessage(playerid, COR_ERRO, "* Й necessбrio digitar uma senha.");
format(str, sizeof(str), "Olб %s vocк ainda nгo tem uma conta. \nDigite uma senha para registrar:", playername);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_INPUT, "Registro", str, "Registrar", "Sair");
}
if(INI_Open(file))
{
INI_WriteString("Senha", inputtext);
INI_WriteInt("Leveladmin", PlayerInfo[playerid][Admin] = 0);
INI_WriteInt("Dinheiro", GivePlayerMoney(playerid, 0));
INI_Save();
INI_Close();
}
format(str, sizeof(str), "Parabйns, conta criada com sucesso. Agora digite sua senha para logar:");
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "Login", str, "Logar", "Cancelar");
}
else
{
SendClientMessage(playerid, COR_ERRO, "* Vocк nгo quiz se registrar e por isso foi kickado !");
}
}
if(dialogid == LOGIN)
{
if(response)
{
new Senha[24];
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "Contas/%s.ini", playername);
if(strlen(inputtext) < 4 || strlen(inputtext) > 20)
{
SendClientMessage(playerid, COR_AZULCLARO, "** Sua senha tem que ter mais de 4 e menos de 20 letras/nъmeros!");
format(str, sizeof(str), "Olб %s vocк jб tem uma conta,\nDigite sua senha para continuar:", playername);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "Login", str, "Logar", "Cancelar");
return 1;
}
if(!strlen(inputtext))
{
SendClientMessage(playerid, COR_ERRO, "* Й necessбrio digitar uma senha.");
format(str, sizeof(str), "Olб %s vocк jб tem uma conta,\nDigite sua senha para continuar:", playername);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_INPUT, "Login", str, "Logar", "Cancelar");
return 1;
}
if(INI_Open(file))
{
INI_ReadString(Senha, "Senha", 24);
if(!strcmp(inputtext, Senha, false))
{
SetarPlayer(playerid);
logado[playerid] = 1;
format(str, sizeof(str), "SERVER: Bem vindo novamente %s", playername);
SendClientMessage(playerid, COR_AZULCLARO, str);
if(PlayerInfo[playerid][Admin] >= 1) { SendClientMessage(playerid, COR_AZULCLARO, "SERVER: Vocк й um Administrador."); }
// ShowPlayerDialog(playerid, DIALOG_ORG, DIALOG_STYLE_LIST, "Seleзгo de Casa/Visitante", "Mandante\nVisitante", "Selecionar", "Voltar");
}
else
{
format(str, sizeof(str), "** Vocк digitou a senha errada para %s", playername);
SendClientMessage(playerid, COR_ERRO, str);
format(str, sizeof(str), "Olб vocк digitou a senha errada para %s,\nPorfavor digite-a novamente para continuar:", playername);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login", str, "Logar", "Cancelar");
}
INI_Close();
}
}
}
return 1;
}