Закрыть Привет! Если вы читаете это - Вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы пользоваться всеми возможностями нашего форума. Обратите внимание, запрещены непристойные, матерные, бессмысленные (цифры, случайный набор букв) ники. Удачи!

Тема: key_pickupfix.inc

Показано с 1 по 8 из 8

  1. #1
    /proger/

    Аватар для whale

    Статус: Онлайн
    Регистрация:20.09.2013
    Сообщений:735
    Репутация:229 [+/-] 

    key_pickupfix.inc

    Описание:
    Данный инклуд был написан с целью устранить всем известную проблему повторного подбора пикапа посредством использования клавиши (как, в принципе, можно было догадаться из названия). То есть, встав на пикап, Вам нужно нажать заданную клавишу для его срабатывания.

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

    • По умолчанию пикапы срабатывают обычным способом. Существует 2 функции для создания пикапов, которые будут срабатывать на кнопку (каждому пикапу можно задать определённую клавишу для срабатывания).

    • Поддержка Streamer plugin от Incognito.

    Пример:
    PHP код:
    #define KEY_PICKUPFIX_USED_KEY    KEY_WALK // Данный макрос существует для двух функций представленных ниже.
    #include <key_pickupfix.inc> 

    Функция
    Описание
    Возвращает
    key_CreatePickup(model, type, Float:X, Float:Y, Float:Z, virtualworld = 0, usedkey = KEY_PICKUPFIX_INVALID_USED_KEY) Создаёт статический пикап, который срабатывает на кнопку, если указан параметр usedkey (ID кнопки, на которую будет срабатывать пикап), либо объявлен макрос KEY_PICKUPFIX_USED_KEY. ID созданного пикапа.
    key_CreateDynamicPickup(modelid, type, Float:x, Float:y, Float:z, worldid = -1, interiorid = -1, playerid = -1, Float:streamdistance = STREAMER_PICKUP_SD, STREAMER_TAG_AREA areaid = STREAMER_TAG_AREA -1, priority = 0, usedkey = KEY_PICKUPFIX_INVALID_USED_KEY) Создаёт динамический пикап, который срабатывает на кнопку, если указан параметр usedkey (ID кнопки, на которую будет срабатывать пикап), либо объявлен макрос KEY_PICKUPFIX_USED_KEY. ID созданного пикапа.


    Автор: whale (a.k.a Twixxx/Twixyck)
    Исходный код: https://pastebin.com/PSJQ3h9x
    Скачать: https://www.dropbox.com/s/654skqqrjb...upfix.inc?dl=0

    История версий:

    Открыть спойлер


    Код:
    • 14.04.2018 | v1.0 - Релиз. • 15.04.2018 | v1.1 - Добавлена совместимость статического перечисления со старыми версиями компилятора. • 16.04.2018 | v1.2 - Теперь, по умолчанию, не все пикапы срабатывают на кнопку. Для создания пикапов по кнопке существует 2 функции: key_CreatePickup - для статических пикапов и key_CreateDynamicPickup - для динамических пикапов соответственно (см. более подробную информацию в представленной таблице выше). • 22.04.2018 | v1.2.1 - Убран знак подчёркивания ("_") у префикса. Добавлен префикс для перечислений.
    [Скрыть]
    Последний раз редактировалось whale; 22.04.2018 в 23:09. Причина: UPD v1.2.1
  2. 3 пользователей сказали cпасибо whale за это полезное сообщение:

    execution (24.04.2018), Iwka (16.04.2018), Valera_Kovshikov (15.04.2018)

  3. #2
    /proger/

    Аватар для whale

    Статус: Онлайн
    Регистрация:20.09.2013
    Сообщений:735
    Репутация:229 [+/-] 
    100+ просмотров темы, 70+ просмотров source-кода и ни одного комментария? Обидненько :)
  4. #3
    Модератор 3 уровня

    Аватар для #Rips

    Статус: Оффлайн
    Регистрация:16.12.2015
    Адрес:localhost
    Сообщений:1,546
    Репутация:611 [+/-] 
    100+ просмотров темы, 70+ просмотров source-кода и ни одного комментария? Обидненько :)
    А что тут сказать? Появился новый фикс пикапов по кнопки, но есть еще один фикс пикапом от Edwin'a
    Продвижение на портале: Пользователь | NewsMakers | Модератор 1-го уровня | Модератор 2-го уровня | Модератор 3-го уровня

    Кликабильный текст:

    Отзывы обо мне

  5. #4
    /proger/

    Аватар для whale

    Статус: Онлайн
    Регистрация:20.09.2013
    Сообщений:735
    Репутация:229 [+/-] 
    UPD v1.1: Добавлена совместимость статического перечисления со старыми версиями компилятора.
  6. #5
    /proger/

    Аватар для whale

    Статус: Онлайн
    Регистрация:20.09.2013
    Сообщений:735
    Репутация:229 [+/-] 
    UPD v1.2: Теперь, по умолчанию, не все пикапы срабатывают на кнопку. Для создания пикапов по кнопке существует 2 функции:
    key_CreatePickup - для статических пикапов и key_CreateDynamicPickup - для динамических пикапов соответственно (см. более подробную информацию в представленной таблице на первой странице).
  7. #6
    /proger/

    Аватар для whale

    Статус: Онлайн
    Регистрация:20.09.2013
    Сообщений:735
    Репутация:229 [+/-] 
    UPD v1.2.1 - Убран знак подчёркивания ("_") у префикса. Добавлен префикс для перечислений.
  8. #7
    • Профик •

    Аватар для #Djuga

    Статус: Оффлайн
    Регистрация:21.09.2017
    Адрес:localhost
    Сообщений:1,198
    Репутация:403 [+/-] 
    Можно сделать ещё так, если игрок становится на пикап, то ему показывается GameText, с текстом "Press /"key"/"
    ШОК ИНФОРМАЦИЯ:
    PHP код:
    printf({357911497110103101573210811111810111532115117991071153210010599107}); 
  9. #8
    Зарегистрированый

    Аватар для Отаку

    Статус: Онлайн
    Регистрация:19.05.2018
    Адрес:Киров
    Сообщений:7
    Репутация:18 [+/-] 
    В данной реализации не используются [...] перехват функций создания пикапов [...] что могло бы, в принципе, нагружать сервер.
    Странно, чем это перехват функций создания пикапов наргружают сервер, а перехват OnPlayerKeyStateChange(), OnPlayerPickUpDynamicPickup(), OnPlayerPickUpPickup() и OnPlayerConnect() - нет?
    3QFHmvy4c8Q.jpg

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения