[ TE_DLIGHT ] Подсветка обьектов

Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Много людей ставят баннеры рекламы,всяких вывесок ,щитов и прочих энтити на карте.
И ставят их желательно в светлых местах,что-бы всем было всё видно..

Но есть моменты,когда хочется поставить на спавне КТ ( на том же дасте 2 ),а там темновато.
Или же имеется зомби сервер с темным режимом,или вовсе список настроенных карт темноватых и.т.д. и.т.п

И тут мы хотим,что-бы наш обьект принимал какой-то режим подсветки
Нам на помощь прейдёт мессага TE_DLIGHT

Есть это свечение и у pev_effects, EF_ ,но там недостаточно скажем так "функционала" 😉

Можно проделать всё,что угодно - настроить позицию смещения xyz,радиус свечения,цвет,рейты и прочее
Даже тот же режим рандома на выбор

Привожу свои 2 примера - а Вы можете подстроить свои значения

Загоняем это туда,где у Вас создаётся Энтити обьект

Код:
    new light_random;
    light_random = random_num(0,1);

    switch(light_random)
    {
        case 0:
        {
            Light_Bilboard_White(iEntity);
        }
        case 1:
        {
            Light_Bilboard_Colored(iEntity);
        }
    }
Далее это у свободное место

Код:
public Light_Bilboard_White(iEntity)
{       
    if(!pev_valid(iEntity))
        return;
        
    new Float:fOrigin[3];   
    pev(iEntity, pev_origin, fOrigin)
        
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
    write_byte(TE_DLIGHT);
    engfunc(EngFunc_WriteCoord, fOrigin[0] += 22.0);
    engfunc(EngFunc_WriteCoord, fOrigin[1]);
    engfunc(EngFunc_WriteCoord, fOrigin[2]);
    write_byte(5)
    write_byte(255)
    write_byte(255)
    write_byte(255)
    write_byte(50)
    write_byte(0)
    message_end()       
 
    set_task(0.5, "Light_Bilboard_White", iEntity) 
}

public Light_Bilboard_Colored(iEntity)
{       
    if(!pev_valid(iEntity))
        return;
        
    new Float:fOrigin[3];   
    pev(iEntity, pev_origin, fOrigin)
        
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
    write_byte(TE_DLIGHT);
    engfunc(EngFunc_WriteCoord, fOrigin[0] += 22.0);
    engfunc(EngFunc_WriteCoord, fOrigin[1]);
    engfunc(EngFunc_WriteCoord, fOrigin[2]);
    write_byte(5)
    write_byte(random(255))
    write_byte(random(255))
    write_byte(random(255))
    write_byte(2)
    write_byte(0)
    message_end()       
 
    set_task(0.1, "Light_Bilboard_Colored", iEntity) 
}
Вот и всё,что нам нужно

 
Сообщения
336
Реакции
174
Помог
11 раз(а)
MayroN, если не изменяет память, то плагин "светящихся палок", использует ту же мессагу
 
Сообщения
336
Реакции
174
Помог
11 раз(а)
MayroN, автора уже не вспомню. Видел где-то на просторах интернета его когда изучал мессаги и способ сделать освящение для конкретного игрока
 
Сообщения
520
Реакции
458
Предупреждения
17
Помог
8 раз(а)
Стоит отметить что динамические света больное место goldsrc (и дело не только в железе)
 
Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Да,все верно
 
Сообщения
246
Реакции
268
Помог
2 раз(а)
MayroN, а почему просто гамму не изменишь в моделе?)
22 Янв 2023
MayroN,
гамма:
1674398802409.png

можешь установить флаг подсветки 1024
 

Вложения

Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Arni,
Это что такое там с гаммой ,напомни?

Я пробовал флаги ,forceskylight и fullbright или как там они называются ( не с ПК сейчас,точное название не скажу ) ,- отвечают за подсветку

Но это в голде не работает
 
Сообщения
246
Реакции
268
Помог
2 раз(а)
MayroN, как вернусь к amxx, пораскидаю всё как есть в беседе вк.
 
Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Вот ещё один метод подсветки по дистанции игрока ( что-бы постоянно не подсвечивать обьект ) от ImmortalAmxx

Рег
Код:
    register_forward(FM_PlayerPreThink, "Think_Bilboard");
В свободное место
Код:
public Think_Bilboard(id)
{
    new Float: flEntOrigin[3], Float: flUserOrigin[3];

    static iEntity;
    iEntity = find_ent_by_class(iEntity, "env_bilbord");
    if(iEntity > -1)
    {
        pev(iEntity, pev_origin, flEntOrigin);
        pev(id, pev_origin, flUserOrigin);

        if(get_distance_f(flEntOrigin, flUserOrigin) <= 150.0)
        {
            Light_Bilboard_Colored(iEntity);
        }
        else if(task_exists(iEntity))
        {
            remove_task(iEntity);
        }
    }
}

public Light_Bilboard_Colored(iEntity)
{       
    if(!pev_valid(iEntity))
        return;
        
    new Float:fOrigin[3];   
    pev(iEntity, pev_origin, fOrigin)
        
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
    write_byte(TE_DLIGHT);
    engfunc(EngFunc_WriteCoord, fOrigin[0] += 25.0);
    engfunc(EngFunc_WriteCoord, fOrigin[1]);
    engfunc(EngFunc_WriteCoord, fOrigin[2]);
    write_byte(5)
    write_byte(random(255))
    write_byte(random(255))
    write_byte(random(255))
    write_byte(2)
    write_byte(0)
    message_end()       
 
    set_task(0.1, "Light_Bilboard_Colored", iEntity) 
}
 
Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Последнее редактирование:
Сообщения
705
Реакции
475
Помог
10 раз(а)
Может с доставкой MSG_PVS_R или это уже ретро?)
R - reliable
значит что мессага 100% будет доставлена

покидайся-покидайся надежным каналом на всякое, пока тебя не кикнет)
 
Сообщения
246
Реакции
268
Помог
2 раз(а)
I will shut my mouth and give you your money 😉
Куда номер карты скидывать? :crazy: Никакого amxx кода, только модель (если не верим, могу скинуть файл модельки). Походу, мне нужно написать полное руководство по моделям и их созданию.
awp_night_castle0000.jpgawp_night_castle0001.jpg
 
Сообщения
705
Реакции
475
Помог
10 раз(а)
Arni, свет от вспышки выстрела в анимации? 🤨
 
Сообщения
246
Реакции
268
Помог
2 раз(а)
BalbuR, никакой анимации, тупо idle. На модельке висит динамическое освещение без amxx.
 
Сообщения
1,495
Реакции
1,496
Помог
2 раз(а)
Arni,
А радиус освещения также задать можно,или там уже зависит от модели ?

Интересно

Гайд будет очень полезным.
Мы ждем
 
Сообщения
246
Реакции
268
Помог
2 раз(а)
MayroN, это один из некоторых флагов, доступных в кске, используй их. Можно установить несколько, но с условием, что Quake1 будет выбран один... А насчет руководства по созданию моделей, - будет на сайте (моём), причина связана с предстающими проектами, ты должен знать о них.

Используй эффект с индексом 1
the303.org_tutorials_gold_qc.htm (6).png
 
Последнее редактирование:

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу