Originally Posted by Luciano_Jr
Estou com um problema no momento que salva informaзхes do player.
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; }
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
pawn Код:
public OnGameModeExit() { DOF2_Exit(); for (new i = 0; i < MAX_PLAYERS; i++) SalvarPlayer(i); return 1; }
Alguйm dб uma luz aн, por favor
|