Перейти к содержанию
Авторизация  
Kapral

Добавление исключения к команде

Рекомендуемые сообщения

Kapral

Привет. Занимаюсь разработкой своего мода, и у меня вопрос.

Как сделать так, чтобы в рацию писало например:

[Рация] [Орел-1] для ГИБДД, но для МВД чтобы просто в рацию писало: [Рация], грубо говоря, сделать дополнение к команде /r для определенной фракции. думаю вы меня поняли) Вообщем, как это сделать?

Прошу помощи знатаков))

 

Образец команды, желательно сделать на нем.

 

//==============================================================================
if(strcmp(cmd, "/radio", true) == 0 || strcmp(cmd, "/r", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMuted] == 1) return PlayerMuteMessage(playerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /r [текст]"); // COLOR_GRAD1
new frak;
if(PlayerInfo[playerid][pLeader] > 0) frak = PlayerInfo[playerid][pLeader];
else frak = PlayerInfo[playerid][pMember];
new rank = PlayerInfo[playerid][pRank];
if(rank > 15) rank = 15;
switch(frak)
{
case 1..6,9..11,13..19,12:
{
format(string, sizeof(string), "[Рация] %s %s: %s",FrakInfo[frak-1][rank][rang],sendername, result); // {FA8258}
SendRadioMessage(frak, COLOR_BLUE, string); // FrakInfo[frak-1][0][Rcolor]
return 1;
}
default: return SendClientMessage(playerid, COLOR_GREY, "Вы не состоите во фракции / вашей организации не доступна рация.");
}


}
return 1;
}
Изменено пользователем Kapral

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#Pawno
if(strcmp(cmd, "/radio", true) == 0 || strcmp(cmd, "/r", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMuted] == 1) return PlayerMuteMessage(playerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /r [текст]"); // COLOR_GRAD1
new frak;
if(PlayerInfo[playerid][pLeader] > 0) frak = PlayerInfo[playerid][pLeader];
else frak = PlayerInfo[playerid][pMember];
new rank = PlayerInfo[playerid][pRank];
if(rank > 15) rank = 15;
switch(frak)
{
	case 1:
	{
		format(string, sizeof(string), "[Орел-1] %s %s: %s",FrakInfo[frak-1][rank][rang],sendername, result); // {FA8258}
		SendRadioMessage(frak, COLOR_BLUE, string); // FrakInfo[frak-1][0][Rcolor]
		return 1;
	}
	case 2:
	{
		format(string, sizeof(string), "[Орел-2] %s %s: %s",FrakInfo[frak-1][rank][rang],sendername, result); // {FA8258}
		SendRadioMessage(frak, COLOR_BLUE, string); // FrakInfo[frak-1][0][Rcolor]
		return 1;
	}
	case 3:
	{
		format(string, sizeof(string), "[Гибдд-1] %s %s: %s",FrakInfo[frak-1][rank][rang],sendername, result); // {FA8258}
		SendRadioMessage(frak, COLOR_BLUE, string); // FrakInfo[frak-1][0][Rcolor]
		return 1;
	}
default: return SendClientMessage(playerid, COLOR_GREY, "Вы не состоите во фракции / вашей организации не доступна рация.");
}


}
return 1;
}

Вот как то так , пример я тебе дал , ид фракций в case и делаешь как тебе надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.