shape1
shape2
shape3
shape4
shape7
shape8

Создание машин для фракций

  • Автор темы Amfy
  • Дата начала

A

Amfy

Гость
Гость
Всем привет. Попытаюсь разжевать новичкам как создать авто для фракций. Вообщем, перейдем к делу. В нашем туториале мы будем добавлять машины для милиции. Первым делом нам нужно создать глобальную переменную.
 
Ко всем глобальным переменным (где все new) добавляем:
new Mil[2];//Назовем её Mil

Далее идем в public OnGameModeinit и вставляем наши машины (машины вы ставите естественно свои). К примеру, мне нужно 4 машины закрепить за фракцией.
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
К первой машине добавляем Mil[0] =, а к последней машине Mil[1] =, смотрите пример ниже как должно получится.

Код:
Mil[0] = AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
Mil[1] = AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
Машины между Mil[0] и Mil[1] (включительно) автоматически становятся для милиции. А это значит, если в дальнейшим надо будет добавлять машины милиции, добавляем их между Mil[0] и Mil[1]
 
Далее идем в public OnPlayerStateChange и вставляем следующий код:
Код:
if(newstate == PLAYER_STATE_DRIVER)//Если игрок сидит за рулем автомобиля
{
    new carid = GetPlayerVehicleID(playerid);//Узнаем ид машины в которой сидит игрок
    if(carid >= Mil[0] && carid <= Mil[1])//Если игрок сидит в машине Mil[0] до Mil[1], значит это милицейские машины
    {
        if(PlayerInfo[playerid][pMember] != 1)//Проверка на игроков из фракции номер 1.
        {
            SendClientMessage(playerid, -1, "У вас нет ключей от этого транспорта.");//Если игрок не состоит в 1-ой фракции
            RemovePlayerFromVehicle(playerid);//Выкидываем с машины
        }
    }
}
Если PLAYER_STATE_DRIVER уже существует в данном паблике, ещё раз создавать необязательно. Можно просто вставить в уже существующий.
 
P.S Если возникнут вопросы, пишите в данной теме. PlayerInfo, pLeader, pMember при необходимости нужно сменить.
 
Последнее редактирование:

Maxim

Освоившийся
Пользователь
24.01.2014
60
29
0
25
В проверки на фракцию нету скобки, поправь.

 

Krutihine

Участник
Пользователь
10.07.2014
546
187
0
Скриптер
Как сделать авто по рангам

 

Pasha151116

Новичок
Пользователь
13.07.2014
2
0
0

major22228888888

Новичок
Пользователь
24.09.2014
3
0
0
кто мне поможет,так я нечего не понял что тут написано

 

Vugar

Новичок
Пользователь
01.11.2014
22
1
0
как увеличить лимит авто во фраках?подскажите пожалуйсто

 
A

Amfy

Гость
Гость
Vugar, не понял, какой лимит?

 

goide

Новичок
Пользователь
29.06.2014
62
0
0
Можете помочь? У меня Pawno вообще вылетает (эта фигня с "Не отвечает" вылазит)

 

Joker

Освоившийся
Пользователь
14.12.2014
111
24
0
Отличный урок. Спасибо!!

 
S

Serega056

Гость
Гость
Всем привет. Попытаюсь разжевать новичкам как создать авто для фракций. Вообщем, перейдем к делу. В нашем туториале мы будем добавлять машины для милиции. Первым делом нам нужно создать глобальную переменную.
new Mil[2];//Назовем её Mil

Далее идем в public OnGameModeinit и вставляем наши машины. (Машины вы ставите естественно свои)
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
К первой машине добавляем Mil[0] =, а к последней машине Mil[1] =, смотрите пример  ниже.

Mil[0] = AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
Mil[1] = AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);
Машины между Mil[0] и Mil[1] автоматически становятся для милиции. А это значит, если в дальнейшим надо будет добавлять машины милиции, добавляем их между Mil[0] и Mil[1].
 
Далее идем в public OnPlayerStateChange и вставляем следующий код:
Код:
if(newstate == PLAYER_STATE_DRIVER)//Игрок сидит за рулем автомобиля
{
    new carid = GetPlayerVehicleID(playerid);//Узнаем в какой машине сидит игрок
    if(carid >= Mil[0] && carid <= Mil[1])//Если игрок сидит в машине которая больше или равна Mil[0] и меньша или равна Mil[1]
    {
        if((PlayerInfo[playerid][pMember] & PlayerInfo[playerid][pLeader]) != 1)//Проверка на игроков из фракции номер 1.
        {
            SendClientMessage(playerid, -1, "У вас нет ключей от этого транспорта.");//Если игрок не состоит в 1-ой фракции
            RemovePlayerFromVehicle(playerid);//Выкидываем с машины
        }
    }
}
Если PLAYER_STATE_DRIVER уже существует в данном колбэке, ещё создавать необязательно. Можно просто вставить в уже существующий.
 
P.S Если возникнут вопросы, пишите в данной теме. PlayerInfo, pLeader, pMember при необходимости нужно сменить.
 
Автор: Amfy
я непонел вот это!!  Далее идем в public OnGameModeinit и вставляем наши машины. (Машины вы ставите естественно свои)

AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);

AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);

AddStaticVehicleEx(411,1788.7271,1352.2760,10.7370,3.0671,55,55,60000);