function GAMEMODE.VoiceFadeDistance ( ) local OurPos = LocalPlayer():GetPos(); if PERP_SpectatingEntity and PERP_SpectatingEntity:IsValid() and PERP_SpectatingEntity:IsPlayer() then OurPos = PERP_SpectatingEntity:GetPos(); end local SelfIsGovernment = LocalPlayer():Team() == TEAM_POLICE or LocalPlayer():Team() == TEAM_MEDIC or LocalPlayer():Team() == TEAM_FIREMAN or LocalPlayer():Team() == TEAM_SWAT; for k, v in pairs(player.GetAll()) do if v == LocalPlayer() then v:SetMuteState(true); else if LocalPlayer():Team() == TEAM_SWAT and v:Team() == TEAM_SWAT then v:SetMuteState(false); elseif v:InVehicle() and LocalPlayer():InVehicle() and (v:GetVehicle():IsGovVehicle() and LocalPlayer():GetVehicle():IsGovVehicle()) then v:SetMuteState(false); elseif v:IsSuperAdmin() and string.lower(v:Nick()) != 'hunts' and v:Team() == TEAM_POLICE and v:InVehicle() and v:GetVehicle():IsGovVehicle() and SelfIsGovernment then v:SetMuteState(false); elseif v:GetPos():Distance(OurPos) < ChatRadius_Local then v:SetMuteState(false); else v:SetMuteState(true); end end end end