May 252013
 

Этот плагин поможет избавиться от некоторой нудной работы, такой как поиск оффсетов, добавления своих дополнительных функций и регистрирования команд типа register_clcmd(“weapon_mygun”, “switch_handler”)

Сейчас всё объясню на примере тестового плагина, который меняет hud ножу.

Прежде всего подключаем инклуд
#include <hud>

Теперь для удобства определим константы нашего старого оружия и нового

В plugin_init() зарегистрируем все эти худы

Теперь необходимо закачать клиенту сам спрайт и специальные .txt файлы с именами наших новых ножей, т.е. мы должны настроить 5 файлов:
weapon_knife1.txt
weapon_knife2.txt
weapon_knife2.txt
weapon_knife3.txt
weapon_knife5.txt

Содержимое файлов примерно такое:

общий формат такой
<тип> <разрешение> <спрайт> <смещение_по_X> <смещение_по_Y> <ширина> <высота>
Тип может быть следующий: weapon, weapon_s, ammo, ammo2, autoaim, crosshair, zoom, zoom_aim.

Теперь нужно закачать игроку спрайты и .txt файлы:

Чтоб мы могли всё это дело проверить зарегистрируем команды в plugin_init :

Вот и сами функции:

Структура функции n21_hud_change_to
1 аргумент – id игрока
2 аргумент – имя оружия, худ которого мы меняем
3 аргумент – имя нового оружия

Такой вызов функции:
n21_hud_change_to(id, "weapon_knife", "weapon_knife")
вернёт стандартный худ ножа, т.е. чтобы вернуть стандартный худ оружия, нужно его указать во 2 и 3 аргументах функции.

Таким образом в результате мы получаем такой тестовый плагин:

Важно понимать, что это всего лишь пример, это НЕ готовая реализация, вы можете использовать функции, которые предоставляет плагин, как угодно и где угодно, он всего лишь избавляет от рутины, логику работы вы продумываете сами, вас не заставляют придерживаться каких-то рамок.

Необходимо что бы плагин custom_hud.amxx был выше в списке plugins.ini плагинов использующих инклуд hud.inc
Плагин custom_hud.amxx подключить нужно обязательно!

Оставить комментарий

Пожалуйста, авторизуйтесь чтобы добавить комментарий.
  Подписаться  
Уведомление о