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

    Всего на сайте: 8
    Гостей: 0
    Пользователи: ALMY
    Роботы: Yandex Bot, crawl Bot, Mail Ru, Mail Ru, crawl Bot, crawl Bot, Yandex Bot

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 16-06-2012, 15:49 Просмотров: 4303

    set_es Функция изменяет состояние объектов

    В модуле fakemeta есть набор констант EntityState Constants и две функции для работы с ними, одна get_es для получения значения переменной, вторая set_es для изменения. Обратите внимание на то, что функции могут работать только с помощью форварда FM_AddToFullPack, в противном случае может упасть сервер.

    Инфо из fakemeta.inc:
    // These functions are used with the entity_state data structure (FM_AddToFullPack)
    // Get: 0 extra params - Return integer; 1 extra param - by ref float or vector or array
    // Set: Use anything
    // Use 0 for es_handle to specify the global entity_state handle
    native set_es(es_handle, EntityState:member, {Float,_}:...);


    Синтаксис:
    set_es(es_handle, EntityState:member, {Float,_}:...)

    • es_handle - Указатель на структуру состояния ( первый аргумент из события FM_AddToFullPack)
    • EntityState:member - Константа из списка EntityState
    • {Float,_}:... - Если для константы необходимые какие-то еще значения.


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

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

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

    #define PLUGIN "[fakemeta.const] set_es"
    #define VERSION "1.0"
    #define AUTHOR "Admin"

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        
        register_forward( FM_AddToFullPack,"FwdFullPack", 1 )

    }
    public FwdFullPack( es, e, ent, host, flags, player, pSet ) {
        
        set_es( es, ES_RenderAmt, 85 )


    }


    Описание:
    Данный пример будет делать немного прозрачными всех игроков и ботов на сервере.

    Как видно в коде, в инициализации плагина зарегистрирован форвард FM_AddToFullPack, и назначена исполняющая функция.
    Внутри функции с помощью функции set_es мы изменяем параметр ES_RenderAmt, в результате чего все игроки становятся полупрозрачными.

    Обратите внимание на то, что данный форвард вызывается ОЧЕНЬ часто и без особой надобности не стоит его использовать.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Наверх

Реклама