Skripta koju koristim:FGaming
Detaljan opis problema: U Pawnu kad kompajlam sve je u redu bez erora ... Ali kad udjem u igru ispisem /a Pise vlasnik a kad promenim admin level jedino sto pise je head
Dio skripte: YCMD:a(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
new text[85];
if(sscanf(params, "s[85]", text)) return Koristi(playerid, "a [tekst]");
if(strlen(text) >= 84) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 84 slova/znaka!");
if(PI[playerid][Admin] >= 6 || IsPlayerAdmin(playerid))
{
new arank[64];
if(PI[playerid][Pol] == 1)
{
if(PI[playerid][Admin] == 8) { arank = "Vlasnik"; }
else { arank = "Vlasnik"; }
format(conelys, 128, "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s",arank , ImeIgraca(playerid), text);
}
if(PI[playerid][Pol] == 2)
{
if(PI[playerid][Admin] == 8) { arank = "Vlasnica"; }
else { arank = "Vlasnica"; }
format(conelys, 128, "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s",arank , ImeIgraca(playerid), text);
}
AdminPoruka(0x00FFEEFF, conelys);
}
else if(PI[playerid][Admin] > 0 && PI[playerid][Admin] < 6)
{
if(PI[playerid][Pol] == 1)
{
format(conelys, 128, "|{FFFFFF}A{00FFEE}| Admin %d %s: {FFFFFF}%s", PI[playerid][Admin], ImeIgraca(playerid), text);
}
if(PI[playerid][Pol] == 2)
{
format(conelys, 128, "|{FFFFFF}A{00FFEE}| Adminka %d %s: {FFFFFF}%s", PI[playerid][Admin], ImeIgraca(playerid), text);
}
AdminPoruka(0x00FFEEFF, conelys); //0xC96666FF
}
else return Ovlascenje(playerid);
return 1;
}
Zatim kada dodam za Suvlasnika prodje sve bez errora ali u chatu pise head admin ...
Evo i G chata YCMD:g(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return SCM(playerid, CRVENA, "ERROR {FFFFFF}Utisani ste, ne mozete koristiti chat.");
new text[85];
if(sscanf(params, "s[85]", text)) return Koristi(playerid, "g [tekst]");
if(strlen(text) >= 84) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 84 slova/znaka!");
if(PI[playerid][Pol] >= 1)
{
if(PI[playerid][Admin] >= 1 || IsPlayerAdmin(playerid))
{
new arank[64];
if(PI[playerid][Admin] == 8) { arank = "Vlasnik"; }
else { arank = "Admin"; }
format(conelys, 128, "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s",arank , ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][Admin] > 0 && PI[playerid][Admin] < 7)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Admin %d %s: {FFFFFF}%s ", PI[playerid][Admin], ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] >= 5)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Vodja Helpera %s: {FFFFFF}%s", ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] >= 4)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| [Z-Head] Helpera %s: {FFFFFF}%s", ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] > 0 && PI[playerid][GM] < 3)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Helper %d %s: {FFFFFF}%s", PI[playerid][GM], ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else return Ovlascenje(playerid);
}
if(PI[playerid][Pol] == 2)
{
if(PI[playerid][Admin] >= 8 || IsPlayerAdmin(playerid))
{
new arank[64];
if(PI[playerid][Admin] == 8) { arank = "Vlasnica"; }
else { arank = "Adminka"; }
format(conelys, 128, "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s",arank , ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][Admin] > 0 && PI[playerid][Admin] < 7)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Adminka %d %s: {FFFFFF}%s", PI[playerid][Admin], ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] >= 5)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Head Helperka %s: {FFFFFF}%s", ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] >= 4)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| [Z-Head] Helpera %s: {FFFFFF}%s", ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else if(PI[playerid][GM] > 0 && PI[playerid][GM] < 3)
{
format(conelys, 128, "|{FFFFFF}G"SERVER"| Helperka %d %s: {FFFFFF}%s", PI[playerid][GM], ImeIgraca(playerid), text);
gchat(ZELENA2, conelys);
}
else return Ovlascenje(playerid);
}
return 1;
}
Ako neko moze da pomogne svasta samp pokusavao ali ne ide ... :-X
CMD:a(playerid, params[]) {
new const admin_level = PI[playerid][Admin];
if (admin_level < 1)
return Ovlascenje(playerid);
if (isnull(params))
return SendClientMessage(playerid, -1, "/a [text]");
new buffer[128];
if (PI[playerid][Pol] == 1 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnik";
else if (PI[playerid][Pol] == 2 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnica";
else format(buffer, 32, "Admin%slevel %d", (PI[playerid][Pol] == 1) ? (" ") : ("ka "), admin_level);
format(buffer, sizeof buffer, "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", buffer, ImeIgraca(playerid), params);
AdminPoruka(0x00FFEEFF, buffer); //0xC96666FF
return 1;
}
- Efikasnije
- Razumnije
Ovako ja radim.
Ako zelis da ti bude ovo musko ili zensko(Admin-Adminka).
Ti izmenjaj ova imena jer ja nzm kako se tebi zove Admin5,6,7 itd.
Kod nije ni optimizovan jer nzm tvoj mod.
To ces morati sam da uradis ako znas.
Ti sada vidi na ovom primeru pa tako slicno odradi i G cet.
Respect [Dev] Muma
@pizzaUcio na njegovim primerima. :)
[pawn]YCMD:a(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if(PI[playerid][Admin] < 1) return Ovlascenje(playerid);
new adminchat[100];
if(sscanf(params, "s[100]", adminchat)) return Koristi(playerid, "/a [ tekst ]");
if(strlen(adminchat) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
else
{
if(PI[playerid][Pol] == 1)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktor"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnik"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
else if(PI[playerid][Pol] == 2)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnica"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
}
return 1;
}[/pawn]
Ili jednostavno pod AdminPoruka ili GMPoruka kako si već name-ovo funkciju dodaš kod ispod kako nebiš na svakom chatu(admin/gm) poruci morao praviti poruku da li je admin/gm žensko ili šta već.
[pawn]
new buff[128];
format(buff, sizeof buff, "(chat) Admin%s(%d) %s: %s", (PI[playerid][Pol] == 2) ? ("ka") : (" "), PI[playerid][Admin], ImeIgraca(playerid), params);
AdminPoruka(-1, buff); // -1 zamjeni sa željnom bojom.
poruka: (chat) -> Admin(/ka- ako je osoba žensko) -> (level admina) -> Ime Osobe -> poruka.
[/pawn]
Ako imaÅ¡ posebna imena Admina/GM-ova napraviÅ¡ jednu funkciju gdje uneseÅ¡ sva imena rankova te Äe ih on automatski u AdminPoruci "izmjeniti" ako je ženski admin. Exmpl:
[pawn]GetAdminRank(playerid)
{
new admin_names[ //+1 ]; // string dodaš koliko ti je potreban kada budeš upisivo ime rankova.
switch(PI[playerid][Admin])
{
case 1:
admin_names= "BlaBla";
case 2:
admin_names= "BlaBla";
default:
admin_names= "BlaBla";
}
return admin_names;
}[/pawn]
Gore sam ti dao primjer za funkciju kako ÄeÅ¡ dobivati lakÅ¡e imena rankova umijesto da piÅ¡eÅ¡ posebno kod usred neke komande za provijeru admin ranka i zatim da dodajeÅ¡ ime posebnom ranku u svakoj komandi gdje ti je potrebno.
Nakon svega kako bi ti otprilike trebalo sve izgledati:
[pawn]format(buff, sizeof buff, "(chat) %s%s(%d) %s: %s", GetAdminRank(playerid), (PI[playerid][Pol] == 2) ? ("ka") : (" "), PI[playerid][Admin], ImeIgraca(playerid), params);
AdminPoruka(-1, buff); // -1 zamjeni sa željnom bojom.
poruka: (chat) -> Ime Admin Ranka(/ka- ako je osoba žensko) -> (level admina) -> Ime Osobe -> poruka.[/pawn]
Naravno ovo je bilo sve primjer, ti kako hoÄeÅ¡, mijenjaj dodavaj/itkd.
Citat: // xunder poslato Novembar 06, 2018, 00:21:00 PRE PODNE
CMD:a(playerid, params[]) {
new const admin_level = PI[playerid][Admin];
if (admin_level < 1)
return Ovlascenje(playerid);
if (isnull(params))
return SendClientMessage(playerid, -1, "/a [text]");
new buffer[128];
if (PI[playerid][Pol] == 1 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnik";
else if (PI[playerid][Pol] == 2 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnica";
else format(buffer, 32, "Admin%slevel %d", (PI[playerid][Pol] == 1) ? (" ") : ("ka "), admin_level);
format(buffer, sizeof buffer, "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", buffer, ImeIgraca(playerid), params);
AdminPoruka(0x00FFEEFF, buffer); //0xC96666FF
return 1;
}
- Efikasnije
- Razumnije
Uradio sam to sve podesio po mom modu medjutim u igri /a eee nista ne izlazi ...
Resio sam Hvala svima a posebno Drakuli :D
Moze LOCK !
Ipak nisam resio G chat :/ Kad pisem na /g izadje mi da moj frend pise to jest Njegovo ime i admin i ne pise nista ... G chat sam stavio slicno kao A chat promenio sta treba ali ne valja ...
Daj komandu za G da vidim kako si je odradio.
YCMD:g(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return SCM(playerid, CRVENA, "ERROR {FFFFFF}Utisani ste, ne mozete koristiti chat.");
new text[85];
if(sscanf(params, "s[85]", text)) return Koristi(playerid, "g [tekst]");
if(strlen(text) >= 84) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 84 slova/znaka!");
if(PI[playerid][Pol] == 1)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Admin Level [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Admin Level [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Admin Level [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Admin Level [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Head Admin"; }
else if(PI[playerid][Admin] == 6) { rank = "Direktor"; }
else if(PI[playerid][Admin] == 7) { rank = "Suvlasnik"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnik"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), text);
}
else if(PI[playerid][Pol] == 2)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Adminka Level [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Adminka Level [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Adminka Level [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Adminka Level [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Head Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Direktorka"; }
else if(PI[playerid][Admin] == 7) { rank = "Suvlasnica"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnica"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), text);
if(PI[playerid][Admin] > 0)
}
}
return 1;
}
Morao sam vratiti na staro jer kad upisem nesto ili se ne vidi ili pise da je to neko drugi sa srw-a napisao...
A na staro mi je samo pisalo Admin 1 nprmr i to je to ...
Citat: // xunder poslato Novembar 06, 2018, 00:21:00 PRE PODNE
CMD:a(playerid, params[]) {
new const admin_level = PI[playerid][Admin];
if (admin_level < 1)
return Ovlascenje(playerid);
if (isnull(params))
return SendClientMessage(playerid, -1, "/a [text]");
new buffer[128];
if (PI[playerid][Pol] == 1 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnik";
else if (PI[playerid][Pol] == 2 && (admin_level == 6 || IsPlayerAdmin(playerid))) buffer = "Vlasnica";
else format(buffer, 32, "Admin%slevel %d", (PI[playerid][Pol] == 1) ? (" ") : ("ka "), admin_level);
format(buffer, sizeof buffer, "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", buffer, ImeIgraca(playerid), params);
AdminPoruka(0x00FFEEFF, buffer); //0xC96666FF
return 1;
}
- Efikasnije
- Razumnije
Ovo bi trebalo sasvim normalno da radi ako je funkcija AdminPoruka napravljena kako treba
AdminPoruka(color, const message[]) {
foreach(new i : Player) if (PI[i][Admin]) SendClientMessage(i, color, message);
return 1;
}
Citat: // xunder poslato Novembar 06, 2018, 21:00:00 POSLE PODNE
Ovo bi trebalo sasvim normalno da radi ako je funkcija AdminPoruka napravljena kako treba
AdminPoruka(color, const message[]) {
foreach(new i : Player) if (PI[i][Admin]) SendClientMessage(i, color, message);
return 1;
}
Radi meni A Chat ali ne i G ... Na g chatu mi ne ocitava rankove ili mi izbaci 20 errora :-X
Admin cet:
[pawn]
YCMD:a(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if(PI[playerid][Admin] < 1) return Ovlascenje(playerid);
new adminchat[100];
if(sscanf(params, "s[100]", adminchat)) return Koristi(playerid, "/a [ tekst ]");
if(strlen(adminchat) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
else
{
if(PI[playerid][Pol] == 1)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktor"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnik"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
else if(PI[playerid][Pol] == 2)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnica"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
}
return 1;
}[/pawn]
G cet:
Ja san na G cet uradio i za VIP i Promoter(ti vidi nzm kako je kod tebe, proveri malo)
moras da proveris i ovo Ovlascenje(playerid), jer ako ti su tamo sjebane dozvole, nece ti cet raditi kako treba(Adnim, a ni G)
[pawn]
YCMD:g(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 return Ovlascenje(playerid);
new gchatt[100];
if(sscanf(params, "s[100]", gchatt)) return Koristi(playerid, "/g [ tekst ]");
if(strlen(gchatt) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
else
{
if(PI[playerid][Pol] == 1)
{
new rankk[25], stringg[180];
if(PI[playerid][Admin] == 1) { rankk = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { rankk = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { rankk = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { rankk = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { rankk = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { rankk = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rankk = "Direktor"; }
else if(PI[playerid][Admin] == 8) { rankk = "Vlasnik"; }
else if(PI[playerid][GM] == 1) { rankk = "Helper[1]"; }
else if(PI[playerid][GM] == 2) { rankk = "Helper[2]"; }
else if(PI[playerid][GM] == 3) { rankk = "Helper[3]"; }
else if(PI[playerid][GM] == 4) { rankk = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { rankk = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { rankk = "VIP"; }
else if(PI[playerid][Promoter] > 0) { rankk = "Promoter"; }
else { rankk = ""; }
format(stringg, sizeof(stringg), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", rankk, ImeIgraca(playerid), gchatt);
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 { gchat(ZELENA2, stringg); }
}
else if(PI[playerid][Pol] == 2)
{
new rankk[25], stringg[180];
if(PI[playerid][Admin] == 1) { rankk = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { rankk = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { rankk = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { rankk = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { rankk = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rankk = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rankk = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { rankk = "Vlasnica"; }
else if(PI[playerid][GM] == 1) { rankk = "Helperka [1]"; }
else if(PI[playerid][GM] == 2) { rankk = "Helperka [2]"; }
else if(PI[playerid][GM] == 3) { rankk = "Helperka [3]"; }
else if(PI[playerid][GM] == 4) { rankk = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { rankk = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { rankk = "VIP"; }
else if(PI[playerid][Promoter] > 0) { rankk = "Promoterka"; }
else { rankk = ""; }
format(stringg, sizeof(stringg), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", rankk, ImeIgraca(playerid), gchatt);
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 { gchat(ZELENA2, stringg); }
}
}
return 1;
}[/pawn]
Citat: .Drakula. poslato Novembar 06, 2018, 21:04:27 POSLE PODNE
Admin cet:
[pawn]
YCMD:a(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if(PI[playerid][Admin] < 1) return Ovlascenje(playerid);
new adminchat[100];
if(sscanf(params, "s[100]", adminchat)) return Koristi(playerid, "/a [ tekst ]");
if(strlen(adminchat) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
else
{
if(PI[playerid][Pol] == 1)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktor"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnik"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
else if(PI[playerid][Pol] == 2)
{
new rank[25], string[180];
if(PI[playerid][Admin] == 1) { rank = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { rank = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { rank = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { rank = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { rank = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rank = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rank = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { rank = "Vlasnica"; }
else { rank = ""; }
format(string, sizeof(string), "|{FFFFFF}A{00FFEE}| %s %s: {FFFFFF}%s", rank, ImeIgraca(playerid), adminchat);
if(PI[playerid][Admin] > 0) { AdminPoruka(0x00FFEEFF, string); }
}
}
return 1;
}[/pawn]
G cet:
Ja san na G cet uradio i za VIP i Promoter(ti vidi nzm kako je kod tebe, proveri malo)
moras da proveris i ovo Ovlascenje(playerid), jer ako ti su tamo sjebane dozvole, nece ti cet raditi kako treba(Adnim, a ni G)
[pawn]
YCMD:g(playerid, params[],help)
{
if(PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 return Ovlascenje(playerid);
new gchatt[100];
if(sscanf(params, "s[100]", gchatt)) return Koristi(playerid, "/g [ tekst ]");
if(strlen(gchatt) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
else
{
if(PI[playerid][Pol] == 1)
{
new rankk[25], stringg[180];
if(PI[playerid][Admin] == 1) { rankk = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { rankk = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { rankk = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { rankk = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { rankk = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { rankk = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rankk = "Direktor"; }
else if(PI[playerid][Admin] == 8) { rankk = "Vlasnik"; }
else if(PI[playerid][GM] == 1) { rankk = "Helper[1]"; }
else if(PI[playerid][GM] == 2) { rankk = "Helper[2]"; }
else if(PI[playerid][GM] == 3) { rankk = "Helper[3]"; }
else if(PI[playerid][GM] == 4) { rankk = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { rankk = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { rankk = "VIP"; }
else if(PI[playerid][Promoter] > 0) { rankk = "Promoter"; }
else { rankk = ""; }
format(stringg, sizeof(stringg), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", rankk, ImeIgraca(playerid), gchatt);
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 { gchat(ZELENA2, stringg); }
}
else if(PI[playerid][Pol] == 2)
{
new rankk[25], stringg[180];
if(PI[playerid][Admin] == 1) { rankk = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { rankk = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { rankk = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { rankk = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { rankk = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { rankk = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { rankk = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { rankk = "Vlasnica"; }
else if(PI[playerid][GM] == 1) { rankk = "Helperka [1]"; }
else if(PI[playerid][GM] == 2) { rankk = "Helperka [2]"; }
else if(PI[playerid][GM] == 3) { rankk = "Helperka [3]"; }
else if(PI[playerid][GM] == 4) { rankk = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { rankk = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { rankk = "VIP"; }
else if(PI[playerid][Promoter] > 0) { rankk = "Promoterka"; }
else { rankk = ""; }
format(stringg, sizeof(stringg), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", rankk, ImeIgraca(playerid), gchatt);
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 { gchat(ZELENA2, stringg); }
}
}
return 1;
}[/pawn]
error 029: invalid expression, assumed zero
Ovde mi to izlazi
if(PI[playerid][Admin] > 0 && PI[playerid][GM] > 0 && PI[playerid][pVIP] > 0 && PI[playerid][Promoter] > 0 { gchat(ZELENA2, stringg); }
Oooo sry nisam video, greska jer sam pisao kod.
Popravi u celoj komandi G ceta.
Nemoj da koristis && ,koristi ||.
Znacenje:
&& - i,
|| - ili,
https://wiki.sa-mp.com/wiki/Control_Structures
Imas dole kao tabelicu objasnjeno sta koji simbol znaci.
[pawn]
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][pVIP] > 0 || PI[playerid][Promoter] > 0) { gchat(ZELENA2, stringg); }
[/pawn]
Video sam i ja nakon 30 minuta gledanja :D Mada ipak sada kad kucam /g eeee nista nikom ne izlazi .... A u skripti erorra nema
Imam problem ponovo .... :( Kada VIP/Promoter kuca /g eee on ne vidi sta pisa dok admini neki vide neki ne...
Nadji ovo u skripti "Ovlascenje(playerid);"
I posalji da vidim sta je tu uradjeno.
Citat: .Drakula. poslato Novembar 07, 2018, 16:24:24 POSLE PODNE
Nadji ovo u skripti "Ovlascenje(playerid);"
I posalji da vidim sta je tu uradjeno.
stock Ovlascenje(playerid)
{
TextDrawShowForPlayer(playerid, Autorizacija1);
TextDrawShowForPlayer(playerid, Autorizacija2);
SetTimerEx("AutorizacijaKomande", 4000, false, "d", playerid);
return 1;
}
forward AutorizacijaKomande(playerid);
public AutorizacijaKomande(playerid)
{
TextDrawHideForPlayer(playerid, Autorizacija1);
TextDrawHideForPlayer(playerid, Autorizacija2);
return 1;
}
Evo Izvoli, stvarno ne znam sta je problem vise ...
U G cetu druga linija po redu.
U G cetu zameni ovu liniju:
if(PI[playerid][Admin] > 0 || PI[playerid][GM] > 0 || PI[playerid][VIP] > 0 || PI[playerid][Promoter] > 0 return Ovlascenje(playerid);
Sa ovom:
if(PI[playerid][Admin] < 1 && PI[playerid][GM] < 1 && PI[playerid][VIP] < 1 && PI[playerid][Promoter] < 1 return Ovlascenje(playerid);
Ne vredi idalje je isto ... :o
E sada tu moze da ti bude problem do skripte, ako si Admin i sebi das VIP-a.
Znaci ti si Admin 8 i VIP u isto vreme, skripta po mom kodu ne moze da ti odredi sta ce da ti pise kao rank na G cetu.
Ja sam taj problem resio tako sto sam uradio da igrac moze biti samo jedno.
Imas li neki error ili warning.
Vidi sta ti izbaci u server_log kada kao vip kucag /g eeeee
Probaj skini sebi Admina, Helpera sve sto imas i onda tek setaj sebi samo Vip-a i probaj.
Citat: .Drakula. poslato Novembar 07, 2018, 21:16:18 POSLE PODNE
E sada tu moze da ti bude problem do skripte, ako si Admin i sebi das VIP-a.
Znaci ti si Admin 8 i VIP u isto vreme, skripta po mom kodu ne moze da ti odredi sta ce da ti pise kao rank na G cetu.
Ja sam taj problem resio tako sto sam uradio da igrac moze biti samo jedno.
Imas li neki error ili warning.
Vidi sta ti izbaci u server_log kada kao vip kucag /g eeeee
Probaj skini sebi Admina, Helpera sve sto imas i onda tek setaj sebi samo Vip-a i probaj.
Skidao sam vec sve medjutim nista idalje isto ... :)
A u Logu ne pise nista :)
Ajde malo bolje mi obijasni gresku, sta se desava, ako mozes slikaj i ingame
Ovako kad kompajlam sve je u redu nema errora. Kad Admin Bilo koji level napise sve pise kako treba, helper takodje medjutim kada vip ili promoter napise /g aaee to izadje adminima/helperima ali taj VIP/Promoter koji je to napisao ne vidi sta je napisao ...
Verovatno nisi stavio, kad salje poruku, da salje i vipovima i sta jos imas, nego je ostalo samo da salje adminima i helperima, proveri to :D
Moras napraviti posebno za g chat funkciju da vide A/GM vipovi i promoteri jer ako stavis na adminporuka da mogu vip i promoteri vidjet, oni ce moci vidjet kada neko posalje report i slicno
Sve je namesteno, mada ne vredi idalje nece ... :-X
Moras da nadjes u skripti ovo:
gchat(ZELENA2, stringg);
Trazi gchat,
verovatno da je kod ispod toga problem pa ti ne prikazuje poruke vipovina i promoterima.
Citat: .Drakula. poslato Novembar 10, 2018, 14:24:08 POSLE PODNE
Moras da nadjes u skripti ovo:
gchat(ZELENA2, stringg);
Trazi gchat,
verovatno da je kod ispod toga problem pa ti ne prikazuje poruke vipovina i promoterima.
Da, postoji Stock gchat i tu su bili samo helperi i admini sada sam to promenio i nadam se da ce da radi ... :D
YCMD:g(playerid, params[]) {
if (!PI[playerid][Admin] && !PI[playerid][GM] && !PI[playerid][VIP] && !PI[playerid][Promoter]) return Ovlascenje(playerid);
if (PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if (isnull(params)) return Koristi(playerid, "/g [ tekst ]");
if (strlen(params) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
new buffer[192];
if (PI[playerid][Pol] == 1) {
if(PI[playerid][Admin] == 1) { buffer = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { buffer = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { buffer = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { buffer = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { buffer = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { buffer = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { buffer = "Direktor"; }
else if(PI[playerid][Admin] == 8) { buffer = "Vlasnik"; }
else if(PI[playerid][GM] == 1) { buffer = "Helper[1]"; }
else if(PI[playerid][GM] == 2) { buffer = "Helper[2]"; }
else if(PI[playerid][GM] == 3) { buffer = "Helper[3]"; }
else if(PI[playerid][GM] == 4) { buffer = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { buffer = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { buffer = "VIP"; }
else if(PI[playerid][Promoter] > 0) { buffer = "Promoter"; }
else { buffer = ""; }
}
else {
if(PI[playerid][Admin] == 1) { buffer = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { buffer = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { buffer = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { buffer = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { buffer = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { buffer = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { buffer = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { buffer = "Vlasnica"; }
else if(PI[playerid][GM] == 1) { buffer = "Helperka [1]"; }
else if(PI[playerid][GM] == 2) { buffer = "Helperka [2]"; }
else if(PI[playerid][GM] == 3) { buffer = "Helperka [3]"; }
else if(PI[playerid][GM] == 4) { buffer = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { buffer = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { buffer = "VIP"; }
else if(PI[playerid][Promoter] > 0) { buffer = "Promoterka"; }
else { buffer = ""; }
}
format(buffer, sizeof(buffer), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", buffer, ImeIgraca(playerid), params);
foreach(new i : Player)
if (PI[playerid][Admin] || PI[playerid][GM] || PI[playerid][VIP] || PI[playerid][Promoter])
SendClientMessage(i, ZELENA2, buffer);
return 1;
}
Citat: // xunder poslato Novembar 10, 2018, 15:58:06 POSLE PODNE
YCMD:g(playerid, params[]) {
if (!PI[playerid][Admin] && !PI[playerid][GM] && !PI[playerid][VIP] && !PI[playerid][Promoter]) return Ovlascenje(playerid);
if (PI[playerid][Mutiran] != 0) return Error(playerid, "Utisani ste, ne mozete koristiti chat.");
if (isnull(params)) return Koristi(playerid, "/g [ tekst ]");
if (strlen(params) >= 99) return Error(playerid, "Vas text je predugacak. Mozete korisite ukupno 99 slova/znaka!");
new buffer[192];
if (PI[playerid][Pol] == 1) {
if(PI[playerid][Admin] == 1) { buffer = "Admin [1]"; }
else if(PI[playerid][Admin] == 2) { buffer = "Admin [2]"; }
else if(PI[playerid][Admin] == 3) { buffer = "Admin [3]"; }
else if(PI[playerid][Admin] == 4) { buffer = "Admin [4]"; }
else if(PI[playerid][Admin] == 5) { buffer = "Admin [5]"; }
else if(PI[playerid][Admin] == 6) { buffer = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { buffer = "Direktor"; }
else if(PI[playerid][Admin] == 8) { buffer = "Vlasnik"; }
else if(PI[playerid][GM] == 1) { buffer = "Helper[1]"; }
else if(PI[playerid][GM] == 2) { buffer = "Helper[2]"; }
else if(PI[playerid][GM] == 3) { buffer = "Helper[3]"; }
else if(PI[playerid][GM] == 4) { buffer = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { buffer = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { buffer = "VIP"; }
else if(PI[playerid][Promoter] > 0) { buffer = "Promoter"; }
else { buffer = ""; }
}
else {
if(PI[playerid][Admin] == 1) { buffer = "Adminka [1]"; }
else if(PI[playerid][Admin] == 2) { buffer = "Adminka [2]"; }
else if(PI[playerid][Admin] == 3) { buffer = "Adminka [3]"; }
else if(PI[playerid][Admin] == 4) { buffer = "Adminka [4]"; }
else if(PI[playerid][Admin] == 5) { buffer = "Adminka [5]"; }
else if(PI[playerid][Admin] == 6) { buffer = "Vodja Admina"; }
else if(PI[playerid][Admin] == 7) { buffer = "Direktorka"; }
else if(PI[playerid][Admin] == 8) { buffer = "Vlasnica"; }
else if(PI[playerid][GM] == 1) { buffer = "Helperka [1]"; }
else if(PI[playerid][GM] == 2) { buffer = "Helperka [2]"; }
else if(PI[playerid][GM] == 3) { buffer = "Helperka [3]"; }
else if(PI[playerid][GM] == 4) { buffer = "[Z-Head] Helpera"; }
else if(PI[playerid][GM] == 5) { buffer = "Vodja Helpera"; }
else if(PI[playerid][VIP] > 0) { buffer = "VIP"; }
else if(PI[playerid][Promoter] > 0) { buffer = "Promoterka"; }
else { buffer = ""; }
}
format(buffer, sizeof(buffer), "|{FFFFFF}G"SERVER"| %s %s: {FFFFFF}%s", buffer, ImeIgraca(playerid), params);
foreach(new i : Player)
if (PI[playerid][Admin] || PI[playerid][GM] || PI[playerid][VIP] || PI[playerid][Promoter])
SendClientMessage(i, ZELENA2, buffer);
return 1;
}
Ne vredi prijatelju ... Kopirao sam prilagodio sve bez errora dam sebi vipa poskidam sve ostalo /g eee nista ne vidim a kad imam admina i neko drugi kao vip napise /g eee ja vidim a on ne ...
Moras da nadjes u skripti ovo:
gchat(ZELENA2, stringg);
Postavi kod ovde.
Citat: .Drakula. poslato Novembar 10, 2018, 17:28:34 POSLE PODNE
Moras da nadjes u skripti ovo:
gchat(ZELENA2, stringg);
Postavi kod ovde.
stock gchat(color, string[])
{
foreach(Player, i)
{
if(UlogovanProvera[i] == 1)
{
if((PI[i][Admin] > 0 || PI[i][GM] > 0 || PI[i][pVIP] > 0 || PI[i][Promoter] > 0 || IsPlayerAdmin(i)) && gChatActive[i] == true)
{
SCM(i, color, string);
}
}
}
return 1;
}
Jedino ovo sto sam pronasao ...
Ovo:
[pawn]gChatActive == true[/pawn]
Ti ovde imas da gchat mora biti ukljucen ,a u komandi /g nemas nikakvu proveru da li je iskljucen ili ukljucen.
Mozda je iskljucen cet pa ti napises oni ti nista ne ispise u cetu.
Citat: .Drakula. poslato Novembar 10, 2018, 17:41:51 POSLE PODNE
Ovo:
[pawn]gChatActive == true[/pawn]
Ti ovde imas da gchat mora biti ukljucen ,a u komandi /g nemas nikakvu proveru da li je iskljucen ili ukljucen.
Mozda je iskljucen cet pa ti napises oni ti nista ne ispise u cetu.
Vidim, ali ja nemam komandu /gchat ili ti /gon i /goff jer tako je bilo u skripti pa nisam stigao da napravim
Jel bi mogao da mi ispises to posto zurim sa otvaranjem dok sam tu ::)
Ostalo mi je jos to, gps lokacije da dodam i mape da izmenim ...
Ljudi to je to namestio sam problem je bio u ovome sto je Drakula napisao kada sam dodao proradilo je Hvala svima na pomoci
Tema moze lock :D