Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Chuck:) poslato Jul 21, 2011, 16:32:22 POSLE PODNE

Naslov: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 16:32:22 POSLE PODNE
Skripta koju koristim: Street Stories
Detaljan opis problema: Zašto mi GMovi vide /admin chat i /headadminchat :SS
Dio skripte: dolje ću stavit
Neke slike/video za lakse dobivanje pomoci(neobavezno): //


evo:

if(strcmp(cmd, "/a", true) == 0 || strcmp(cmd, "/admin", true) == 0)
{
   if(IsPlayerConnected(playerid))
   {
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Koristi: /a [Admin Chat]");
return 1;
}
format(string, sizeof(string), "|%d|A|%s:{FFFFFF} %s", PlayerInfo[playerid][pAdmin], sendername, result);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
SendAdminMessage(COLOR_LIGHTBLUE, string);
}
printf("Admin %s: %s", sendername, result);
}
return 1;
}


Zašto GMovi vide /report, znači admini bi trebali vidjet /pomoc i report a gmovi samo /pomoc,a oni vide sve :S

evo /report

if(strcmp(cmd, "/report", true) == 0)
{
   if(IsPlayerConnected(playerid))
   {
       GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Koristite: /report [text]");
return 1;
}
format(string, sizeof(string), "|R|%s: %s", sendername, (result));
ABroadCast(COLOR_YELLOW,string,1);
SendClientMessage(playerid, COLOR_YELLOW, "Vase pitanje je poslano svim online Adminima.");
   }
   return 1;
}
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Rick Dunn aka NaNx poslato Jul 21, 2011, 16:35:40 POSLE PODNE
Jer su ti u modu zapravo GMovi admini lvl 1 kolko se meni cini .... trealo bi ako je odvojeno valjda

if (PlayerInfo[playerid][pAdmin] >= 1)

Tu se negira svaki dodir sa obicnim igracem ....
A ocito ne i sa Gmovima
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 16:41:00 POSLE PODNE
imam ja u enum pinfo i pAdmin i pGameMaster. Ako na to misliš xD
i gm komande admin ne moze koristit (/gmon) tako da nisu onda gm komande admin lvl 1 :S
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Rotcod poslato Jul 21, 2011, 16:55:57 POSLE PODNE
Malo vidi public ABroadCast
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 16:56:13 POSLE PODNE
Citat: _Stranger poslato Jul 21, 2011, 16:55:57 POSLE PODNE
Malo vidi public ABroadCast

e,sve si mi reko -.-
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Narco_VK poslato Jul 21, 2011, 18:21:44 POSLE PODNE
za /a chat posataj public SendAdminMessage(color, string[])

a onda ces za /report umjesto abroadcasta stavit sednadminmessage jer je ti je abroadcast stavit za gm i admina

a i sigurno i sendadminmessage
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 18:54:12 POSLE PODNE
evo public sendadminmessage

public SendAdminMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(PlayerInfo[i][pAdmin] >= 1 || PlayerInfo[i][pGameMaster] >= 1)
   {
SendClientMessage(i, color, string);
}
}
}
}





moze lock,rijesio sam. hvala na pomoci :-*
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Narco_VK poslato Jul 21, 2011, 20:29:40 POSLE PODNE
stavi ovako ali to ce ti radit samo za /A chat..

public SendAdminMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(PlayerInfo[i][pAdmin] >= 1)
   {
SendClientMessage(i, color, string);
}
}
}
}


evo ti za report samo da admin moze vidit

if(strcmp(cmd, "/report", true) == 0)
{
   if(IsPlayerConnected(playerid))
   {
       GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Koristite: /report [text]");
return 1;
}
format(string, sizeof(string), "|R|%s: %s", sendername, (result));
SendAdminMessage(COLOR_GREEN, string);
SendClientMessage(playerid, COLOR_YELLOW, "Vase pitanje je poslano svim online Adminima.");
   }
   return 1;
}


nadam se da si skuzio
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 20:33:50 POSLE PODNE
Koliko sam ja shvatio..

Znači napravio sam: SendAdminMessage i SendGameMasterMessage

hoce li to valjati jer nemam sad vremena testirati s nekim :D


SendAdminMessage
public SendAdminMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(PlayerInfo[i][pAdmin] >= 1)
   {
SendClientMessage(i, color, string);
}
}
}
}


sendGameMasterMessage
public SendGameMasterMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(PlayerInfo[i][pGameMaster] >= 1)
   {
SendClientMessage(i, color, string);
}
}
}
}
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Narco_VK poslato Jul 21, 2011, 20:36:11 POSLE PODNE
da radit ce..
Naslov: Odg: [Pomoc] /a(dmin) /report
Poruka od: Chuck:) poslato Jul 21, 2011, 20:36:50 POSLE PODNE
Citat: Narco_VK poslato Jul 21, 2011, 20:36:11 POSLE PODNE
da radit ce..

ok hvala :D


sad ozb moze lock ! :D