Advertisement
Guest User

HUD Main Code

a guest
Feb 20th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 9.33 KB | None | 0 0
  1. if CLIENT then
  2. include("config.lua")
  3.  
  4. /////////////////////////////////////
  5. //    DO NOT TOUCH BELOW THIS!    //
  6. ///////////////////////////////////
  7. local function HideThings( name )
  8. if(name == "CHudHealth") or (name == "CHudBattery") then
  9. return false
  10. end
  11.  
  12. end
  13. hook.Add( "HUDShouldDraw", "HideThings", HideThings )
  14.  
  15. function hideammo(name)
  16. for k, v in pairs({"CHudAmmo", "CHudSecondaryAmmo"}) do
  17. if name == v then return false end
  18. end
  19. end
  20. hook.Add("HUDShouldDraw", "HideOurAmmo", hideammo)
  21.  
  22. local color = {}
  23.     blue = Color(0,141,223,255)
  24.     green = Color(50,205,50)
  25.     red = Color(178,34,34,255)
  26.     yellow = Color(255,204,51,255)
  27.     purple = Color(122,88,193,255)
  28.  
  29. local function base()
  30.     draw.RoundedBox(0, 5, ScrH() - 205, 400, 200,Color(50,50,50,255))
  31. end
  32.  
  33. local function bodyBorder()
  34.     draw.RoundedBox(0, 7, ScrH() - 203, 2, 196,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  35.     draw.RoundedBox(0, 7, ScrH() - 203, 396, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  36.     draw.RoundedBox(0, 7, ScrH() - 9, 396, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  37.     draw.RoundedBox(0, 7, ScrH() - 169, 396, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  38.     draw.RoundedBox(0, 401, ScrH() - 203, 2, 196,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  39. end
  40.  
  41. local function serverNameBackground()
  42.     draw.RoundedBox(0, 10, ScrH() - 200, 390, 30,color)
  43. end
  44.  
  45. local function serverName()
  46.     draw.SimpleText(serverNameConfig,"BigFont",205, ScrH() - 235 - 5 + 22 + 22, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  47. end
  48.  
  49. local function job()
  50.     local DrawJob = LocalPlayer():getDarkRPVar("job") or ""
  51.     draw.DrawText(DrawJob, "BigFont", 85, ScrH() - 139 - 5 + 22, Color(255,255,255,255))
  52.     draw.SimpleText("Job", "BigFont", 30, ScrH() - 139 - 5 + 22, Color(225,255,255,255))
  53. end
  54.  
  55. local function playerName()
  56.     local DrawName = LocalPlayer():Nick() or ""
  57.     draw.DrawText(DrawName, "BigFont", 85, ScrH() - 158, Color(255,255,255,255))
  58.     draw.SimpleText("Name", "BigFont", 21, ScrH() - 157, Color(255,255,255,255))
  59. end
  60.  
  61. local function nameBackground()
  62.     draw.RoundedBox(0, 15, ScrH() - 160, 65, 30,color)
  63. end
  64.  
  65. local function jobBackground()
  66.     draw.RoundedBox(0, 15, ScrH() - 125, 65, 30,color)
  67. end
  68.  
  69. /*-- Format Number Function --*/
  70. local function formatNumber(n)
  71.     if not n then return "" end
  72.     if n >= 1e14 then return tostring(n) end
  73.     n = tostring(n)
  74.     local sep = sep or ","
  75.     local dp = string.find(n, "%.") or #n+1
  76.     for i=dp-4, 1, -3 do
  77.         n = n:sub(1, i) .. sep .. n:sub(i+1)
  78.     end
  79.     return n
  80. end
  81.  
  82. local function money()
  83.     local DrawWallet = "$"..formatNumber(LocalPlayer():getDarkRPVar("money") or 0)
  84.     local DrawSalary = LocalPlayer():getDarkRPVar("salary") or ""
  85.     draw.DrawText(DrawWallet.."("..DrawSalary..")", "BigFont", 85, ScrH() - 125 - 5 + 22 + 22, Color(255,255,255,255))
  86.     draw.SimpleText("Money", "BigFont", 17, ScrH() - 87, Color(255,255,255,255))
  87. end
  88.  
  89. local function moneyBackground()
  90.     draw.RoundedBox(0, 15, ScrH() - 90, 65, 30, color)
  91. end
  92.  
  93. local function health()
  94.     draw.RoundedBox(0, 15, ScrH () - 55, 385-4, 35-4, Color(105,105,105,255))
  95.     local DrawHealth = LocalPlayer():Health() or ""
  96.     local EchoHealth = LocalPlayer():Health() or ""
  97.     if DrawHealth > 100 then DrawHealth = 100 end
  98.     if DrawHealth < 0 then DrawHealth = 0 end
  99.  
  100.     if DrawHealth != 0 then
  101.         draw.RoundedBox(0, 15, ScrH () - 55, (385-4) * DrawHealth / 100, 35-4, color)
  102.     end
  103.  
  104.     draw.SimpleText("Health: "..EchoHealth ,"HealthFont", 150, ScrH () - 53, Color(255,255,255,255))
  105. end
  106.  
  107. local function armor()
  108.     draw.RoundedBox(0, 15, ScrH () - 22, 385-4, 15-4, Color(105,105,105,255))
  109.     local DrawArmor = LocalPlayer():Armor() or ""
  110.     local EchoArmor = LocalPlayer():Armor() or ""
  111.     if DrawArmor > 100 then DrawArmor = 100 end
  112.     if DrawArmor < 0 then DrawArmor = 0 end
  113.  
  114.     if DrawHealth != 0 then
  115.         draw.RoundedBox(0, 15, ScrH () - 22, (385-4) * DrawArmor / 100, 15-4, Color(0,141,223,255))
  116.     end
  117.  
  118.     draw.SimpleText("Armor: "..EchoArmor, "ArmorFont", 180, ScrH () - 24, Color(255,255,255,255))
  119. end
  120.  
  121. local function clock()
  122.     //Background (Dark Grey)
  123.     draw.RoundedBox(0, ScrW() - 130, 10, 120, 50,Color(50,50,50,255))
  124.     //Main Body (Blue)
  125.     draw.RoundedBox(0, ScrW() - 127, 13, 114, 44,color)
  126.     //Borders
  127.     draw.RoundedBox(0, ScrW() - 127, 13, 114, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  128.     draw.RoundedBox(0, ScrW() - 127, 55, 114, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  129.     draw.RoundedBox(0, ScrW() - 127, 15, 2, 42,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  130.     draw.RoundedBox(0, ScrW() - 15, 15, 2, 42,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  131.     //Time
  132.     draw.SimpleText(os.date( "%I:%M%p" ),"ClockFont",ScrW() - 124, 20, Color(255,255,255,255, TEXT_ALIGN_RIGHT, TEXT_ALIGN_TOP))
  133. end
  134.  
  135. local function agenda()
  136.     local agenda = LocalPlayer():getAgendaTable()
  137.     if not agenda then return end
  138.  
  139.     draw.RoundedBox(0, 10, 10, 300, 150,Color(50,50,50,255))
  140.     draw.RoundedBox(0, 14, 14, 292, 25,color)
  141.     draw.RoundedBox(0, 14, 14, 292, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  142.     draw.RoundedBox(0, 14, 38, 292, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  143.     draw.RoundedBox(0, 14, 154, 292, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  144.     draw.RoundedBox(0, 14, 14, 2, 142,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  145.     draw.RoundedBox(0, 304, 14, 2, 142,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  146.  
  147.     draw.SimpleText("Agenda", "AgendaTitle", 159, 16, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  148.  
  149.     local text = LocalPlayer():getDarkRPVar("agenda") or ""
  150.  
  151.     text = text:gsub("//", "\n"):gsub("\\n", "\n")
  152.     text = DarkRP.textWrap(text, "AgendaFont", 285)
  153.     draw.DrawNonParsedText(text, "AgendaFont", 20, 25, Color(255, 255, 255, 255), 0)
  154. end
  155.  
  156. local function ammo()
  157.     if (IsValid(LocalPlayer():GetActiveWeapon())) then
  158.         if (not table.HasValue(not_Draw, LocalPlayer():GetActiveWeapon():GetClass())) then
  159.             local ply = LocalPlayer()
  160.             draw.RoundedBox(0, ScrW() - 210, ScrH() - 75, 100, 70, Color(50,50,50,255))
  161.             draw.RoundedBox(0, ScrW() - 105, ScrH() - 75, 100, 70, Color(50,50,50,255))
  162.             draw.RoundedBox(0, ScrW() - 103, ScrH() - 73, 96, 20, color)
  163.             draw.RoundedBox(0, ScrW() - 208, ScrH() - 73, 96, 20, color)
  164.             draw.SimpleText("Reserve","AmmoFont1", ScrW() - 54, ScrH() - 72, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  165.             draw.SimpleText("Clip","AmmoFont1", ScrW() - 160, ScrH() - 72, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  166.             draw.SimpleText(ply:GetAmmoCount(ply:GetActiveWeapon():GetPrimaryAmmoType()), "AmmoFont", ScrW() - 55, ScrH () - 50, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  167.             draw.SimpleText(ply:GetActiveWeapon():Clip1(), "AmmoFont", ScrW() - 160, ScrH () - 50, Color(255,255,255,255), TEXT_ALIGN_CENTER)
  168.             draw.RoundedBox(0, ScrW() - 158, ScrH() - 105, 102, 26, Color(50,50,50,255))
  169.             draw.RoundedBox(0, ScrW() - 155, ScrH() - 102, 96, 20, color)
  170.             draw.RoundedBox(0, ScrW() - 156, ScrH() - 102, 2, 20,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  171.             draw.RoundedBox(0, ScrW() - 156, ScrH() - 83, 98, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  172.             draw.RoundedBox(0, ScrW() - 156, ScrH() - 103, 98, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  173.             draw.RoundedBox(0, ScrW() - 60, ScrH() - 102, 2, 20,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  174.             draw.SimpleText("Ammo","AmmoFont1", ScrW() - 110, ScrH() - 102,Color(255,255,255,255), TEXT_ALIGN_CENTER)
  175.             draw.RoundedBox(0, ScrW() - 80, ScrH() - 80, 5, 8,Color(50,50,50,255), TEXT_ALIGN_CENTER)
  176.             draw.RoundedBox(0, ScrW() - 140, ScrH() - 80, 5, 8,Color(50,50,50,255), TEXT_ALIGN_CENTER)
  177.             draw.RoundedBox(0, ScrW() - 208, ScrH() - 73, 96, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  178.             draw.RoundedBox(0, ScrW() - 208, ScrH() - 9, 96, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  179.             draw.RoundedBox(0, ScrW() - 208, ScrH() - 73, 2, 66,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  180.             draw.RoundedBox(0, ScrW() - 114, ScrH() - 73, 2, 66,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  181.             draw.RoundedBox(0, ScrW() - 103, ScrH() - 73, 2, 66,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  182.             draw.RoundedBox(0, ScrW() - 103, ScrH() - 9, 96, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  183.             draw.RoundedBox(0, ScrW() - 103, ScrH() - 73, 96, 2,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  184.             draw.RoundedBox(0, ScrW() - 9, ScrH() - 73, 2, 66,Color(105,105,105,255), TEXT_ALIGN_CENTER)
  185.         end
  186.     end
  187. end
  188.  
  189. local function DrawHUD()
  190.     base()
  191.     serverNameBackground()
  192.     serverName()
  193.     nameBackground()
  194.     playerName()
  195.     jobBackground()
  196.     job()
  197.     moneyBackground()
  198.     money()
  199.     health()
  200.     armor()
  201.     bodyBorder()
  202.     clock()
  203.     agenda()
  204.     ammo()
  205. end
  206. hook.Add("HUDPaint","DrawHUD",DrawHUD)
  207.  
  208. hook.Add("InitPostEntity", "DrawPlayerModel", function()
  209.     iconmodel = vgui.Create("DModelPanel")
  210.     iconmodel:SetModel( LocalPlayer():GetModel())
  211.         function iconmodel:LayoutEntity( Entity ) return end
  212.     iconmodel:SetPos(290, ScrH() - 160)
  213.     iconmodel:SetAnimated(false)
  214.     iconmodel:SetSize(100,100)
  215.     iconmodel:SetCamPos( Vector( 18, 0, 65))
  216.     iconmodel:SetLookAt( Vector( 0, 0, 66.5 ) )
  217.    
  218.     timer.Create("RefreshAvatar", 1, 0, function()
  219.         if LocalPlayer():GetModel() ~= iconmodel.Entity:GetModel() then
  220.             iconmodel:Remove()
  221.            
  222.             iconmodel = vgui.Create("DModelPanel")
  223.             iconmodel:SetModel( LocalPlayer():GetModel())
  224.             function iconmodel:LayoutEntity( Entity ) return end
  225.             iconmodel:SetPos(290, ScrH() - 160)
  226.             iconmodel:SetAnimated(false)
  227.             iconmodel:SetSize(100,100)
  228.             iconmodel:SetCamPos( Vector( 18, 0, 60))
  229.             iconmodel:SetLookAt( Vector( 0, 0, 66.5 ) )
  230.         end
  231.     end)
  232. end)
  233. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement