Худ который я написал прекрастно работает на всех экранах, но только текст не оптимизируеться, и изза чего его не видно (если разрешение игры меньше чем у меня) или оно не там где нужно
Не до конца понимаю как это пофиксить.
Код:
local ava = 0
local function Myprint()
local lp = LocalPlayer()
local hp = lp:Health()
local ar = lp:Armor()
local wep = LocalPlayer():GetActiveWeapon()
local v = { "DarkRP_HUD", "CHudBattery", "CHudHealth", "CHudAmmo", "CHudSecondaryAmmo" }
hook.Add( 'HUDShouldDraw', 'HUD_HIDE_DRP', function( vs )
if table.HasValue( v, vs ) then return false end
end )
--Серые фоны
draw.RoundedBox(4, 154, ScrH()-47, 140, 28, Color(48, 48, 48, 190))
draw.RoundedBox(4, 28, ScrH()-159, 112, 140, Color(48, 48, 48, 190))
draw.RoundedBox(4, 154, ScrH()-89, 140, 28, Color(48, 48, 48, 190))
draw.RoundedBox(4, ScrW()-204, ScrH()-47, 140, 28, Color(48, 48, 48, 190))
--ХП и Броня
draw.RoundedBox(4, 154, ScrH()-89, math.Clamp(hp,0, 100)*1.4, 28, Color(255, 0, 0, 253))
draw.RoundedBox(4, 154, ScrH()-47, math.Clamp(ar,0, 100)*1.4, 28, Color(0, 255, 229, 253))
-- Цифры на худе
draw.DrawText(lp:Health(), "Trebuchet24", math.Clamp(hp,5, 100)+153, 680, Color(255, 255, 255, 255))
draw.DrawText(lp:Armor(), "Trebuchet24", math.Clamp(ar,5, 100)+153, 722, Color(255, 255, 255, 255))
draw.DrawText("Ammo", "Trebuchet24", 1238, 725, Color(250, 255, 0, 255))
if (IsValid(wep)) then
if wep:Clip1() != (-1) then
draw.DrawText(wep:Clip1() or 0, "Trebuchet24", 1170, 725, Color(250, 255, 0, 255))
end
end
draw.DrawText(team.GetName(lp:Team()), "Trebuchet24", 40, 715, Color(255, 255, 255, 255))
if ava == 0 then
local Avatar = vgui.Create( "AvatarImage", Panel )
Avatar:SetSize( 84, 84 )
Avatar:SetPos( 42, ScrH()-145 )
Avatar:SetPlayer( LocalPlayer(), 64 )
ava = 1
print(ava)
end
end
hook.Add( "HUDPaint", "PaintOurHud", Myprint);