[Pomoc] /a(dmin) /report

Započeo Chuck:), Jul 21, 2011, 16:32:22 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

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;
}
Poslednja Izmena: Jul 21, 2011, 16:33:03 POSLE PODNE od pHon

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
Datum registracije:    Listopad 21, 2009, 15:56:43
|Rick Dunn| NaNx |Soldier |
|Maper | Web Developer [HTML+CSS] | C++ beginner |

Respect: Karike, Chris, ///Masic, Stormer, Walter, NeNo, Pacino, NaNek

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



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
Vratio sam se ponovo ocekjute novi server...

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 :-*
Poslednja Izmena: Jul 21, 2011, 19:08:13 POSLE PODNE od pHon

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
Vratio sam se ponovo ocekjute novi server...

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);
}
}
}
}
Poslednja Izmena: Jul 21, 2011, 20:34:34 POSLE PODNE od pHon

da radit ce..
Vratio sam se ponovo ocekjute novi server...