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

    Всего на сайте: 2
    Гостей: 1
    Пользователи: - отсутствуют
    Роботы: crawl Bot

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Monstr™ Дата: 28-03-2012, 21:05 Просмотров: 3828

    FM_SetModel функция отлова установки модели для entity

    Форвард отлавливает(хукает) момент установки любой модели.

    • Функция имеет 2 аргумента ent, const model[] - ent индекс entity, const model[] модель которая установлена(устанавливается)
    • Функция не чего не возвращает

    При регистрации необходимо указать пре или пост(до или после).

    Пример:
    /* Plugin generated by AMXX-Studio */

    #include <amxmodx>
    #include <amxmisc>
    #include <fakemeta>

    #define PLUGIN "[fakemeta.inc] FM_SetModel"
    #define VERSION "0.1"
    #define AUTHOR "Mon[str]"


    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR);
        
        //Зарегистрируем форвард
        register_forward(FM_SetModel, "fm_SetModel_Post", 1); //Ставим пост так как нам не нужно не чего блочить - 1
    }

    public fm_SetModel_Post(ent, const model[])
    {
        //Если попадает в условие выходим из функции
        if(!pev_valid(ent) || !equali(model, "models/w_hegrenade.mdl", 22))
            return;
            
        client_print(0, print_chat, "Set model HeGrenade it's True");    
    }


    Описание:
    В данном примере мы рассматриваем отлов броска взрывной гранаты.

    Как я указал в комментариях я зарегистрировал данный форвард.
    В функции мы проверяем на существование объекта и на совпадение устанавливаемой модели в данном случае это взрывная граната.
    Если одно из аргументов попало в условие то выходим из функции то есть дальнейший код не выполниться.

    Если все правильно получилось то в момент когда вы кинете взрывную гранату вам в чат напишет сообщение
    Set model HeGrenade it's True

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

Реклама