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

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

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 22-10-2011, 00:30 Просмотров: 4979

    entity_set_int Функция устанавливает ключевые переменные (целые числа)

    С помощью функции entity_set_int устанавливаются различные свойства для объекта. Все варианты рассматривать не буду, возьму одну, которая отвечает за то, что произойдет при касании к объекту.

    Инфо из engine.inc:
    native entity_set_int(iIndex, iKey, iVal);


    Синтаксис:
    ntity_set_int ( entity, key, value )

    • entity - id объекта
    • key - Ключ.Чтобы видеть, какие ключевые переменные объекта доступны, см. файл engine_const.inc.
    • value - Значение


    Тип функции:
    Native

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

    #include <amxmodx>
    #include <amxmisc>
    #include <engine>

    #define PLUGIN "[engine.inc] entity_set_int"
    #define VERSION "1.0"
    #define AUTHOR "Admin"

    new g_Model[] = {"models/chick.mdl"}

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        register_clcmd("say /chick","add_chicken")
    }
    public plugin_precache(){
        precache_model(g_Model)
    }
    public add_chicken(id){
        
        new Ent = create_entity("info_target")
        
        if(is_valid_ent(Ent)){
            
            entity_set_model(Ent, g_Model)
            entity_set_size(Ent,Float:{0.0,0.0,0.0},Float:{30.0,30.0,30.0})
            
            new Float:f_Origin[3]
            entity_get_vector(id, EV_VEC_origin, f_Origin)    
            f_Origin[0] += 50.0
            entity_set_origin(Ent, f_Origin)        

            entity_set_int(Ent,EV_INT_solid,SOLID_BBOX)
        }
    }


    Описание:
    Так как данный модуль не самый простой, то я рискну предположить что вам уже не надо пояснять как регистрируются команды, массивы и так далее.
    Так же предполагаю что вы уже ознакомились с функциями создания объекта create_entity, установки модели entity_set_model, размера entity_set_size, получения вектора entity_get_vector и его установки entity_set_vector. Займемся сразу функцией entity_set_int.

    И так, наша функция в коде:
    entity_set_int(Ent,EV_INT_solid,SOLID_BBOX)

    • Ent - Объект которому устанавливаем свойство
    • EV_INT_solid - Какое свойство (что произойдет при касании объекта)
    • SOLID_BBOX - Значение свойства ( блокировать движение, т.е. объект станет плотным)


    Если вы все сделали правильно, то где то рядом с вами появится курица,которая будет твердой, т.е. она будет мешать движению и на нее можно будет запрыгнуть.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    Maf1a

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Admin,Не полностью работает...Курица поевляеться,но она чючють мешает движению,и на нее НЕЛЬЗЯ запрыгнуть....Как сделать ее полностью твердой?
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    Размеры создаваемого объекта увеличить попробуй.
    Честно горя я только учусь с объектами работать и предпочитаю модуль fakemeta.
    Но о нем позже.
    --------------------
    Monstr™

    29.09.2011
    ICQ: 631967458
    Публикаций: 12
    Комментариев: 22
    Репутация: -  0  +

    Я тоже предпочитаю модуль fakemeta мне кажется он практичен!
    Sn1k3rS

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Спасибо за статью
    True_Hacker

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    А как сделать чтобы при прикосновении к обьекту выполнялась другая public функция ? belay

    Именно Engine,FakeMeta меня не интересует
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  58  +

    True_Hacker,
    1) Ты темой ошибся
    2) Сформулируй вопрос более точно.
    так как на твой вопрос такой ответ:

    Задавать другую функцию.
    --------------------

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама