21.07.2013, 22:22
Estou com um problema no momento que salva informaзхes do player.
OnPlayerConnect
Acontece que os arquivos que sгo criados na pasta Arquivos/Players/%s.ini nгo tem nada dentro, nenhuma informaзгo, ou seja, nгo estб salvando!
OnGameModeExit
Alguйm dб uma luz aн, por favor
OnPlayerConnect
pawn Код:
GetPlayerName(playerid, Nome, sizeof(Nome));
format(string, sizeof(string), CONTAS, Nome);
if(!DOF2_FileExists(string)) {
format(string, sizeof(string), "{FFFFFF}Seu nickname estб como: {00D700}%s{FFFFFF}.\n{FFFFFF}Vocк ainda nгo estб registrado, digite uma senha para cadastrar.", Nome);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_PASSWORD, "{00D700}Cadastre-se agora mesmo!", string, "Cadastrar", "Cancelar");
}
else {
format(string, sizeof(string), "{FFFFFF}Seu nickname estб como: {00D700}%s{FFFFFF}.\n{FFFFFF}Vocк jб estб registrado, digite sua senha para logar.", Nome);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{00D700}Logue agora mesmo!", string, "Logar", "Cancelar");
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == REGISTRO)
{
if(response)
{
if(!strlen(inputtext))
{
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[256];
format(String, sizeof(String), "{FFFFFF}Seu nickname estб como: {00D700}%s{FFFFFF}.\n{FFFFFF}Vocк ainda nгo estб registrado, digite uma senha para cadastrar.", Nome);
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_PASSWORD, "{00D700}Cadastre-se agora mesmo!", String, "Cadastrar", "Cancelar");
SendClientMessage(playerid,COLOR_RED,"[ERRO] Senha invбlida. Digite uma senha vбlida!");
return 1;
}
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[256];
format(String, sizeof(String), CONTAS, Nome);
DOF2_CreateFile(String);
DOF2_SetString(String,"Senha",Encriptar(inputtext));
DOF2_SetInt(String,"Kills",0);
DOF2_SetInt(String,"Deaths",0);
DOF2_SetInt(String,"Logou",0);
DOF2_SetInt(String,"FightingStyle",0);
DOF2_SetInt(String,"Dolar",Dinheiro2);
DOF2_SetInt(String,"GP",Dinheiro);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{00D700}Logue agora mesmo!", "{00D700}Parabйns! Sua conta foi criada com sucesso.\n{FFFFFF}Agora digite sua senha para logar.", "Logar", "Cancelar");
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "[ERRO] Vocк nгo se cadastrou e foi kickado!");
Kick(playerid);
return 1;
}
}
if(dialogid == LOGIN)
{
if(response)
{
if(!strlen(inputtext))
{
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[256];
format(String, sizeof(String), "{FFFFFF}Seu nickname estб como: {00D700}%s{FFFFFF}.\n{FFFFFF}Vocк jб estб registrado, digite sua senha para logar.", Nome);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{00D700}Logue agora mesmo!", String, "Logar", "Cancelar");
SendClientMessage(playerid,COLOR_RED,"[ERRO] Senha incorreta. Tente novamente.");
return 1;
}
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[512];
format(String, sizeof(String), CONTAS, Nome);
if(!strcmp(Encriptar(inputtext),DOF2_GetString(String,"Senha"),false))
{
SetarPlayer(playerid);
Logou[playerid]++;
//Limpando o Chat
for (new a = 1; a <= 60; a++)
{
SendClientMessage(playerid, COLOR_WHITE,"\n");
SendClientMessage(playerid, COLOR_WHITE,"\n");
}
SendClientMessage(playerid,COLOR_WHITE,"{00D700}[INFORMAЗГO] {FFFFFF}Vocк logou em sua conta com sucesso!");
SendClientMessage(playerid,COLOR_WHITE,"{00D700}[INFORMAЗГO] {FFFFFF}O servidor estб em testes (versгo 0)!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"[ERRO] Senha incorreta. Tente novamente.");
format(String, sizeof(String), "{FFFFFF}Seu nickname estб como: {00D700}%s{FFFFFF}.\n{FFFFFF}Vocк jб estб registrado, digite sua senha para logar.", Nome);
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{00D700}Logue agora mesmo!", String, "Logar", "Cancelar");
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "[ERRO] Vocк nгo logou e foi kickado!");
Kick(playerid);
return 1;
}
}
return 1;
}
pawn Код:
SalvarPlayer(playerid) {
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[50];
format(String, sizeof(String), CONTAS, Nome);
DOF2_SetInt(String, "Matou", Kills[playerid]);
DOF2_SetInt(String, "Morreu", Deaths[playerid]);
DOF2_SetInt(String, "Logou", Logou[playerid]);
DOF2_SetInt(String, "Score", GetPlayerScore(playerid));
DOF2_SetInt(String, "FightingStyle", GetPlayerFightingStyle(playerid));
DOF2_SetInt(String, "GP", GetPlayerReal(playerid));
DOF2_SetInt(String, "Dolar", GetPlayerMoney(playerid));
return 1;
}
SetarPlayer(playerid) {
GetPlayerName(playerid, Nome, sizeof(Nome));
new String[50];
format(String, sizeof(String), CONTAS, Nome);
Kills[playerid] = DOF2_GetInt(String, "Matou");
Deaths[playerid] = DOF2_GetInt(String, "Morreu");
Logou[playerid] = DOF2_GetInt(String, "Logou");
SetPlayerScore(playerid, DOF2_GetInt(String, "Score"));
SetPlayerFightingStyle(playerid, DOF2_GetInt(String, "FightingStyle"));
GivePlayerReal(playerid, DOF2_GetInt(String, "GP"));
GivePlayerMoney(playerid, DOF2_GetInt(String, "Dolar"));
return 1;
}
OnGameModeExit
pawn Код:
public OnGameModeExit()
{
DOF2_Exit();
for (new i = 0; i < MAX_PLAYERS; i++)
SalvarPlayer(i);
return 1;
}