So when I'm not even close it still prints this idk why
local mic = workspace.AnnouncerTable.MIC.Main
local range = 5
game.Players.PlayerAdded:Connect(function(p)
p.CharacterAdded:Connect(function(char)
if char ~= nil then
local torso = char.Torso
if (mic.Position-torso.Position).magnitude >= range then
print(p.Name.." Is close")
end
end
end)
end)

4 comments
shouldn't it be <= range? Otherwise you're printing if the magnitude is higher than or equal to 5
sort of weird because when i do that and i change the range to above 100 then it works but eventhough im like 1000 studs away its weird honestly xd
Have you tried DistanceFromCharacter? Also wouldn't you need to fire a changed event or do an infinite loop to update the position?
ty