SoM
Ученик
Ко всем new
В public OnPlayerConnect(playerid)
В public OnPlayerDisconnect(playerid, reason)
В public OnPlayerCommandText(playerid, cmdtext[])
Теперь находим команды /f и /r и в конец каждого case вставляем вот это
Пример с рацией фбр:
Ну вроде все. Тестировал на RLS
Скриншоты:
1. Вводим команду /tipster
2. Вводим команду /tipster get не в машине
» Ну а теперь в машине
3. Вводим команду /tipster set [playerid]
И мы видим
4. Вводим команду /tipster listen
И видим
» Проверяем нашу прослушку
5. Вводим команду /tipster remove
И мы видим
PHP:
new tipsterq[MAX_PLAYERS];
new tipsterw = -1;
new tipstere = -1;
new tipsterl[MAX_PLAYERS];
PHP:
tipsterq[playerid] = 0;
tipsterl[playerid] = 0;
PHP:
if(tipstere == playerid)
{
SendRadioMessage(2,COLOR_ISPOLZUY ,"Игрок покинул район. Прослушивание отключено");
tipsterw = -1;
tipstere = -1;
}
PHP:
if(strcmp(cmd, "/tipster",true)==0)
{
if(IsPlayerConnected(playerid))
{
x_job = strtok(cmdtext, idx);
if(PlayerInfo[playerid][pMember] != 2)return SendClientMessage(playerid, COLOR_GREY, "Вы не полицейский/агент FBI");
if(!strlen(x_job))
{
SendClientMessage(playerid, COLOR_WHITE, "Введите: /tipster [действие]. Доступные действия:");
SendClientMessage(playerid, COLOR_WHITE, " GET - Взять жучок.");
SendClientMessage(playerid, COLOR_WHITE, " SET - Прикрепить жучок к игроку.");
SendClientMessage(playerid, COLOR_WHITE, " REMOVE - Деактивировать жучок.");
SendClientMessage(playerid, COLOR_WHITE, " LISTEN - Начать прослушивание чата фракции.");
return true;
}
else if(strcmp(x_job, "get",true) == 0)
{
if(PlayerInfo[playerid][pRank] < 6) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Вам недоступна данная функция!");
if(GetPlayerVehicleID(playerid) >= fbicar[0] && GetPlayerVehicleID(playerid) <= fbicar[8]) {}
else return SendClientMessage(playerid,COLOR_GREY,"Вы должны находиться в автомобиле FBI");
if(tipsterq[playerid]) return SendClientMessage(playerid,COLOR_ISPOLZUY,"У вас уже есть жучок");
tipsterq[playerid] = 1;
SendClientMessage(playerid,COLOR_ISPOLZUY,"Вы взяли жучок! Используйте /tipster SET [id].");
format(string,sizeof(string),"%s взял жучок из автомобиля",Name(playerid));
SendRadioMessage(2,COLOR_ISPOLZUY, string);
}
else if(strcmp(x_job, "set",true) == 0)
{
new ammo;
if(PlayerInfo[playerid][pRank] < 6) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Вам недоступна данная функция!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /tipster SET [playerid]");
ammo = strval(tmp);
if(!tipsterq[playerid]) return SendClientMessage(playerid,COLOR_ISPOLZUY,"У вас нет жучка");
if(!ProxDetectorS(2.0, playerid, ammo)) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Игрок далеко от вас");
if(tipsterw != -1) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Жучок уже прикреплен! Используйте /tipster REMOVE");
if(!PlayerInfo[ammo][pMember]) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Игрок не состоит в организации");
tipsterq[playerid] = 0;
tipsterw = PlayerInfo[ammo][pMember];
tipstere = ammo;
format(string,sizeof(string),"%s прикрепил жучок к игроку %s. Используйте /tipster LISTEN для прослушивания",Name(playerid),Name(ammo));
SendRadioMessage(2,COLOR_ISPOLZUY, string);
SendClientMessage(playerid,COLOR_ISPOLZUY,"Вы прикрепили жучок к игроку! Используйте /tipster LISTEN");
}
else if(strcmp(x_job, "listen",true) == 0)
{
if(tipsterw == -1) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Жучок не прикреплен!");
if(!tipsterl[playerid])
{
tipsterl[playerid] = 1;
SendClientMessage(playerid,COLOR_ISPOLZUY,"Вы включили прослушивание!");
}
else
{
tipsterl[playerid] = 0;
SendClientMessage(playerid,COLOR_ISPOLZUY,"Вы отключили прослушивание!");
}
}
else if(strcmp(x_job, "remove",true) == 0)
{
if(PlayerInfo[playerid][pRank] < 6) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Вам недоступна данная функция!");
if(tipsterw == -1) return SendClientMessage(playerid,COLOR_ISPOLZUY,"Жучок не прикреплен!");
tipsterw = -1;
tipstere = -1;
SendClientMessage(playerid,COLOR_ISPOLZUY,"Вы отключили жучок!");
}
return true;
}
}
PHP:
if(tipsterw == PlayerInfo[playerid][pMember])
{
foreach(new i : Player)
{
if(tipsterl[i]) SendClientMessage(i, COLOR_LIGHTRED, string);
}
}
PHP:
case 2:
{
switch(PlayerInfo[playerid][pRank])
{
case 10: { format(string, sizeof(string), "[R] Директор %s: %s", sendername, result); }
case 9: { format(string, sizeof(string), "[R] Зам. директора %s: %s", sendername, result); }
case 8: { format(string, sizeof(string), "[R] Инспектор %s: %s", sendername, result); }
case 7: { format(string, sizeof(string), "[R] Глава CID %s: %s", sendername, result); }
case 6: { format(string, sizeof(string), "[R] Глава GNK %s: %s", sendername, result); }
case 5: { format(string, sizeof(string), "[R] Агент CID %s", sendername, result); }
case 4: { format(string, sizeof(string), "[R] Агент GNK %s: %s", sendername, result); }
case 3: { format(string, sizeof(string), "[R] Мл. Агент %s: %s", sendername, result); }
case 2: { format(string, sizeof(string), "[R] Дежурный %s: %s", sendername, result); }
case 1: { format(string, sizeof(string), "[R] Дежурный %s: %s", sendername, result); }
default:{ format(string, sizeof(string), "[R] Стажёр %s: %s", sendername, result);}
}
SendRadioMessage(2, TEAM_BLUE_COLOR, string);
if(tipsterw == PlayerInfo[playerid][pMember])
{
foreach(new i : Player)
{
if(tipsterl[i]) SendClientMessage(i, COLOR_LIGHTRED, string);
}
}
return true;
}
Скриншоты:
1. Вводим команду /tipster
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
2. Вводим команду /tipster get не в машине
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
» Ну а теперь в машине
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
3. Вводим команду /tipster set [playerid]
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
И мы видим
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
4. Вводим команду /tipster listen
И видим
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
» Проверяем нашу прослушку
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
5. Вводим команду /tipster remove
И мы видим
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Последнее редактирование:
