• Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта NetZONA.org: https://netzona.org/help/public-offer/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами использования Ваших файлов cookie на Проекте NetZONA.org: https://netzona.org/help/cookies/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с Политикой конфиденциальности Проекта NetZONA.org: https://netzona.org/pages/privacy-policy/

  • Ответы на основные вопросы: https://netzona.org/threads/populjarnye-voprosy-i-otvety-na-nix.6122/

  • Приветствуем на сайте, Гость! Приобрести (купить) Информационную услугу (в том числе группу "Проверенный") на Проекте NetZONA.org: https://netzona.org/account/upgrades

Визуальный эффект получения урона

Статус
В этой теме нельзя размещать новые ответы.

Mr. Samuel

Пользователь
Регистрация
27 Янв 2021
Сообщения
24
Реакции
0
Баллы
16
Пол
Мужской
Доброго дня, появился вопрос.

С помощью чего можно добиться динамического эффекта получения урона. В некоторых играх при получении урона по краям экрана появляется покраснения и чем больше урона получено, тем более ярче выражен этот эффект. Я хочу добиться такого-же результата.

Не знаю что за игра, нашёл для примераизображение_2022-02-12_233712.png
 
if ply:GetGamage() <= 50 then
Сообщение автоматически объединено:

if ply:GetGamage() <= 50 then
извиняюсь что не в одном сообщение, случайно Enter нажал.

if ply:GetDamage() <= 50 then
--твой код по выведению кровушки
else ply:GetDamage() == 100 then
--твой код еще раз по выведению кровушки емае
end

так можешь делать пока не надоест. ( извиняюсь если неправильно объяснил)
 
Используй хук
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
. Он используется для визуализации эффектов постобработки, но тут придётся поиграться с формулами, чтобы добиться желаемого. Вот пример ради интереса:

Lua:
local ColorModify_Health = {
        [ "$pp_colour_addr" ] = 0,
        [ "$pp_colour_addg" ] = 0,
        [ "$pp_colour_addb" ] = 0,
        [ "$pp_colour_brightness" ] = 0,
        [ "$pp_colour_contrast" ] = 1,
        [ "$pp_colour_colour" ] = 1,
        [ "$pp_colour_mulr" ] = 0,
        [ "$pp_colour_mulg" ] = 0,
        [ "$pp_colour_mulb" ] = 0
}

   local color = 0
   hook.Add('RenderScreenspaceEffects', 'effectondisplay', function()
       local ply = LocalPlayer()

       if ply:Alive() then
           color = 1 - (ply:Health() / ply:GetMaxHealth())

           if (color >= 0.65) then
               ColorModify_Health["$pp_colour_colour"] = math.Clamp(1 - color, 0, 1)
               ColorModify_Health[ "$pp_colour_addr" ] = math.abs(math.sin( CurTime() * 2 )) * 0.2

               DrawColorModify(ColorModify_Health)
           elseif (color > 0) then
               ColorModify_Health["$pp_colour_colour"] = math.Clamp(1 - color, 0, 1)

               DrawColorModify(ColorModify_Health)
           end
       end
   end)
 
Статус
В этой теме нельзя размещать новые ответы.
Главная Регистрация
Назад
Сверху