• Страница 1 из 1
  • 1
Модератор форума: [east_side]_trane, drifter-dron, valych, admin  
Рация с выбором канала
Dimka_71rusДата: Воскресенье, 04.09.2011, 18:19:41 | Сообщение # 1

Группа: Пользователи
Сообщений: 360
- Система раций с выбором канала (для Godfather).
- Описание: Вы используйте команду /canal [1-10000] для выбора нужной вам частоты.
После выбора частоты вы автоматический подключайтесь к выбранному вами каналу и можете активно вести общение с помощью команды /rс [текст].
Так-же другой инной игрок может подключиться к вашей частоте.
- Создаем forward
Code
forward SendRcanalMessage(canal, color, string[]);

- Далее добавляем ко всем new
Code
new Rcanal[MAX_PLAYERS];

- Далее в public OnPlayerConnect добавляем (думаю разберетесь куда добавлять).
Code
Rcanal[playerid] = 0;

- Далее создаем public
Code
public SendRcanalMessage(canal, color, string[])
  {
  for(new i = 0; i < MAX_PLAYERS; i++)
  {
  if(IsPlayerConnected(i))
  {
  if(Rcanal[i] == canal)
  {
  SendClientMessage(i, color, string);
  }
  }
  }
  }

- Далее в public OnPlayerCommandText добавляем команды
Code
if(strcmp(cmd, "/rс", true) == 0)
  {
  if(IsPlayerConnected(playerid))
  {
  if(PlayerInfo[playerid][pMuted] == 1)
  {
  SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете писать, у вас молчанка"); // Проверка на молчанку
  return 1;
  }
  if(PlayerInfo[playerid][pRadio] == 0)
  {
  SendClientMessage(playerid, COLOR_GRAD2, "У вас нет рации, купите ее в магазине 24/7"); // Проверка на наличие на рации
  return 1;
  }
  if(Rcanal[playerid] < 1)
  {
  SendClientMessage(playerid, TEAM_CYAN_COLOR, "Вы не на частоте. Подключитесь, используя /canal (номер канала от 0 по 10000)");
  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))
  {
  SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /rc [текст]");
  return 1;
  }
  format(string, sizeof(string), "(%d) %s: %s", Rcanal[playerid], sendername, result);
  SendRcanalMessage(Rcanal[playerid], TEAM_CYAN_COLOR, string);
  return 1;
  }
  return 1;
  }

  if(strcmp(cmd, "/canal", true) == 0)
  {
  if(IsPlayerConnected(playerid))
  {
  if(PlayerInfo[playerid][pRadio] == 0)
  {
  SendClientMessage(playerid, COLOR_LIGHTBLUE, "У вас нет рации");
  return 1;
  }
  tmp = strtok(cmdtext, idx);
  if(!strlen(tmp))
  {
  SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /canal [номер канала[(1-10000)]");
  return 1;
  }
  new canal;
  canal = strval(tmp);
  if(canal > 10000|| canal < 1)
  {
  SendClientMessage(playerid, COLOR_GREY, "Номер канала от 1 по 10000!");
  return 1;
  }
  Rcanal[playerid] = canal;
  format(string, sizeof(string), "Вы подключились к частоте номер %d", canal);
  SendClientMessage(playerid, COLOR_LIGHTBLUE,string);
  }
  }

- Урок от: NOD32


Лучшие моды,скрипты,карты - вы найдёте на сайте samp-pawno.ru
Самые чёткие ответы на ваши вопросы и помощь по скритингу вы найдёте на сайте forum-pawno.ru
 
Сообщение- Система раций с выбором канала (для Godfather).
- Описание: Вы используйте команду /canal [1-10000] для выбора нужной вам частоты.
После выбора частоты вы автоматический подключайтесь к выбранному вами каналу и можете активно вести общение с помощью команды /rс [текст].
Так-же другой инной игрок может подключиться к вашей частоте.
- Создаем forward
Code
forward SendRcanalMessage(canal, color, string[]);

- Далее добавляем ко всем new
Code
new Rcanal[MAX_PLAYERS];

- Далее в public OnPlayerConnect добавляем (думаю разберетесь куда добавлять).
Code
Rcanal[playerid] = 0;

- Далее создаем public
Code
public SendRcanalMessage(canal, color, string[])
  {
  for(new i = 0; i < MAX_PLAYERS; i++)
  {
  if(IsPlayerConnected(i))
  {
  if(Rcanal[i] == canal)
  {
  SendClientMessage(i, color, string);
  }
  }
  }
  }

- Далее в public OnPlayerCommandText добавляем команды
Code
if(strcmp(cmd, "/rс", true) == 0)
  {
  if(IsPlayerConnected(playerid))
  {
  if(PlayerInfo[playerid][pMuted] == 1)
  {
  SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете писать, у вас молчанка"); // Проверка на молчанку
  return 1;
  }
  if(PlayerInfo[playerid][pRadio] == 0)
  {
  SendClientMessage(playerid, COLOR_GRAD2, "У вас нет рации, купите ее в магазине 24/7"); // Проверка на наличие на рации
  return 1;
  }
  if(Rcanal[playerid] < 1)
  {
  SendClientMessage(playerid, TEAM_CYAN_COLOR, "Вы не на частоте. Подключитесь, используя /canal (номер канала от 0 по 10000)");
  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))
  {
  SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /rc [текст]");
  return 1;
  }
  format(string, sizeof(string), "(%d) %s: %s", Rcanal[playerid], sendername, result);
  SendRcanalMessage(Rcanal[playerid], TEAM_CYAN_COLOR, string);
  return 1;
  }
  return 1;
  }

  if(strcmp(cmd, "/canal", true) == 0)
  {
  if(IsPlayerConnected(playerid))
  {
  if(PlayerInfo[playerid][pRadio] == 0)
  {
  SendClientMessage(playerid, COLOR_LIGHTBLUE, "У вас нет рации");
  return 1;
  }
  tmp = strtok(cmdtext, idx);
  if(!strlen(tmp))
  {
  SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /canal [номер канала[(1-10000)]");
  return 1;
  }
  new canal;
  canal = strval(tmp);
  if(canal > 10000|| canal < 1)
  {
  SendClientMessage(playerid, COLOR_GREY, "Номер канала от 1 по 10000!");
  return 1;
  }
  Rcanal[playerid] = canal;
  format(string, sizeof(string), "Вы подключились к частоте номер %d", canal);
  SendClientMessage(playerid, COLOR_LIGHTBLUE,string);
  }
  }

- Урок от: NOD32

Автор - Dimka_71rus
Дата добавления - 04.09.2011 в 18:19:41
  • Страница 1 из 1
  • 1
Поиск:
Загрузка страницы, займет меньше минуты...
Загрузка...

Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
Система телефонов поломалась
Не в себе
фильм скалайн
Трансформеры 3
форсаж 6
Ищу [FS]Для админок на сервер
нужны координаты карты для отметки зон...
Помогите найти мод
pawno урок автоматические ворота
обращение к скриптерам.
Вопросы по скриптингу
Ваши ошибки при компиляции GM/FS

Вопросы по скриптингу

(1081)

Считаем до 1000

(274)

Ваши ошибки при компиляция gm

(260)

Набор в команду

(80)

Ваши ошибки при компиляции GM/FS

(71)

вопроосы по скриптингу от 22.04.2013

(64)

Баннеробмен

(64)

несколько команд на samp 0.3 c

(64)

Оценки сайта samp-pawno.ru

(55)

Заказ хостинга

(51)

Набор в команду(форум)

(45)

Урок №61 по созданию системы авто для GodFather

(45)

admin

(3869)

[east_side]_trane

(443)

TWiX

(316)

valych

(501)

drifter-dron

(477)

danik_rok

(317)

Dimka_71rus

(360)

Drifter96

(300)

MaNb9K

(220)

[MTA]MaPeR5518

(181)

Dima_Tkach

(107)

Nik_Ull

(184)

system32xzxz

(Четверг 09:25:24)

torbin169

(Суббота 23:09:29)

kuchuk_00

(Суббота 17:10:14)

artem_boyko_3

(Суббота 15:57:37)

greggelbak

(Среда 18:29:37)

vladisvlavs

(Среда 13:51:57)

add02102002

(Понедельник 22:37:15)

Диман221

(Понедельник 18:12:45)

almas051004

(Воскресенье 11:05:32)

megasuccessms

(Суббота 14:15:36)

nawe

(Пятница 22:25:23)

swoysb

(Пятница 14:55:29)

Вверх
02:07:57
ОбновитьСмайлыУправление мини-чатом
ЧАТ-PAWNO
2010-2025

vkontakte :samp-pawno.ru: