local function clear() if _MAIN_RADAR_ then if _MAIN_RADAR_.players then for k, v in pairs(_MAIN_RADAR_.players) do if v.model then v.model:Remove() end end end if _MAIN_RADAR_.plat then _MAIN_RADAR_.plat:Remove() end end end if CLIENT then clear() _MAIN_RADAR_ = {} _MAIN_RADAR_.pos = Vector(400, -300, -120) _MAIN_RADAR_.players = {} _MAIN_RADAR_.plat = ClientsideModel("models/hunter/plates/plate1x1.mdl") _MAIN_RADAR_.plat:SetModelScale(15, 0) _MAIN_RADAR_.think = function() if _MAIN_RADAR_.plat then _MAIN_RADAR_.plat:SetPos(_MAIN_RADAR_.pos - vector_up * 14) _MAIN_RADAR_.plat:SetMaterial("models/debug/debugwhite") _MAIN_RADAR_.plat:SetRenderMode(RENDERMODE_TRANSALPHA) _MAIN_RADAR_.plat:SetColor(Color(0, 100, 255, 100)) end if _MAIN_RADAR_.players then for k, v in pairs(_MAIN_RADAR_.players) do if not IsValid(v.entity) and v.model then v.model:Remove() v.entity = nil v = nil end if v.entity and IsValid(v.entity) and v.model then v.model:SetPos(_MAIN_RADAR_.pos + (v.entity:GetPos() - _MAIN_RADAR_.pos) / 20) v.model:SetAngles(Angle(0, v.entity:EyeAngles().yaw, 0)) end end end for k, v in pairs(player.GetAll()) do if not _MAIN_RADAR_.players[v:UniqueID()] then _MAIN_RADAR_.players[v:UniqueID()] = {} _MAIN_RADAR_.players[v:UniqueID()].model = ClientsideModel("models/props_junk/PopCan01a.mdl") _MAIN_RADAR_.players[v:UniqueID()].model:SetModelScale(2, 0) _MAIN_RADAR_.players[v:UniqueID()].model:SetMaterial("models/debug/debugwhite") _MAIN_RADAR_.players[v:UniqueID()].model:SetRenderMode(RENDERMODE_TRANSALPHA) if v != LocalPlayer() then _MAIN_RADAR_.players[v:UniqueID()].model:SetColor(Color(0, 255, 0, 190)) else _MAIN_RADAR_.players[v:UniqueID()].model:SetColor(Color(255, 0, 0, 190)) end _MAIN_RADAR_.players[v:UniqueID()].entity = v end end end hook.Add("Think", "radar_think_cl", function() if _MAIN_RADAR_.think then _MAIN_RADAR_.think() end end) end