Вопросы

Освоившийся

Как сделать ворота для фракции на альт(если есть на форуме,то скиньте,если нету, то помогите сами если есть возможность)

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


Ссылка на сообщение

3 ответа на этот вопрос

  • 0
Свой человек

Добрый день. Можно в интернете написать тему Открытие ворот на кнопку и там будет тема с созданием таких ворот и тд. Но если уже хоть что-то есть то вот немного от туда взял

 

В public OnPlayerKeyStateChange
if(newkeys & KEY_WALK) // На кнопку АЛЬТ (alt)
{
if(IsPlayerInRangeOfPoint(playerid, 102720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.252312.62.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1"7000false);//Создадим таймер что ворота закрылись автоматически
}
}

 

Отредактировано пользователем Caracal2222

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


Ссылка на сообщение
  • 0
Свой человек

@hokageud Я же написал что можете вбить в интернете то что написал. Там в теме на другом сайте полностью описан код,что куда. Ну уж лучше тогда скопирую от туда и сюда вышлю. 

Спойлер

CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Закрытые ворота
CreateObject(969, 2720.3772,-2508.3069,12.6,0, 0.0000, 90);//Открытые ворота   

После этого вам нужно создать переменную., которая будет хранить в себе порядковый ID ворот.

Ко всем new
 

new gate1;   


Теперь создадим объект ворот на сервере 

В public OnGameModeInit засуньте строчку с функцией CreateObject

gate1 = CreateObject(ид_объекта, x,y,z, поворот_x, поворот_y, поворот_z);// Укажите ваши данные о ЗАКРЫТЫХ воротаx   


Для простого примера я создам ворота в доках (координаты открытых и закрытых ворот смотрите выше) 

public OnGameModeInit()
{
gate1 = CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Если у вас есть этот public то просто вставте эту строчку с созданием объекта
return 1;
}   


Ворота созданы, но теперь их надо заставить двигаться 

в public OnPlayerCommandText 

if(!strcmp(cmdtext, "/opengate", true))
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}   


Теперь создадим public чтоб ворота закрылись самостоятельно 

Ко всем foward

forward CloseGate1();   

В конец мода

public CloseGate1()
{
MoveDynamicObject(gate1, 2720.3772,-2409.7523,12.6, 2.0);//Двигаем ворота на позицию закрытых ворот
return 1;
}   


Ворота созданы и вы теперь можете их открыть командой /opengate 

Теперь делаем открытие ворот кнопкой.

В public OnPlayerKeyStateChange
 

if(newkeys & KEY_WALK) // На кнопку АЛЬТ (alt)
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}   

 

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


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

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

  • Похожий контент

    • От dante34538
      ищу гейм мод самп рп, который не был в пабликах, по цене до 3000р, писать в вк https://vk.com/screamzmorrow
    • От DonK/Key
      Всем привет, помогите кто разбирается, так как я можно сказать начинающий сделать свой КРМП, буду благодарен. Напишите либо тут либо @evreI_sigma (Мой Telegram)