Započeo CADILAB
•19. Jan. 2014.• Zaključano[Pomoc] Ispravnost komande
410
pregleda
8
postova
Administrator
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP Doprinos21
Saradnik
16 / 500 XP
Doprinosilac(50)
2,745
Postovi:
151
Teme:
Pridružio se:Jul 2011
19. Jan. 2014.
Skripta koju koristim: Bezveze nesto od 0
Detaljan opis problema: Zanima me da li je ova komanda ispravna. Komanda u bazi namjesti admin level na koji ja hocu, ali u igri ne reaguje.
kada ga iskucam u ovoj komandi, nece da izbaci
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Detaljan opis problema: Zanima me da li je ova komanda ispravna. Komanda u bazi namjesti admin level na koji ja hocu, ali u igri ne reaguje.
CMD:postaviadmina(playerid, params[])
{
if(PlayerInfo > HEAD || !IsPlayerAdmin(playerid)) return NoPremission(playerid);
{
new id, kol;
if(sscanf(params, "ui", id, kol)) return SCM(playerid, GRAD3, "Koristite: /postaviadmina [Igracev ID] [Level 1-6)");
if(!IsPlayerConnected(id)) return SCM(playerid, CRVENA, "Taj igrac nije u igri");
new var;
format(var, sizeof(var), "Postavili ste %s za administratora level %d", id, kol);
SCM(playerid, ZELENA, var);
format(var, sizeof(var), "Postavljeni ste za administratora nivo %d, Admin: %s", kol, playerid);
SCM(id, SVETLOPLAVA, var);
PlayerInfo = kol;
new Query;
format(Query, sizeof(Query), "UPDATE `korisnici` SET `Admin` = '%d' WHERE `Ime` = '%s' LIMIT 1", kol, ImeIgraca(id));
mysql_query(Query);
}
return 1;
}kada ga iskucam u ovoj komandi, nece da izbaci
CMD:admini(playerid, params[])
{
new ime;
SCM(playerid, CRVENA, "________________ Administratori ________________");
foreach(Player, i)
{
if(PlayerInfo > 0 && PlayerInfo < HEAD && IsPlayerConnected(i))
{
GetPlayerName(i,ime,MAX_PLAYER_NAME);
format(CmdString, 128, "Admin: {FFFFFF}%s | {33CCFF}Nivo: {FFFFFF}%d", ime, PlayerInfo);
SCM(playerid, CRVENA, CmdString);
}
}
return 1;
}Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Hustler
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
53
Postovi:
3
Teme:
Pridružio se:Avg. 2013
19. Jan. 2014.
http://balkan-samp.com/forum/index.php?topic=15196.msg109693#msg109693 ProuÄi ovo.
Dakle vidi, ti si stavio ovu provjeru na komandu /admini
Ovo ti je ispravno.
Dakle vidi, ti si stavio ovu provjeru na komandu /admini
if(PlayerInfo > 0 && PlayerInfo < HEAD && IsPlayerConnected(i))To znaÄi ako je igraÄeva var veća od admina manja od head admina i joÅ¡ ako je konektovan. Nema logike.Ovo ti je ispravno.
CMD:admini(playerid, params[])
{
new ime;
SCM(playerid, CRVENA, "________________ Administratori ________________");
foreach(Player, i)
{
if(PlayerInfo > 0 || PlayerInfo < HEAD && IsPlayerConnected(i))
{
GetPlayerName(i,ime,MAX_PLAYER_NAME);
format(CmdString, 128, "Admin: {FFFFFF}%s | {33CCFF}Nivo: {FFFFFF}%d", ime, PlayerInfo);
SCM(playerid, CRVENA, CmdString);
}
}
return 1;
}Komanda /postaviadmina ti djeluje sasvim uredu.Shot Caller
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
113
Postovi:
9
Teme:
Pridružio se:Avg. 2011
19. Jan. 2014.
if(PlayerInfo > 0 || PlayerInfo < HEAD && IsPlayerConnected(i))fali ti nula poslije prve provjere, prije ILI. Ako si ubacio for petlju koja vrti od 0 do MAX_PLAYERS, Å¡ta će ti onda provjera da li je igraÄ konektovan?
Shot Caller
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
113
Postovi:
9
Teme:
Pridružio se:Avg. 2011
19. Jan. 2014.
Da nije bilo potrebe za mojim komentarom, ne bi znao za 0 sigurno. Vidim kako si editovao, nimalo ne ÄitaÅ¡ kod, ofrljoke si kopirao samo, falio ti najbitniji dio. Samo ne znam koja svrha te provjere, kad provjera igraÄa od ID 0 do maksimalnog broja IDova, mislim stvarno, kranje ne potrebno.
Hustler
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
53
Postovi:
3
Teme:
Pridružio se:Avg. 2013
19. Jan. 2014.
Pa Å¡ta desilo se i Å¡ta, sluÄajno kako sam briso a nisam ni gledo. Pa provjera nema svrhe al' ako on tako radi nek radi Å¡ta mu mi možemo tu, nemoj dalje komentarisat bespotrebno je i spam.
Administrator
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP Doprinos21
Saradnik
16 / 500 XP
Doprinosilac(50)
2,745
Postovi:
151
Teme:
Pridružio se:Jul 2011
19. Jan. 2014.
Hvala radi, al sad mi je problem sto komande za admine ne rade, pise Nemate ovlastenje
CMD:postaviadmina(playerid, params[])
{
if(PlayerInfo > HEAD || !IsPlayerAdmin(playerid)) return NoPremission(playerid);
{
new id, kol;
if(sscanf(params, "ui", id, kol)) return SCM(playerid, GRAD3, "Koristite: /postaviadmina [Igracev ID] [Level 1-6)");
if(!IsPlayerConnected(id)) return SCM(playerid, CRVENA, "Taj igrac nije u igri");
new var;
format(var, sizeof(var), "Postavili ste %s za administratora level %d", id, kol);
SCM(playerid, ZELENA, var);
format(var, sizeof(var), "Postavljeni ste za administratora nivo %d, Admin: %s", kol, playerid);
SCM(id, SVETLOPLAVA, var);
PlayerInfo = kol;
new Query;
format(Query, sizeof(Query), "UPDATE `korisnici` SET `Admin` = '%d' WHERE `Ime` = '%s' LIMIT 1", kol, ImeIgraca(id));
mysql_query(Query);
}
return 1;
}
CMD:kick(playerid, params[])
{
if(PlayerInfo > 1 && !IsPlayerAdmin(playerid)) return NoPremission(playerid);
{
new id, razlog;
if(sscanf(params, "us", id, razlog)) return SCM(playerid, GRAD2, "Koristite: /kick [Igracev ID] ");
if(!IsPlayerConnected(id)) return SCM(playerid, CRVENA, "Taj igrac nije u igri");
new kickstr;
format(kickstr, sizeof(kickstr), "Igrac %s je uspesko kikovan, Razlog: %s", ImeIgraca(id), razlog);
SCM(playerid, SVETLOCRVENA, kickstr);
format(kickstr, sizeof(kickstr), "Admin %s vas je kikovao sa servera. Razlog: %s", ImeIgraca(playerid), razlog);
SCM(playerid, SVETLOPLAVA, kickstr);
SetTimerEx("KickTimer", 1000, false, "i", id);
}
return 1;
}Underboss
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
579
Postovi:
114
Teme:
Pridružio se:Jul 2012
19. Jan. 2014.
Gresis provere da li je admin
Ti si uradio ovako
A ovako treba :
Ti si uradio ovako
if(PlayerInfo > 1 && !IsPlayerAdmin(playerid)) return NoPremission(playerid); // sto znaci da ako je Admin level 1 ili vise znaci da nema permisijuA ovako treba :
if(PlayerInfo < 1 && !IsPlayerAdmin(playerid)) return NoPremission(playerid); // ako je manji admin od 1 znaci da moze. Presudan ti je znak ">, < , ="CMD:postaviadmina(playerid, params[])
{
if(PlayerInfo < HEAD || !IsPlayerAdmin(playerid)) return NoPremission(playerid);
{
new id, kol;
if(sscanf(params, "ui", id, kol)) return SCM(playerid, GRAD3, "Koristite: /postaviadmina [Igracev ID] [Level 1-6)");
if(!IsPlayerConnected(id)) return SCM(playerid, CRVENA, "Taj igrac nije u igri");
new var;
format(var, sizeof(var), "Postavili ste %s za administratora level %d", id, kol);
SCM(playerid, ZELENA, var);
format(var, sizeof(var), "Postavljeni ste za administratora nivo %d, Admin: %s", kol, playerid);
SCM(id, SVETLOPLAVA, var);
PlayerInfo = kol;
new Query;
format(Query, sizeof(Query), "UPDATE `korisnici` SET `Admin` = '%d' WHERE `Ime` = '%s' LIMIT 1", kol, ImeIgraca(id));
mysql_query(Query);
}
return 1;
}
CMD:kick(playerid, params[])
{
if(PlayerInfo < 1 && !IsPlayerAdmin(playerid)) return NoPremission(playerid);
{
new id, razlog;
if(sscanf(params, "us", id, razlog)) return SCM(playerid, GRAD2, "Koristite: /kick [Igracev ID] ");
if(!IsPlayerConnected(id)) return SCM(playerid, CRVENA, "Taj igrac nije u igri");
new kickstr;
format(kickstr, sizeof(kickstr), "Igrac %s je uspesko kikovan, Razlog: %s", ImeIgraca(id), razlog);
SCM(playerid, SVETLOCRVENA, kickstr);
format(kickstr, sizeof(kickstr), "Admin %s vas je kikovao sa servera. Razlog: %s", ImeIgraca(playerid), razlog);
SCM(playerid, SVETLOPLAVA, kickstr);
SetTimerEx("KickTimer", 1000, false, "i", id);
}
return 1;
}Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava
