В теме 8 сообщений

Cawfee
Великий Гуру

Описание системы.

Система полета камерой представляет собой возможность перемещаться в пространстве игры по всем осям (X, Y, Z) путем нажатия кнопок на клавиатуре.

 

Подключение системы.

1. Система написана в отдельном файле. Вам необходимо скачать этот файл и добавить в папку, находящейся в следующей директории:

"..\pawno\include"

2. Затем Вам следует открыть свой игровой мод и в начале, после всех директив включения заголовочных файлов (#include), дописать следующую строку:

#include "fly"

 

Работа с системой.

В систему полета камерой включены две функции:

1. Изменение состояния полета игрока.

SetPlayerFlyStatus(playerid, status = CAMERA_MODE_REVERSE)
/*
    playerid - ID игрока, которого Вы хотите "отправить" в режим полета
    status - режим полета*
    
    * предусмотрено три режима полета:
        CAMERA_MODE_NONE    (0) - выключить режим полета,
        CAMERA_MODE_FLY     (1) - включить режим полета,
        CAMERA_MODE_REVERSE (2) - сменить режим на реверсивный
*/

2. Проверка, находится ли игрок в "полете".

IsPlayerFlying(playerid)
/*
    playerid - ID игрока, пребывание в состоянии полета которого Вы хотите проверить
    
    * данная функция возвращает:
        CAMERA_MODE_NONE    (0), если игрок не находится в состоянии полета,
        CAMERA_MODE_FLY     (1), если игрок находится в состоянии полета
    
*/

При помощи данных функций вы можете управлять пребыванием игрока в режиме полета, а также получать информацию о том, "летает" ли игрок в тот или иной момент.

 

Особенности системы.

Системой полета предусмотрено, что игрок, выходящий из режима полета, появится именно там, где вышел. Так, если вы покидаете режим полета, пребывая в озере, то появление игрока будет именно в этом озере.

 

Пример использования.

CMD:fly(playerid, params[])
{
    static const MSG_USE_CMD[] = !"» Usage the command: /fly [mode 0-2]";
    
    if(isnull(params)) {
        return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0;
    }

    new mode;
    if(sscanf(params, "d", mode)) {
        return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0;
    }
    
    if(!(mode >= 0 && mode <= 2)) {
        return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0;
    }

    SetPlayerFlyStatus(playerid, mode);
    return 1;
}
CMD:checkfly(playerid, params[])
{
    static const MSG_USE_CMD[] = !"» Usage the command: /checkfly [playerid]";
    
    if(isnull(params)) {
        return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0;
    }

    new id;
    if(sscanf(params, "u", id)) {
        return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0;
    }

    if(id == INVALID_PLAYER_ID) {
        return SendClientMessage(playerid, -1, !"The player is not connected") & 0;
    }

    static const status_fly[][] =
    {
        !"The player is not flying",
        !"The player is flying"
    };
    
    SendClientMessage(playerid, -1, status_fly[IsPlayerFlying(id)]);
    return 1
}

 

fly.inc

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


Ссылка на сообщение
Поделиться на другие сайты
Lafiho1
Новичок

\pawno\include\fly.inc(92) : warning: recursion in SetPlayerFlyStatus
Disable recursion warning: #pragma disablerecursion or #pragma warning disable 238

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


Ссылка на сообщение
Поделиться на другие сайты
Cawfee
Великий Гуру

@Lafiho1, в данном случае рекурсия является контролируемой, что позволяет проигнорировать появление данное предупреждения.

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


Ссылка на сообщение
Поделиться на другие сайты
Lafiho1
Новичок

Проверил, все работает, жаль что не уберешь эти warning при компиляции

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


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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


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

Войти

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


Войти

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

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

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

    • Danya_Smolin
      От Danya_Smolin

      Что добавили в доработку мода страйк:
      1. Викторина
      2. Новый вокзал
      3. Аренда мопедов по пикапу
      4. Система грандиозного пропуска (Батл-пасс)
      5. Система подарков
      6. Премиум аккаунт
      7. Эксклюзивные автомобили
      8. Добавили очень много команд для администраторов
      9. Новое окно авторизации

      10. Новая система бизнесов

      11. Добавили команду /fixcar
      12. Система военного положения
      13. Система аварии на зоне-51

      14. Система подкупного полицейского

      15. Новый логотип
      16. Добавили много новых аксессуаров
      17. Добавили таймер в виде TextDraws.

      18. Музыка при регистрации и на вокзале
      19. Добавили маппинг КПП и домиков на дереве

      20. Исправили множество багов

      21. Добавили сертификаты

      22. Добавили навыки

      23. Добавили рынок барыг

      24. Добавили инвесторов
      25. Добавили 5 новых мест в /gps

      26. Добавили обучение персонажа

      27. Новые интерьеры
      28. Добавили админские команды

      29. Система контейнеров

      30. Система создания семей

      31. Система сертификатов

      32. Система кейсов
      33. Добавили челлендж на донат-рубли

      34. Добавили маппинг на пляже

      35. Добавили команды для мероприятия

      36. Добавили новые банкоматы

      37. Добавили команду /anticheat

      38. Добавили команду /veh

      39. Система барыг

      40. Система инвесторов

      41. Добавили систему привилегий

      42. Добавили новый магазин для выгодных покупок только для привилегий - /pdonate
      43. Переписан /donaterub.

      44. Добавлено 13 костюмов.

      45. Исправлена база данных.

      46. Исправлены мелкие баги.

      47. Добавлено 17 титулов.

      48. Исправлен /donaterub.

      49. Теперь эксклюзивные машины сохраняются после выхода.

      50. Ваши мани теперь под защитой и их не украдут мошенники после перезахода.

      51. Скин сохраняется после выхода/перезахода.

      52. Донат/Деньги/Уровень сохраняется после перезахода.

      53. Исправлены ошибки в БД.
    • Danya_Smolin
      От Danya_Smolin
      Cтрайк Рп
      Скачать файл
      Что добавили в доработку мода страйк:
      1. Викторина
      2. Новый вокзал
      3. Аренда мопедов по пикапу
      4. Система грандиозного пропуска (Батл-пасс)
      5. Система подарков
      6. Премиум аккаунт
      7. Эксклюзивные автомобили
      8. Добавили очень много команд для администраторов
      9. Новое окно авторизации

      10. Новая система бизнесов

      11. Добавили команду /fixcar
      12. Система военного положения
      13. Система аварии на зоне-51

      14. Система подкупного полицейского

      15. Новый логотип
      16. Добавили много новых аксессуаров
      17. Добавили таймер в виде TextDraws.

      18. Музыка при регистрации и на вокзале
      19. Добавили маппинг КПП и домиков на дереве

      20. Исправили множество багов

      21. Добавили сертификаты

      22. Добавили навыки

      23. Добавили рынок барыг

      24. Добавили инвесторов
      25. Добавили 5 новых мест в /gps

      26. Добавили обучение персонажа

      27. Новые интерьеры
      28. Добавили админские команды

      29. Система контейнеров

      30. Система создания семей

      31. Система сертификатов

      32. Система кейсов
      33. Добавили челлендж на донат-рубли

      34. Добавили маппинг на пляже

      35. Добавили команды для мероприятия

      36. Добавили новые банкоматы

      37. Добавили команду /anticheat

      38. Добавили команду /veh

      39. Система барыг

      40. Система инвесторов

      41. Добавили систему привилегий

      42. Добавили новый магазин для выгодных покупок только для привилегий - /pdonate
      43. Переписан /donaterub.

      44. Добавлено 13 костюмов.

      45. Исправлена база данных.

      46. Исправлены мелкие баги.

      47. Добавлено 17 титулов.

      48. Исправлен /donaterub.

      49. Теперь эксклюзивные машины сохраняются после выхода.

      50. Ваши мани теперь под защитой и их не украдут мошенники после перезахода.

      51. Скин сохраняется после выхода/перезахода.

      52. Донат/Деньги/Уровень сохраняется после перезахода.

      53. Исправлены ошибки в БД.
      Добавил Danya_Smolin Добавлено 07.07.2025 Категория Моды Автор Pwn_Admin  
    • Kasper0
      От Kasper0
      Продаётся готовый проект CRMP.
      Готовый игровой мод База Данных с более чем 350к аккаунтов Сборка, скинпак/автомобили, карта Домены Сайт,лаунчер Чат-боты Более 5 бэкапов игрового мода, начиная с версии 0.3e Связаться: t.me/zayhhik
    • Kasper0
      От Kasper0


      Скачать файл Criminal Russia RolePlay (CRMPRP)
      Всех приветствую, в наличии мод CRMPRP. Разрабатывался с 2013 года если не ошибаюсь от бывшего Владельца (полностью оригинал + так-же имеется БД с сайтом и системой логов). Мод без бонуса, куча работ для новичков например: (Лесопилка,ферма,рыбалка,водитель автобуса,автомеханик,дольнабойщики,завод,таксист и др.) имеется система квестов, система домов (5 классов + возможность заменять интерьеры и система чердака), система гаражей (3 класса), обширная система семей, обширная система *ОПГ. Мод спокойно может выдержать 500+ онлайна
      Добавил Kasper0 Добавлено 05.07.2025 Категория Моды Автор Tim  
    • OREGON-RPG
      От OREGON-RPG
      **Привет, будущий друг!**
      Мы создаем новый сервер в >> GTA SA-MP (OregoN Role Playing Game) << и ищем таких же увлеченных игроков, как ты!!!

      Здесь ты сможешь: 

      Влиять на развитие сервера – твое мнение важно! 

      Найти друзей и классную компанию.
       
      Стать частью уютного комьюнити, где все друг за друга.

      Сервер еще в разработке – это шанс войти в историю с самого начала! 

       >>> Давай строить этот мир вместе? <<<

       Переходи по ссылке, будь в центре событий и стань частью истории: 

      [ Группа ВКонтакте: vk.com/oregonrpgru ]

      [ Форум: oregon-rpg.ru ]