[Ajuda] Sistema nгo salvando
#1

Meu sistema de corregedor, nгo estб salvando, quando reinicia o servidor, o player nгo й mais corregedor...

pawn Код:
new corregedor[MAX_PLAYERS];
/SetarC

pawn Код:
if(strcmp(cmd, "/SetarC", true) == 0) {
if(!IsPlayerAdmin(playerid)) return 0;
new tmp[256];
new plid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, 0x008040AA, "(ERRO) Use: /setarc [id].");
return 1;
}
plid = strval(tmp);
if(IsPlayerConnected(plid)){
new pname[MAX_PLAYER_NAME];
GetPlayerName(plid, pname, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
corregedor[plid] = 1;
dini_IntSet(file2, "corregedor",1);
SpawnPlayer(plid);
SendClientMessage(playerid, 0x00FF00AA, "| INFO | Corregedor Setado com sucesso");
SendClientMessage(plid, 0x00FF00AA, "| INFO | Um administrador setou vocк como corregedor!");
return 1;
}else{
SendClientMessage(playerid, Vermelho, "(ERRO) ID invбlido");
return 1;
}
}
/TirarC

pawn Код:
if(strcmp(cmd, "/tirarc", true) == 0) {
if(!IsPlayerAdmin(playerid)) return 0;
new tmp[256];
new plid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, 0x008040AA, "(ERRO) Use: /tirarc [id].");
return 1;
}
plid = strval(tmp);
if(IsPlayerConnected(plid)){
new pname[MAX_PLAYER_NAME];
GetPlayerName(plid, pname, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
dini_IntSet(file2, "corregedor",0);
corregedor[plid] = 1;
SpawnPlayer(plid);
SendClientMessage(playerid, 0x00FF00AA, "| INFO | Corregedor tirado com sucesso!");
SendClientMessage(plid, 0x00FF00AA, "| INFO | O administrador tirou seu corregedor!");
return 1;
}else{
SendClientMessage(playerid, Vermelho, "(ERRO) ID invбlido");
return 1;
}
}
Pode atй relogar, mais se reiniciar o servidor ele nгo й mais corregedor, nгo salva... se alguйm puder me ajudar...

PS: Eu sei que os cуdigos nгo estгo identados, estб uma bagunзa, depois eu arrumo :X...


@Edit

No .ini da conta, fica "corregedor=1", isso indica que salvou, mesmo quando reinicia o servidor fica assim, mas nгo salva, por exemplo, nгo dб para usar os comandos de corregedor e nгo aparece no /Corregedores, tem que setar novamente...
Reply
#2

Quando reinicia o server, continua corregedor=1?
Reply
#3

Isto deve resolver o seu problema .


Coloque

pawn Код:
//Na public OnPlayerRequestClass:

new NickName[MAX_PLAYER_NAME];
GetPlayerName(playerid, NickName, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, NickName);
corregedor[playerid] = dini_Int(file2, "corregedor");

Caso um erro de undefined symbol relativo ao sнmbolo "file2" seja gerado, troque o cуdigo acima por este:


pawn Код:
//Na public OnPlayerRequestClass:

new NickName[MAX_PLAYER_NAME];
new STR[50];
GetPlayerName(playerid, NickName, MAX_PLAYER_NAME);
format(STR, 50, PASTA_CONTAS, NickName);
corregedor[playerid] = dini_Int(STR, "corregedor");


Espero ter ajudado .
Reply
#4

rjjj, Obrigado, pegou certinho seu Code, Se conter BUGS novamente, eu falo aqui (Creio que nгo vai dar mais BUG)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)