Вопросы

Ребята привет, как создать движущиеся ворота на H? У кого-то код есть? Если да, то можете скинуть пожалуйста?

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


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

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

  • 0

Поищи в поисковых системах или сделай по аналогии:


#include <a_samp>

// Координаты и повороты ворот (замените на свои!)
#define GATE_MODEL 980 // Модель обычных ворот (можно изменить)

new Float:GateClosedPos[3] = {2458.34, -1678.9213.45};
new Float:GateClosedRot[3] = {0.00.0270.0};

new Float:GateOpenPos[3]  = {2458.34, -1665.0013.45}; // Сдвинуты в сторону
new Float:GateOpenRot[3]  = {0.00.0270.0};

new gateObj;
new gateState = 0// 0 = закрыто, 1 = открыто
new bool:playerCooldown[MAX_PLAYERS] = {false, ...};

public OnGameModeInit()
{
    // Создаём ворота
    gateObj = CreateObject(GATE_MODEL, GateClosedPos[0], GateClosedPos[1], GateClosedPos[2],
                           GateClosedRot[0], GateClosedRot[1], GateClosedRot[2]);
    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    // Проверяем нажатие H (KEY_HANDBRAKE)
    if ((newkeys & KEY_HANDBRAKE) && !(oldkeys & KEY_HANDBRAKE))
    {
        // Только пешком + проверка кулдауна
        if (GetPlayerState(playerid) == PLAYER_STATE_ONFOOT && !playerCooldown[playerid])
        {
            new Float:px, Float:py, Float:pz;
            GetPlayerPos(playerid, px, py, pz);
            
            // Проверяем дистанцию до центра ворот (5.0 метров)
            if (IsPlayerInRangeOfPoint(playerid, 5.0, GateClosedPos[0], GateClosedPos[1], GateClosedPos[2]))
            {
                playerCooldown[playerid] = true;
                SetTimerEx("ResetGateCooldown"1500false"d", playerid);
                
                if (gateState == 0// Закрыто → Открываем
                {
                    MoveObject(gateObj, GateOpenPos[0], GateOpenPos[1], GateOpenPos[2], 2.5,
                               GateOpenRot[0], GateOpenRot[1], GateOpenRot[2]);
                    gateState = 1;
                }
                else // Открыто → Закрываем
                {
                    MoveObject(gateObj, GateClosedPos[0], GateClosedPos[1], GateClosedPos[2], 2.5,
                               GateClosedRot[0], GateClosedRot[1], GateClosedRot[2]);
                    gateState = 0;
                }
            }
        }
    }
    return 1;
}

forward ResetGateCooldown(playerid);
public ResetGateCooldown(playerid)
{
    playerCooldown[playerid] = false;
    return 1;
}

 

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


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

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

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

    • hunter.
      От hunter.
      Те кто следят за мододелами GTA San Andreas возможно уже вкурсе о выходе модификации которая добавляет с нуля созданный Карцер-Сити из Мэнхант.

      Суть заказа состоит в том, чтобы адаптировать SA:MP под данную модификацию.

      Бюджет свободный
      Контакты для связи:
      tg: @yomabooy
    • снайк
      От снайк
      Проект находится в стадии активной разработки, и сейчас нам нужны люди для написания новых систем и оптимизации текущего кода. Нам не важны ваши сертификаты, главное — чистота кода, понимание архитектуры CR:MP и умение работать с базами данных.
       
      Важный момент: На данном этапе мы работаем без прямых денежных выплат, так как весь бюджет направлен на техническую часть и серверное оборудование. Мы ищем тех, кто готов вложиться в качественный продукт на старте, чтобы развивать его в долгосрочной перспективе.
       
      Что мы предлагаем разработчикам:
      Техническая свобода: Возможность реализовывать свои технические идеи и напрямую влиять на геймплей.
      Максимальная поддержка на старте: Игровой капитал, эксклюзивное имущество и уникальные привилегии, которые навсегда выделят вас среди игроков.
      Приоритет в управлении: Разработчики, показавшие результат, станут ключевыми фигурами в дальнейшем развитии и принятии решений по проекту.
      Пожизненные бонусы: Особый статус и преференции, которые нельзя будет купить.
       
      Готовы кодить с нами? Пишите:
      Telegram: https://t.me/escape_log
      ВКонтакте: https://vk.com/oskar_novicc
       
      Давайте создадим качественный сервер вместе
    • снайк
      От снайк
      Всех приветствую! Наша команда сейчас вовсю разрабатывает проект Meridian Project, и нам нужны лишние руки (и глаза), чтобы проверить, как всё работает. Проект еще не открылся, поэтому работы хватает: нужно бегать по серверу, проверять системы, искать баги и говорить нам, если что-то идет не так. Нам не важны ваши «дипломы» или стаж работы в IT — главное, чтобы ты понимал, как устроено CR:MP, и хотел помочь сделать сервер лучше.
       
      Сейчас мы на стадии активной разработки и формируем основную команду. На данном этапе прямых денежных выплат нет, так как все средства уходят на техническую часть и оборудование.
       
      Мы ищем надежных людей, готовых включиться в процесс сейчас. Взамен на старте вы получите максимальный уровень поддержки: это касается как игрового капитала и имущества, так и уникальных преимуществ, которые технически невозможно будет получить позже.
      Те, кто проявит себя в деле, в дальнейшем смогут напрямую влиять на развитие проекта и принимать ключевые решения. Мы ищем тех, кто готов работать на результат в долгосрочной перспективе.
       
      Готовы присоединиться? Пишите нам:
      Telegram: https://t.me/escape_log
      ВКонтакте: https://vk.com/oskar_novicc
    • Maxwell
      От Maxwell
      Как добавить поворотники на Q E? На мод Радмира? Можно кодик плиз?)