This is my code:
function FilterString(str) local filtered = game:GetService("Chat"):FilterStringForBroadcast(str,game.Players:GetPlayers()[1]) if filtered ~= nil then return filtered end return "< Filter Failed >" end local sources = { "TextLabel", "Message", "Hint", "StringValue" } game.DescendantAdded:connect(function(desc) local long = desc:GetFullName() if long:find("Chat.Frame.ChatChannelParentFrame") ~= nil then return nil end print("got " .. desc.Name .. " from " .. long) if desc:IsA("TextLabel") then desc.Text = FilterString(desc.Text) elseif desc:IsA("TextButton") then desc.Text = FilterString(desc.Text) elseif desc:IsA("Message") then desc.Text = FilterString(desc.Text) elseif desc:IsA("Hint") then desc.Text = FilterString(desc.Text) elseif desc:FindFirstChild("Humanoid") then desc.Parent.Name = FilterString(desc.Parent.Name) else print(desc.Name .. " does not need to be filtered") end end)
It should filter anything with text, but it doesn't work.