Advertisement
HK47

Radar

Oct 23rd, 2014
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.61 KB | None | 0 0
  1. local function clear()
  2.     if _MAIN_RADAR_ then
  3.         if _MAIN_RADAR_.players then
  4.             for k, v in pairs(_MAIN_RADAR_.players) do
  5.                 if v.model then v.model:Remove() end
  6.             end
  7.         end
  8.        
  9.         if _MAIN_RADAR_.plat then _MAIN_RADAR_.plat:Remove() end
  10.     end
  11. end
  12.  
  13. if CLIENT then
  14.     clear()
  15.    
  16.     _MAIN_RADAR_ = {}
  17.    
  18.     _MAIN_RADAR_.pos = Vector(400, -300, -120)
  19.     _MAIN_RADAR_.players = {}
  20.    
  21.     _MAIN_RADAR_.plat = ClientsideModel("models/hunter/plates/plate1x1.mdl")
  22.     _MAIN_RADAR_.plat:SetModelScale(15, 0)
  23.        
  24.     _MAIN_RADAR_.think = function()
  25.         if _MAIN_RADAR_.plat then
  26.             _MAIN_RADAR_.plat:SetPos(_MAIN_RADAR_.pos - vector_up * 14)
  27.             _MAIN_RADAR_.plat:SetMaterial("models/debug/debugwhite")
  28.             _MAIN_RADAR_.plat:SetRenderMode(RENDERMODE_TRANSALPHA)
  29.             _MAIN_RADAR_.plat:SetColor(Color(0, 100, 255, 100))
  30.         end
  31.        
  32.         if _MAIN_RADAR_.players then
  33.             for k, v in pairs(_MAIN_RADAR_.players) do
  34.                 if not IsValid(v.entity) and v.model then
  35.                     v.model:Remove()
  36.                    
  37.                     v.entity = nil
  38.                     v = nil
  39.                 end
  40.                
  41.                 if v.entity and IsValid(v.entity) and v.model then
  42.                     v.model:SetPos(_MAIN_RADAR_.pos + (v.entity:GetPos() - _MAIN_RADAR_.pos) / 20)
  43.                     v.model:SetAngles(Angle(0, v.entity:EyeAngles().yaw, 0))
  44.                 end
  45.             end
  46.         end
  47.        
  48.         for k, v in pairs(player.GetAll()) do
  49.             if not _MAIN_RADAR_.players[v:UniqueID()] then
  50.                 _MAIN_RADAR_.players[v:UniqueID()] = {}
  51.                 _MAIN_RADAR_.players[v:UniqueID()].model = ClientsideModel("models/props_junk/PopCan01a.mdl")
  52.                 _MAIN_RADAR_.players[v:UniqueID()].model:SetModelScale(2, 0)
  53.                 _MAIN_RADAR_.players[v:UniqueID()].model:SetMaterial("models/debug/debugwhite")
  54.                 _MAIN_RADAR_.players[v:UniqueID()].model:SetRenderMode(RENDERMODE_TRANSALPHA)
  55.                
  56.                 if v != LocalPlayer() then
  57.                     _MAIN_RADAR_.players[v:UniqueID()].model:SetColor(Color(0, 255, 0, 190))
  58.                 else
  59.                     _MAIN_RADAR_.players[v:UniqueID()].model:SetColor(Color(255, 0, 0, 190))
  60.                 end
  61.                 _MAIN_RADAR_.players[v:UniqueID()].entity = v
  62.             end
  63.         end
  64.     end
  65.    
  66.     hook.Add("Think", "radar_think_cl", function()
  67.         if _MAIN_RADAR_.think then _MAIN_RADAR_.think() end
  68.     end)
  69. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement