SAMP 0.3c - Новые возможности у транспортных средств.
официальный сайт клана [CCCP]. Наш РП-сервер: 46.174.48.46:7836
Каталог статей
Сервер клана [CCCP]
46.174.48.46:7836
www.cccp-clan.su

Мини-чат

500
Главная » Статьи » Статьи о SAMP'е

SAMP 0.3c - Новые возможности у транспортных средств.

23.02.11, 21:49
Итак, наконец в SAMP добавлены возможности по управлению капотом, багажником, сигнализацией, дверными замками и прочими важными характеристиками и частями транспортных средств. В общем-то все предельно просто. Вся работа связана с вызовом всего двух функций.
1) GetVehicleParamsEx(vehicleid, &engine, &lights, &alarm, &doors, &bonnet, &boot, &objective) - возвращает параметры автомобиля, где
vehicleid - идентификатор автомобиля, о котормы мы хотим получить информацию.
&engine - показывает запущен ли двигатель.
&lights - показывает включены ли фары (работает только ночью).
&alarm - показывает включена ли сигнализация (сирена) у автомобиля.
&doors - показывает заблокированы ли двери транспортного средства.
&bonnet - показывает открыт ли капот.
&boot - показывает открыт ли багажник.
&objective - показывает имеется ли у транспортного средства отметка на карте.

2) SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective) - устанавливает для автомобиля заданные параметры. Смысл параметров тот же, что и у предыдущей функции.

Рассмотрим небольшой пример:

Code

public OnPlayerCommandText(playerid, cmdtext[])
{
  new var0 = 0;
  new var2[256];
  var2 = strtok(cmdtext, var0);
  new vid,engine,lights,alarm,doors,bonnet,boot,objective;
  if(!strcmp("/engine", var2, true)) //Если пользователь ввел /engine
  {
  if (GetPlayerVehicleSeat(playerid) != 0) { //Проверим водитель ли он
  SendClientMessage(playerid, COLOR_RED,"Вы не водитель");
  return 1;
  }
  vid = GetPlayerVehicleID(playerid); //Получим ид его авто
  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective); //Получим параметры этого авто
  if (engine == 0) { //Если двигатель выключен  
  engine = 1; //Включим его
  }
  else {
  engine = 0; //Иначе - выключим. Можно попробовать просто сделать engine = !engine; но я не проверял лично
  }
  SetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective); //Установим для авто новые параметры (изменился лишь двигатель)
  return 1;
  }
  return 0;
}

Кроме того, функцией ManualVehicleEngineAndLights();, вызванной в обработчике OnGameModeInit() можно запретить автоматический запуск двигателя и включение фар при посадке игрока в машину. Но в этом случае необходимо предусмотреть возможно ручного управления двигателем, например, как в предыдущем примере.

Code

public OnGameModeInit()
{
  ManualVehicleEngineAndLights();
}


Комментарии:1
Добавил: Desant
Категория: Статьи о SAMP'е
Просмотров: 2353

Рейтинг: 0.0/0

Нравится
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Форма входа

Наши партнеры

World Of GTA


www.oxpana.clan.su


Клан СССР

Клан СССР

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0



Поиск


Клан [CCCP] © 2008-2016

Яндекс.Метрика