Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Pollat Alemdar poslato Septembar 14, 2014, 06:55:57 PRE PODNE

Naslov: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 06:55:57 PRE PODNE
Skripta koju koristim: moj NL mod
Detaljan opis problema:Eh ovako momci , imam jedan problem , vjerujem da je većina vas upoznato sa " GOLD-ovima " , eh imam tu jedan problem.. I općenito što se tiče sve imovine , dosta toga zna nestati nakon toga što neki igrač ode relog ili jednostavno bude restart , pa me interesuje zna li neko gdje mogu postaviti da mi češće sprema račune i da li to stvari neko opterećenje ako bih postavio primjer dajem da svakih 5 minuta spremi račune. Znači nakon što igrač ode relog ili bude restart servera uvijek znači , uvijek nestanu goldovi a i pare znaju često nestati , znači zna li neko gdje mogu naći to gdje mi sprema račune u modu , da postavim malo manje vrijeme odnosno da mi češće sprema račune.
Dio skripte: /
Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 08:48:51 PRE PODNE
Ima ja mislim public SpremiAccounte, nadji ga u skripti i podesi kako tebi odgovara.
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 17:12:55 POSLE PODNE
Da ima , ali mozes mi malo pojasniti pogleda npr ovo : spremiacc = SetTimer("SpremiAccounte", 1200000+random(20000), true); Ne kontam malo ove cifre , ako možete pojasniti heh :)
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 17:16:13 POSLE PODNE
1200000 = 20 minuta i na to se dodaje random vrijeme od 20 sekundi.

Znaci maksimalno za koliko ti se spremaju racuni moze biti 20 minuta i 20 sekundi, a minimalno 20 minuta i 1 sekunda.
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 17:21:06 POSLE PODNE
Hvala na odgovoru :) , interesuje me da li nešto šteti serveru ili ga usporava ili bilo šta negativno ako bih stavio spremanje svakih 5 minuta ? :)
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 17:24:21 POSLE PODNE
Citat: Pollat Alemdar poslato Septembar 14, 2014, 17:21:06 POSLE PODNE
Hvala na odgovoru :) , interesuje me da li nešto šteti serveru ili ga usporava ili bilo šta negativno ako bih stavio spremanje svakih 5 minuta ? :)

Moze stvoriti lag ali sve zavisi od broja igraca.
Posto vidim da koristis mysql zasto ne radis da odma nakon promjene nekog statsa mu to i cuva?
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 17:25:12 POSLE PODNE
I to je moguće ? - Kako da to odradim ?
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 17:27:30 POSLE PODNE
Evo ti primjer iz NL moda:


new ime[MAX_PLAYER_NAME], upit[128];
ImeIgraca(playerid, ime);
format(upit, sizeof(upit), "UPDATE `Igraci` SET `DozvolaVoznja` = '1' WHERE `Ime` = '%s'", ime);
mysql_query(upit, THREAD_OSTALO);
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 17:34:53 POSLE PODNE
Ovako bi trebao odraditi za čitav stats,je li ? :)
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 17:37:42 POSLE PODNE
Citat: Pollat Alemdar poslato Septembar 14, 2014, 17:34:53 POSLE PODNE
Ovako bi trebao odraditi za čitav stats,je li ? :)

Ne moras za kompletan, npr. ako dodje do promjene igracevog novca ti stavis da mu cuva samo novac, stavis odmah u tu komandu sa kojom dobije novac ako je rijec o komandi (ovo je samo primjer).
Jos jedan primjer, ako npr. kupi telefon, stavis samo da mu cuva telefon?


Kontas sad?
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 17:47:32 POSLE PODNE
Ne razumijem matere mi , de mi pojasni na vise primjera kako bi to trebalo raditi ako ti nije teško , jer ne shavatam ( inače 2 mjeseca skriptam :) )
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 17:59:18 POSLE PODNE
Citat: Pollat Alemdar poslato Septembar 14, 2014, 17:47:32 POSLE PODNE
Ne razumijem matere mi , de mi pojasni na vise primjera kako bi to trebalo raditi ako ti nije teško , jer ne shavatam ( inače 2 mjeseca skriptam :) )

Primjer komanda za davanje novca:


CMD:dajnovac(playerid, params[])
{
new id, novac;
if(sscanf(params, "ui", id, novac)) return SCM(playerid, -1, "Bla bla!");
PlayerInfo[playerid][Novac] += novac;
new ime[MAX_PLAYER_NAME], upit[128];
ImeIgraca(playerid, ime);
format(upit, sizeof(upit), "UPDATE `Igraci` SET `Novac` = '%d' WHERE `Ime` = '%s'", PlayeInfo[playerid][Novac],ime);
mysql_query(upit, THREAD_OSTALO);
return 1;
}


Posto si pocetnik ne preporucujem ti da radis sa mysql-om.
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: Pollat Alemdar poslato Septembar 14, 2014, 18:29:11 POSLE PODNE
Imam jedan warning pri kompajlu , local variable "upit" shadows a variable at a preceding level :/
Naslov: Odg: [Pomoc] Spremanje računa
Poruka od: [CH]Lenon poslato Septembar 14, 2014, 18:29:53 POSLE PODNE
Citat: Pollat Alemdar poslato Septembar 14, 2014, 18:29:11 POSLE PODNE
Imam jedan warning pri kompajlu , local variable "upit" shadows a variable at a preceding level :/

Znaci da ti je "upit" vec definisano, preimenuj ga samo.