Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: ZicMortal poslato Avgust 05, 2010, 16:10:36 POSLE PODNE

Naslov: CMD /unban.
Poruka od: ZicMortal poslato Avgust 05, 2010, 16:10:36 POSLE PODNE
Dakle pokusavam slozit unban da nemoram brisat acc. Jer izvorna komanda /unban je napravljena da pobrise acc zeljenog igraca. Koristi se funkcija fremove... a to je funkcija iz includea file.

Sad zanima me kako da napravim da pri komandi unban da se otvori igracev fajl (acc) i da se u njemu izmjeni neki zeljeni playerinfo. Pokusavao sam probati nekako ali neznam na koju foru.

Btw. pokusavam prilagoditi /unban da ga lakse koristim. Tj da nemoram vracat statse nekome kad dobije unban.

Hvala.
Naslov: Odg: CMD /unban.
Poruka od: LordShigi poslato Avgust 05, 2010, 16:15:21 POSLE PODNE
Iskreno moram opet prouciti GF da ti dam tocno sto treba. Vidis zato ja koristim mysql jer tamo za unban treba samo 1 query.
Naslov: Odg: CMD /unban.
Poruka od: Chris poslato Avgust 05, 2010, 16:19:08 POSLE PODNE
Iskreno ovo ce ti najbolje odgovorit zoran jer ch to ima kolko sam vidio a neznam koji jos server bi imao...
Naslov: Odg: CMD /unban.
Poruka od: ZicMortal poslato Avgust 05, 2010, 16:21:29 POSLE PODNE
Ma vidite, trazim tak dobre stvari  :D.. kao primjerice da ti se iseli auto/kuca/bizz kad dobijes unban. Mislim to mogu i sam napravit, al ovo malo teze.

Naslov: Odg: CMD /unban.
Poruka od: Dr.Ivex → ♫ poslato Avgust 05, 2010, 16:24:00 POSLE PODNE
hmm zanimljivo .. probaj ovako nekako ...


if (strcmp(cmd, "/rmban", true)==0)
{
new igrac[32];
   if((IsPlayerAdmin(playerid)))
   {
       igrac = strtok(cmdtext, idx);
       if(!strlen(igrac))
{
       SendClientMessage(playerid, COLOR_WHITE, "KORISTENJE: /rmban[Ime_Prezime]");
           return 1;
}
new String[32];
format(String, sizeof(String), "%s.ini", igrac);
if(fexist(String) == 1)
{
new File: hFile = fopen(String, io_append);
if (hFile)
{
new TajVar[32];
format(TajVar, 32, "Banan=%d",0);fwrite(hFile, TajVar);
fclose(hFile);
              SCM(playerid,COLOR_LIGHTRED,"unbanan!");
                                              }
else
{
SCM(playerid,COLOR_LIGHTRED,"Ne postoji!");
}
itd itd itd

edit: ovo di sam stavio "tajvar"pa sam stavio "banan" tu stavis svoju varijbalu koju mjenjas ili tako nes .. mislim da bi na tu foru trebalo radit
Naslov: Odg: CMD /unban.
Poruka od: LordShigi poslato Avgust 05, 2010, 16:26:11 POSLE PODNE
Gle u teoriji bi ti trebao napraviti isto to sto se dogada kod logina samo bi ti to trebao potaknuti rucno.
Naslov: Odg: CMD /unban.
Poruka od: [LB]Theo poslato Avgust 05, 2010, 16:40:32 POSLE PODNE
Trebaš loadati cijeli user fajl, vrijednosti spremiti u neki temp array, promijeniti šta želiš i onda sve u kompletu spremiti natrag u fajl.

Ako koristiš GF mod, onda potraži primjere pod OnPlayerLogin (loadanje statsa iz fajla) i OnPlayerUpdate (spremanje statsa u fajl).

Sad neznam da li postoji neki bolji naćin, no ovako sam ja to sebi napravio i radi. ;)
Naslov: Odg: CMD /unban.
Poruka od: ZicMortal poslato Avgust 05, 2010, 16:49:04 POSLE PODNE
Prebacim iz onplayerlogin load fajlova, i samo napravim onplayerupdate dolje  :)
Naslov: Odg: CMD /unban.
Poruka od: Dude poslato Avgust 05, 2010, 17:37:10 POSLE PODNE
moras prvo ucitat statse iz filea bananog igraca, recino napravi si enum za unban i u njega ucitaj, promijeni varijablu koja ti je za ban kao da nije ban. Zatim obrisi taj acc i kreiraj novi sa statsima koje si ucitao u novi enum ali sa onom promjenom za bananog igraca i to je to...
Naslov: Odg: CMD /unban.
Poruka od: LordShigi poslato Avgust 05, 2010, 18:11:07 POSLE PODNE
A zasto se jednostavno nebi otvorio postojeci i izmjenio što treba?
Naslov: Odg: CMD /unban.
Poruka od: Dude poslato Avgust 05, 2010, 18:25:49 POSLE PODNE
ne smijes istodobno ucitavat i pisat dio po dio jer ce doci do gresaka... prouci rad sa datotekama, ne smijes istodobno otvorit istu i odmah dok je otvorena upisivat u nju...
Naslov: Odg: CMD /unban.
Poruka od: LordShigi poslato Avgust 05, 2010, 18:27:25 POSLE PODNE
Aha, good to know. Nisam previse radio s tim tako da neznam.
Naslov: Odg: CMD /unban.
Poruka od: Carlsson poslato Avgust 05, 2010, 19:33:24 POSLE PODNE
Malo offa  :P

Ne kužim zašt dok daješ unban moraš vraćati statse na novi acc?
Naslov: Odg: CMD /unban.
Poruka od: ZicMortal poslato Avgust 05, 2010, 19:35:07 POSLE PODNE
Citat: Carlsson poslato Avgust 05, 2010, 19:33:24 POSLE PODNE
Malo offa  :P

Ne kužim zašt dok daješ unban moraš vraćati statse na novi acc?

Zbog ovoga Slone...


format(string,sizeof(string),"%s.ini",tmp);
fremove(string);


Remove = odstrani, pobrisi... i od prilike niceg drugog nema kao komanda /deleteaccount