[POMOC]Spremanje PlayerInfo


Započeo RolePlay, Septembar 02, 2014, 18:09:18 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: od 0 moja
Detaljan opis problema: ma eo radim s playerinfo pa evo primjera
Dio skripte:
if (strcmp(cmdtext, "/test", true) ==0)
	{
	    PlayerInfo[playerid][pMoney] = 1000;
	    return 1;
	}

kada ingame kucam ovo u account bi mi se trebalo upisati pod Money 1000 treba pisati ...Money=1000... a pise Money=0 sve dok se ne izlogujem s servera tj kad se izlogujem pokrene se funkcija saveplayer koja mi to direktno upise u acc i onda je dobro.
Kako cu nastimati kad recimo kucam tu komandu i sve ostale da se odmah bez save acc-a pise u acc
Neke slike/video za lakse dobivanje pomoci(neobavezno):

Streetboy

*

I kada dođe do rasprave, neka su vam reči blage, a dokazi jaki. A ja, iz iskustva znam da su reči jače uvek, kada su dokazi slabi.

Pa ako vec imas public samo ga pozoves ispod npr:

SavePlayer(playerid);



al brate zar nie glupo da u svakoj komandi ja save igraca i u svakom dijelicu skripte ga moram save da bi mu se to upisalo, na gf modu se sve odma pise u acc valjda ima nesto negdi definirano

Citat: RolePlay poslato Septembar 03, 2014, 14:49:32 POSLE PODNE
al brate zar nie [cenzura]o da u svakoj komandi ja save igraca i u svakom dijelicu skripte ga moram save da bi mu se to upisalo, na gf modu se sve odma pise u acc valjda ima nesto negdi definirano
Zato Å¡to updejtaÅ¡ tek kada izaÄ'eÅ¡ iz servera, pod OnPlayerDisconnect. Ali na serveru ti čita tada, jedino joÅ¡ da dodaÅ¡ SetPlayerMoney, ili pod public OnPlayerUpdate dodati SavePlayer(); ali to ti nebi preporučio nikako.

ma znam brate pa nisam lud da stavim pod update pa da ga save svaki moment, to je bukvalno kao i globalni timer da save igrace svaku milisekundu

dajte jos neke ideje, ko se razumi u gf il cuvanje tokom igre te kako cu rjesit, playerinfo i postavi mu se server pamti al ne upise u acc nego tek kad mu das funkciju savepl

Zašto ne uradiš ovakav princip kad ti se već ne da doliko pisati?

SavePlayerEnum( playerid, enum, bool:number ) {

   PlayerInfo[ playerid ][ enum ] = number;
   SavePlayerInfo( playerid );

}

Ne znam da li radi pošto nisam testirao, pisao sam ovdje...
Sada npr ako želiš da novac staviš a varijabla je pMoney radiš ovako:
SavePlayerEnum( playerid, pMoney, 1000 );

Napravi globalni timer da ti svakih 15-20 minuta cuva statse.

Slozicu se sa ovim sto Lenon kaze i mozes jos da stavis SavePlayer pod public OnPlayerDisconnect

Citat: Lenon poslato Septembar 04, 2014, 00:17:25 PRE PODNE
Napravi globalni timer da ti svakih 15-20 minuta cuva statse.
Da bi bolje pročitali znali bi da hoće odma kada nešto updejta da mu se to odma i spremi u ini, koliko znam to koristi sa SavePlayer( playerid ); Zašto da koristi toliko dug vremenski period kada hoće da odma spremi? A siguran sam da će i izać tada iz igre te mu se neće ni spremiti. Zato neka jednostavno gdje god mjenja neka stavi SavePlayer( playerid ); ili koristi moju funkciju.

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Septembar 04, 2014, 02:53:25 PRE PODNE
Slozicu se sa ovim sto Lenon kaze i mozes jos da stavis SavePlayer pod public OnPlayerDisconnect
Pročitaj opet i vidjet ćeš da već ima pod OPD, samo što hoće da odma spremi... Jednostavno, koristi moju funkciju kada već nećeš da 'puno' pišeš.

Citat: O'Dwyer Bartholomew poslato Septembar 04, 2014, 11:18:58 PRE PODNE
Citat: Lenon poslato Septembar 04, 2014, 00:17:25 PRE PODNE
Napravi globalni timer da ti svakih 15-20 minuta cuva statse.
Da bi bolje pročitali znali bi da hoće odma kada nešto updejta da mu se to odma i spremi u ini, koliko znam to koristi sa SavePlayer( playerid ); Zašto da koristi toliko dug vremenski period kada hoće da odma spremi? A siguran sam da će i izać tada iz igre te mu se neće ni spremiti. Zato neka jednostavno gdje god mjenja neka stavi SavePlayer( playerid ); ili koristi moju funkciju.
To sto ti govoris je previse i neportrebno spremanje.. Moze i smanjiti vremenki interval ne mora to biti 20 minuta, ja sam dao primjer...
To za izlazenje sa servera stavi da sprema statse pod OnPlayerDisconnect.

Citat: Lenon poslato Septembar 04, 2014, 11:22:20 PRE PODNE
Citat: O'Dwyer Bartholomew poslato Septembar 04, 2014, 11:18:58 PRE PODNE
Citat: Lenon poslato Septembar 04, 2014, 00:17:25 PRE PODNE
Napravi globalni timer da ti svakih 15-20 minuta cuva statse.
Da bi bolje pročitali znali bi da hoće odma kada nešto updejta da mu se to odma i spremi u ini, koliko znam to koristi sa SavePlayer( playerid ); Zašto da koristi toliko dug vremenski period kada hoće da odma spremi? A siguran sam da će i izać tada iz igre te mu se neće ni spremiti. Zato neka jednostavno gdje god mjenja neka stavi SavePlayer( playerid ); ili koristi moju funkciju.
To sto ti govoris je previse i neportrebno spremanje.. Moze i smanjiti vremenki interval ne mora to biti 20 minuta, ja sam dao primjer...
To za izlazenje sa servera stavi da sprema statse pod OnPlayerDisconnect.

Nepotrebno spremanje? On isto ovako radi samo sam mu skratio muku pisanja. I ima to već pročitaj bolje.

ma nekontate me, na gf radi cim ti playerinfo drkas on njemu zapise a nemogu ja igracu dat admina /makeadmin i njemu se upise playerinfo[giveplayerid][pAdmin] = ... i pise mu sada ste admin i tria ceka dok se save njegov acc da moze koristit komande
a bukvalo bi bilo da se save acc svako sekund

pa gf ima OnPlayerUpdateEx.
iako već oćeš onda stavi po OnPlayerUpdate da mu sprema statse.

Citat: RolePlay poslato Septembar 04, 2014, 16:09:37 POSLE PODNE
ma nekontate me, na gf radi cim ti playerinfo drkas on njemu zapise a nemogu ja igracu dat admina /makeadmin i njemu se upise playerinfo[giveplayerid][pAdmin] = ... i pise mu sada ste admin i tria ceka dok se save njegov acc da moze koristit komande
a bukvalo bi bilo da se save acc svako sekund
Ti ne kontaš osnove, pogledaj moju funkciju.

ahaaam

znaci umisto svugdi playerinfo da koristim tvoj saveplayerenum