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

    Всего на сайте: 12
    Гостей: 7
    Пользователи: - отсутствуют
    Роботы: Yandex Bot, Yandex Bot, crawl Bot, Google AdSense, Google Bot

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 26-10-2011, 00:49 Просмотров: 5566

    set_rendering Функция устанавливает различные эффекты объекту/игроку

    Данная функция устанавливает различные эффекты объекту или игроку.
    Эффекты в виде свечения или полу прозрачности и другие, я все не изучал.

    Инфо из engine_stocks.inc:
    /*  Set rendering of an entity */
    stock set_rendering(index, fx=kRenderFxNone, r=255, g=255, b=255, render=kRenderNormal, amount=16)
    {
        entity_set_int(index,EV_INT_renderfx,fx);
        new Float:RenderColor[3];
        RenderColor[0] = float(r);
        RenderColor[1] = float(g);
        RenderColor[2] = float(b);
        entity_set_vector(index,EV_VEC_rendercolor,RenderColor);
        entity_set_int(index,EV_INT_rendermode,render);
        entity_set_float(index,EV_FL_renderamt,float(amount));

        return 1;
    }


    Синтаксис:
    set_rendering ( index, fx=kRenderFxNone, r=255,g=255,b=255, render=kRenderNormal,amount=16 )


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

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

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

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

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

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        register_clcmd("say /rendoff","rendoff")
        register_clcmd("say /rendon","rendon")
        register_clcmd("say /chick","add_chicken")
        
    }
    public plugin_precache(){
        precache_model(g_Model)
    }
    public rendoff(id){    

         set_rendering (id,kRenderFxNone,255,255,255,kRenderNormal,16)
         set_rendering (Ent,kRenderFxNone,255,255,255,kRenderNormal,16)
    }
    public rendon(id){    
        set_rendering( id,kRenderFxGlowShell,0,0,0,kRenderTransAlpha,20)
        set_rendering( Ent,kRenderFxGlowShell,0,0,0,kRenderTransAlpha,20)
    }
    public add_chicken(id){
        
        Ent = create_entity("info_target")
        
        if(is_valid_ent(Ent)){
            
            entity_set_model(Ent, g_Model)
            entity_set_size(Ent,Float:{-6.0, -10.0, 0.0},Float:{6.0, 10.0, 18.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)
            
            entity_set_float(Ent, EV_FL_takedamage, DAMAGE_YES)
            
            new Float:angles[3]
            angles[0] = 0.0
            angles[1] = 0.0
            angles[2] = 0.0
            entity_set_vector(Ent,EV_VEC_angles,angles)
            
            drop_to_floor(Ent)
        }
    }


    Описание:
    Функция аналогична функции из модуля FUN set_user_rendering
    В этом примере же создан объект в виде курицы, на котором так же будет виден эффект как и на игроке.
    Эффект в виде 20 процентной видимости объекта, над которым выполнялась функция.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    arwel

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

    Круто. А как мне например ауру как у выжевшего в zombie plague сделать?
    Admin

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

    Не знаю, посмотри как сделано там )
    --------------------
    s1lent

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

    arwel,
    arwel

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

    s1lent,
    Спасибо.
    А кто-то может знает, как сделать запрет на поднятие оружия игроку?
    Admin

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

    Вот тут глянь:
    http://amxmodx.su/forum/viewtopic.php?p=1539#p1539 ( дочитай всю тему)
    --------------------
    arwel

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

    Отлично:) Спасибо большое.
    Monstr™

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

    аура
    #include <fakemeta>

    set_pev(ent, pev_effects, EF_BRIGHTLIGHT)
    Maksovich

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

    Я долго ковырялся с параметрами. Хотел найти просто подсветку игроков типа как функция Lambert в некоторых читах. Если кто знает как нужно выставить то подскажите.

    Например при таком значении:
    set_rendering(id,kRenderFxNone,255,255,255,kRenderTransAdd,200);

    Модельки подсвечиваются, но они полу-прозначные какие-то:
    http://s017.radikal.ru/i423/1111/ae/4ddae00a539a.jpg

    Да и еще в режиме kRenderFxGlowShell нельзя ли сделать чтобы аура просто светилась а не переливалась? Я например сделал позможность выключить свет на карте и такую подсветку но она переливается и в темноте то лучше то хуже видно игроков. Хотелось бы постоянной подсветки, желательно разными цветами под цвет команд.
    gavrilyuc

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

    Меня этот вопрос зажуёт...
    Можно ли устанавливать эффект таким образом что бы один игрок видел как невидимость а другой как подсветку зелёным?
    Имеется в виду, допустим есть две команды :
    Одна команда невидима, но игроки из этой команды могут видеть игроков из своей команды зелёным цветом, а другая команда не могла видеть ту команду(та которая как бы невидима)

    Возможно я не так разобрал функцию... как понял эту функцию :
    -- она устанавливает эффект определённому игроку(вешая как бы на его модель)
    и все это видит какой у него эффект.

    Если я не прав, прошу помощи с "Правильным" разбором этой функции...
    Safety1st

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

    gavrilyuc, функция set_rendering() и её 'аналог' из fun'а set_user_rendering() устанавливают эффекты глобально: все на сервере видят одно и то же. Чтобы одна и та же entity была с различными свойствами для каждого игрока, такие модификации нужно выполнять персонально для него в форварде FM_AddToFullPack. Но пока не станете опытным скриптером - не трогайте его: он выполняется просто с космической скоростью: порядка 10000 раз в секунду. А когда станете - всё равно старайтесь избегать его использования xD Можно решать подобные задачи другими путями, часто - более примитивными, но совсем ненагрузочными по сравнению с FM_AddToFullPack, а где-то разумнее вообще пожертвовать красотой, но сидеть без лагов и с нормальными FPS'ами.
    --------------------

    Информация

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

Реклама