Klas
Ученик
Помогите сделать команду чтобы репорт отключить включить можно было админам
сам код репорта
сам код репорта
PHP:
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, " Используйте: /report [text]");
return 1;
}
spaceGroupsToSpaces(result);
trimSideSpaces(result);
new word[256],Index;while(Index < strlen(result)) { // проверка сообщения на рекламу серверов и ее вырезание
word = strtok(result,Index);
if(Adv(word)==1||ZP(word)||U(word)||T(word)||N(word)||PP(word)||P(word)||V(word)||R(word)||PL(word)||ZV(word)||I(word)||ST(word)||PR(word)||DL(word)||RE(word)||VOC(word)||A(word)||NO(word)||TCZ(word)||BOP(word)){
new i=strfind(result,word),j=i+strlen(word)-1; result[i++]='[';
while(i<j) {result[i]='|';i++;}
result[j]=']';
BanEx(playerid, " Попытка рекламы сервера");
}
}
if(PlayerInfo[playerid][pReport] > 0)
{
SendClientMessage(playerid,COLOR_LIGHTRED,"{CD3333}В репорт можно написать 1-раз в 40 секунд.{FFFFFF} ");
return 1;
}
format(string, sizeof(string), "{CD3333}[REPORT] %s [%d]: %s ] ", sendername, playerid, (result));
ABroadCast(COLOR_LIGHTRED,string,1);
SendClientMessage(playerid, COLOR_YELLOW, string);
PlayerInfo[playerid][pReport] = 40;
}
return 1;
}
if(strcmp(cmd, "/reportotvet", true) == 0 || strcmp(cmd, "/otvet", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, " Используйте: /otvet [id] [текст ответа]");
return 1;
}
if(PlayerInfo[playerid][pAdmin] <= 0)
{
SendClientMessage(playerid,COLOR_GREY,"Вы не Администратор!");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
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, " Используйте: /otvet [id] [текст ответа]");
return 1;
}
format(string, sizeof(string), "{CD3333}[REPORT] %s : %s{FFFFFF}", sendername, (result));
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "{CD3333}[REPORT] %s ответил %s [%d]: %s", sendername, giveplayer, giveplayerid,(result));
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pAdmin] >= 1)
{
SendClientMessage(i, COLOR_LIGHTBLUE, string);
}
}
return 1;
}
}
else
{
format(string, sizeof(string), " %d игрок не в сети.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
