Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 8
    Гостей: 6
    Пользователи: - отсутствуют
    Роботы: robot Bot, Google Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Nestle_ Дата: 27-10-2014, 22:54 Просмотров: 2660
    Проверим энтити, игрок ли оно?

    Инфо из ham_const.inc:
    /** 
    * Description:        Whether or not the entity is a player.
    * Forward params:    function(this);
    * Return type:        Integer (boolean) .
    * Execute params:    ExecuteHam(Ham_IsPlayer, this);
    */
    Автор: Nestle_ Дата: 27-10-2014, 22:54 Просмотров: 2338
    Добавление боеприпасов.

    Инфо из ham_const.inc:
    /**
    * Description:        Gives ammo to the entity.
    *                    This function is not supported for the following mods:
    *                        Earth's Special Forces.
    *                        Sven-Coop 4.8+, see Ham_SC_GiveAmmo instead.
    *                        Team Fortress Classic, see Ham_TFC_GiveAmmo instead.
    * Forward params:    function(this, Amount, const Name[], Max)
    * Return type:        Integer.
    * Execute params:    ExecuteHam(Ham_GiveAmmo, this, amount, "type", max);
    */
    Автор: VForVendetta Дата: 22-02-2013, 13:40 Просмотров: 2536
    С помощью данной констаты виртуальной функции вы сможете отследить появление(возрождение) вещей, которые создаются с помощью карты, такие как health kit и т.д.
    Автор: Awake Дата: 27-10-2012, 19:43 Просмотров: 4244
    Данное событие вызывается в момент получения оружия (когда покупаете или подбираете его с земли). Используется во всех оружиях из зомби мода, можете сами посмотреть и немного разобраться. Я приведу небольшой пример по использованию данного события.

    Инфо из ham_const.inc
    /**
    * Description:        Adds the item to the player.
    * Forward params:    function(this, idPlayer);
    * Return type:        Integer (boolean).
    * Execute params:    ExecuteHam(Ham_Item_AddToPlayer, this, idPlayer);
    */
    Ham_Item_AddToPlayer
    Автор: Admin Дата: 14-10-2012, 01:19 Просмотров: 3244
    Очень редко встречающаяся функция, если точнее всего в одном плагине нашел пример и долго не мог смоделировать ее работу, но в итоге получилось и ее смысл стал понятен мне, теперь делюсь с вами. Представьте себе что у вас на сервере установлено несколько плагинов которые работают с одним и тем же событием, ну скажем получение урона:

    Первый плагин:
    Блокирует урон от своих.

    Второй плагин:
    Показывает нанесенный урон.

    Если зайти на сервер где установлены такие плагины и выстрелить в своего, то будет показано сообщение что нанесен такой то урон, но фактически его нету.
    Так как блокировался урон с помощью return HAM_SUPERCEDE ( это не самый верный способ, просто как самый простой и наглядный пример). И сообщение в итоге будет не верным, что бы такого не было, с помощью функции GetHamReturnStatus можно проверить статус данного события и сделать соответствующие корректировки.
    Автор: Admin Дата: 14-10-2012, 00:10 Просмотров: 2294
    После того как с помощью функции DisableHamForward была приостановлена работа форварда, не редко требуется вновь его запустить, делается это с помощью функции EnableHamForward.

    Инфо из hamsandwich.inc:
    /**
    * Starts a ham forward back up.
    * Use the return value from RegisterHam as the parameter here!
    *
    * @param fwd            The forward to re-enable.
    */
    native EnableHamForward(HamHook:fwd);

    Автор: Admin Дата: 13-10-2012, 22:56 Просмотров: 3206
    Принципиальным отличием функции RegisterHamFromEntity от RegisterHam является то, что форвард создается не для класса объектов, а для конкретного одного объекта ( это может быть и один игрок) все остальное одинаковое.

    Инфо из hamsandwich.inc:
    /**
    * Hooks the virtual table for the specified entity's class.
    * An example would be: RegisterHam(Ham_TakeDamage, id, "player_hurt");
    * Look at the Ham enum for parameter lists.
    * Note: This will cause hooks for the entire internal class that the entity is
    *       not exclusively for the provided entity.
    *
    * @param function        The function to hook.
    * @param EntityId        The entity classname to hook.
    * @param callback        The forward to call.
    * @param post            Whether or not to forward this in post.
    * @return                 Returns a handle to the forward.  Use EnableHamForward/DisableHamForward to toggle the forward on or off.
    */
    native HamHook:RegisterHamFromEntity(Ham:function, EntityId, const Callback[], Post=0);
Наверх

Реклама