[RESOLVIDO] Carregamentos de Dados [DUV]
#1

Entгo й Assim Galera nгo sei se Conseguiram em me Responder mesmo Assim Peзo Ajuda de quem puder.
Estive Tendo Muito Problemas com DINI Entгo Resolvi nem colocar muitas includes, apenas a funзгo do prуprio "a_samp"
Entгo Estava a Fazer Este Sistema ANTI DB!

Ao Topo:
pawn Код:
forward PRESODB(playerid);
Entгo Logo Abaixo:
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
new Float:X, Float:Z, Float:Y, Float:Rotation;
new weap= GetPlayerWeapon(killerid);
if(GetPlayerState(killerid) == 2 || GetPlayerState(killerid) == 3)
{
if(weap == 32 || weap == 28 || weap == 29)
{
GetPlayerName(killerid, Nome, sizeof(Nome));
formato(string, sizeof(string), "-OpenDKN-: %s foi preso por 2 Min pelo Admin DKN | Motivo: Driver-By",Nome);//MENSAGEM
EnviarMensagemaTodos(VERMELHO, string);
SetPlayerInterior(killerid, 0);//INTERIOR
SetPlayerPos(killerid,268.5777,1857.9351,9.8133);//CADEIA
SetarTempo("PRESODB",120000,false);//CHAMAR PUBLIC
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, Rotation);
new File:pos=fopen("presos.txt", io_append);//IRA SALVAR CASO O PLAYER DISCONNECT
format(string, 256, "Cometidos DB(0, %f, %f, %f, %f, 0,0,0,0,0,0);", X, Y, Z,Rotation);
fwrite(pos, string);
fclose(pos);
}
}
return 1;
}
Entгo Tem uma publica que apуs 2 minutos ele serб chamado:
pawn Код:
public PRESODB(playerid)
{
SpawnPlayer(playerid);
}
Entгo a dъvida й essa como faзo para carregar a pos do arquivo em "OnPlayerSpawn" ,
Lembrando que para carregar Usamos
io_read!
Reply
#2

Epб eu li o teu post а pressa e fiz isto tambйm а pressa porque vou dormir que jб й tarde e estou cansado.

Sinceramente nunca usei nada alйm de dini para isso, por isso desculpa.

Faz tipo:

Guardar:

pawn Код:
new ficheiro[128], jogador[MAX_PLAYER_NAME];
GetPlayerName(playerid,jogador,sizeof(jogador));
format(ficheiro,sizeof(ficheiro),"%s.ini",jogador);
GetPlayerPos(playerid,X,Y,Z);
dini_FloatSet(ficheiro,"X",X);
dini_FloatSet(ficheiro,"Y",Y);
dini_FloatSet(ficheiro,"Z",Z);

Carregar:

pawn Код:
new ficheiro[128], jogador[MAX_PLAYER_NAME], X, Y, Z;
GetPlayerName(playerid,jogador,sizeof(jogador));
format(ficheiro,sizeof(ficheiro),"%s.ini",jogador);
X = dini_Float(ficheiro, "X");
Y = dini_Float(ficheiro, "Y");
Z = dini_Float(ficheiro, "Z");
SetPlayerPos(playerid,X,Y,Z);
Deve funcionar.

Edit: Adicionado as tags e quanto ao tamanho do 'ficheiro' meti 128 porque nгo tenho tempo para fazer contas.

Edit 2: Esqueci-me de fazer new Float:X, bla bla bla. Sorry. Tenho que ir.

Abraзo.
Reply
#3

Cara, Nгo me Ajudou, nгo pretendo usar DINI, pois esta dando erros demasiados
Mesmo assim obrigado pela atenзгo Amor *-*


#EDIT:
Apenas Modifiquei a "Dini" Colocando Funзхes da "Dutils" Pois Ja Estavam String e Outras Definidas no GM
Isso que dб todos colocarem a mesma "new" em diferente Includes
Enquanto ao Seu CODE O CORRECTO SERIA:

Salvar:
pawn Код:
new Float:X, Float:Z, Float:Y;
new ficheiro[128], jogador[MAX_PLAYER_NAME];
GetPlayerName(playerid,jogador,sizeof(jogador));
format(ficheiro,sizeof(ficheiro),"%s.ini",jogador);
GetPlayerPos(playerid,X,Y,Z);
dini_FloatSet(ficheiro,"X",X);
dini_FloatSet(ficheiro,"Y",Y);
dini_FloatSet(ficheiro,"Z",Z);
Carregar

pawn Код:
new Float:X, Float:Z, Float:Y;
new ficheiro[128], jogador[MAX_PLAYER_NAME];
GetPlayerName(playerid,jogador,sizeof(jogador));
format(ficheiro,sizeof(ficheiro),"%s.ini",jogador);
X = dini_Float(ficheiro, "X");
Y = dini_Float(ficheiro, "Y");
Z = dini_Float(ficheiro, "Z");
SetPlayerPos(playerid,X,Y,Z);
Mais uma Vez Agradeзo a Ajuda Bjus!

RoamPT Pode Trancar Amor2 *-*
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)