Вопрос Не снимается броня при уроне на сервере

  • 2
  • 0
Контакты для связи отсутствуют.
Вписал код что при спавне выдается броня, но при получении урона снимается только хп, а броня нет, что делать?
1743156083081.png
 
  • Nellored
  • Модератор раздела "Garry's Mod"
  • 830
  • 161
  • 181
Какой тип урона наносится? (если ты упал с высоты броня вряд ли будет сноситься)
 
  • 2
  • 0
Контакты для связи отсутствуют.
Какой тип урона наносится? (если ты упал с высоты броня вряд ли будет сноситься)
Не знаю не пробовал что бы игрок мне наносил урон, но как сделать что бы и от падения броня сносилась?
 
  • Nellored
  • Модератор раздела "Garry's Mod"
  • 830
  • 161
  • 181
но как сделать что бы и от падения броня сносилась?

нужно проверить, есть ли у игрока броня, потом от её значения отнимать какое-то количество
 
  • 534
  • 9
  • 101
Контакты для связи отсутствуют.
но как сделать что бы и от падения броня сносилась?
JavaScript:
-- Хук для изменения урона от падения
hook.Add("GetFallDamage", "obkakdamag", function(ply, speed)
    -- Проверяем, что игрок жив, можно еще через ply:GetHealth() > 0
    if ply:Alive() then
        -- Рассчитываем урон от падения, деля скорость падения на 8
        local fallDamage = speed / 8
     
        -- Рассчитываем урон по броне, умножая урон от падения на коэффициент 0.5
        -- Мы ограничиваем урон броней максимальным значением брони игрока
        local armorDamage = math.min(fallDamage * 0.5, ply:GetArmor())
     
        -- Уменьшаем броню игрока на рассчитанный урон
        ply:SetArmor(ply:GetArmor() - armorDamage)
    end
end)
C:
hook.Add("GetFallDamage", "obkakdamag", function(ply, speed)
    if ply:Alive() then
         ply:SetArmor(ply:GetArmor() - math.min(speed / 16, ply:GetArmor()))
    end
end)
 
Сверху Снизу