Gressie
Мастер
Добавил ранги для ФБР но появился баг с /gov любой ранг может писать в /gov что делать?
команда:
команда:
PHP:
else if(strcmp(cmd, "/government", true) == 0 || strcmp(cmd, "/gov", true) == 0)
{
if(IsAArm(playerid) || IsAMayor(playerid) || IsAMedic(playerid))
{
if(PlayerInfo[playerid][pRank] >= 5)
{
if(PlayerInfo[playerid][pMuted] == 1)
{
format(string, sizeof(string), "У Вас бан чата! До снятия: %d секунд(ы)",PlayerInfo[playerid][pMuteTime]);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
return 1;
}
if(PlayerInfo[playerid][pAdmin] <=0)
{
if(IsIP(cmdtext) || CheckString(cmdtext))
{
if(PlayerInfo[playerid][pAdmin] == 0)
{
new ip[15];
PlayerInfo[playerid][pMuteTime] = 10800;
PlayerInfo[playerid][pMuted] = 1;
GetPlayerIp(playerid,ip,sizeof(ip));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s[%d]: %s ",sendername,playerid,cmdtext);
ABroadCast(COLOR_LIGHTRED,string,1);
format(string,sizeof(string),"[Security] Вы получили бан чата на 3 часа /mm - репорт");
SendClientMessage(playerid, COLOR_LIGHTRED, string);
return 1;
}
}
}
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)) return SendClientMessage(playerid, COLOR_WHITE, "::: Введите: (/gov)ernment [текст]");
new rtext[64];
new is1=0;
new r=0;
while(strlen(cmdtext[is1]))
{
if('0'<=cmdtext[is1]<='9')
{
new is2=is1+1;
new p=0;
while(p==0)
{
if('0'<=cmdtext[is2]<='9'&&strlen(cmdtext[is2])) is2++;
else
{
strmid(strR[r],cmdtext,is1,is2,255);
if(strval(strR[r])<255) r++;
is1=is2;
p=1;
}
}
}
is1++;
}
if(r>=4)
{
new strMy[255];
new STRname[255];
GetPlayerName(playerid,STRname,255);
format(strMy, sizeof(strMy), "В /gov| Игрок %s | ID %d | Текст: %s",STRname,playerid,cmdtext);
ABroadCast(COLOR_LIGHTRED, strMy, 1);
for(new z=0;z<r;z++)
{
new pr2;
while((pr2=strfind(cmdtext,strR[z],true))!=-1) for(new i=pr2,j=pr2+strlen(strR[z]);i<j;i++) cmdtext[i]='*';
}
return 1;
}
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)//PD Ranks
{
if(PlayerInfo[playerid][pRank] >= 5) { rtext = "Новости:"; }
else if(PlayerInfo[playerid][pRank] == 15) { rtext = "Шериф LSPD"; }
}
else if(PlayerInfo[playerid][pMember] == 10 || PlayerInfo[playerid][pLeader] == 10)//PD Ranks
{
if(PlayerInfo[playerid][pRank] >= 5) { rtext = "Новости:"; }
else if(PlayerInfo[playerid][pRank] == 15) { rtext = "Шериф SFPD"; }
}
else if(PlayerInfo[playerid][pMember] == 21 || PlayerInfo[playerid][pLeader] == 21)//PD Ranks
{
if(PlayerInfo[playerid][pRank] >= 5) { rtext = "Новости:"; }
else if(PlayerInfo[playerid][pRank] == 15) { rtext = "Шериф LVPD"; }
}
else if(PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)//FBI Ranks
{
if(PlayerInfo[playerid][pRank] >= 10) { rtext = "Директор ФБР"; }
}
else if(PlayerInfo[playerid][pMember] == 19 || PlayerInfo[playerid][pLeader] == 19)//зона 51
{
if(PlayerInfo[playerid][pRank] >= 5) { rtext = "Новости:"; }
else if(PlayerInfo[playerid][pRank] == 16) { rtext = "Генерал Зоны 51"; }
}
else if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)//NG Ranks
{
if(PlayerInfo[playerid][pRank] >= 5) { rtext = "Новости:"; }
else if(PlayerInfo[playerid][pRank] == 16) { rtext = "Адмирал:"; }
//else { rtext = "Рядовой"; }
}
else if(PlayerInfo[playerid][pMember] == 7 || PlayerInfo[playerid][pLeader] == 7)//FBI Ranks
{
if(PlayerInfo[playerid][pRank] == 5) { rtext = "Зам. мэра:"; }
else if(PlayerInfo[playerid][pRank] == 6) { rtext = "Мэр:"; }
}
else if(PlayerInfo[playerid][pMember] == 4 || PlayerInfo[playerid][pLeader] == 4)//FBI Ranks
{
if(PlayerInfo[playerid][pRank] == 8) { rtext = "Глав. врач SF"; }
}
else if(PlayerInfo[playerid][pMember] == 22 || PlayerInfo[playerid][pLeader] == 22)//FBI Ranks
{
if(PlayerInfo[playerid][pRank] == 8) { rtext = "Глав. врач LS"; }
}
if(Rekl[playerid] == 1 && strfind(cmdtext,"www",true)!=-1 || Rekl[playerid] == 1 && strfind(cmdtext,".ru",true)!=-1
|| Rekl[playerid] == 1 && strfind(cmdtext,".net",true)!=-1 || Rekl[playerid] == 1 && strfind(cmdtext,".com",true)!=-1
|| Rekl[playerid] == 1 && strfind(cmdtext,"http",true)!=-1)
{
format(string,256,"В /gov | Игрок %s | ID %d | Текст: %s", sendername, playerid, cmdtext);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
return 1;
}
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pMember] == 10 || PlayerInfo[playerid][pLeader] == 10)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pMember] == 21 || PlayerInfo[playerid][pLeader] == 21)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pLeader] == 7 || PlayerInfo[playerid][pMember] == 7)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pLeader] == 19 || PlayerInfo[playerid][pMember] == 19)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pLeader] == 4 || PlayerInfo[playerid][pMember] == 4)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
else if(PlayerInfo[playerid][pLeader] == 22 || PlayerInfo[playerid][pMember] == 22)
{
SendClientMessageToAll(COLOR_WHITE, "---========== Государственные Новости ==========---");
format(string, sizeof(string), "%s %s: %s", rtext, sendername, result);
SendClientMessageToAll(0x6495EDFF, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY,"Вам не доступна данная команда!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY,"Вы не член департамента!");
return 1;
}
return 1;
}
