This is located in starter gui.It's a local script
local rep = game:GetService('ReplicatedStorage')
local startergui = game:GetService('StarterGui')
local uis = game:GetService('UserInputService')
local plrs = game:GetService('Players')
local chatevent = rep:WaitForChild('ChatRemote')
local client = plrs.LocalPlayer
local mouse = client:GetMouse()
local chatbar = script.Parent
local chatframe = chatbar.Parent
local chats = {}
uis.InputBegan:Connect(function(key)
if key.KeyCode == Enum.KeyCode.Slash then
chatbar:CaptureFocus()
end
end)
local function pushmessage(size)
for i,v in pairs(chats) do
v.Position = v.Position - UDim2.new(0,0,0,size)
if v.Position.Y.Offset < -chatframe.AbsoluteSize.Y then
chats[i] = nil
v:Destroy()
end
end
end
local function createmessage(message, speaker)
local label = Instance.new('TextLabel')
label.BackgroundTransparency = 1
label.TextXAlignment = 'Left'
label.TextColor3 = Color3.fromRGB(255, 239, 10)
label.Font = Enum.Font.Code
label.FontSize = Enum.FontSize.Size18
label.Size = UDim2.new(0.8,0,0,20)
label.Position = UDim2.new(0,0,1,-25)
label.Text = tostring(speaker)..':'..message
label.TextScaled = true
pushmessage(label.Size.Y.Offset)
chats[#chats+1] = label
label.Parent = chatframe
local wordList = {
"null"; --Content removed by moderators.
"null"; --Content removed by moderators.
"null"; --Content removed by moderators.
"noob";
"Hello";
"null"; --Content removed by moderators. "idiot";
"kick/";
"ban/";
}
for i,v in pairs(wordList) do
if chatbar.Text == v then
label.Text = client.Name..' IS SWEARING'
end
end
end
chatevent.OnClientEvent:Connect(function(request, message, speaker)
request = request:lower()
if request == 'chat' then
createmessage(message, speaker)
end
end)
chatbar.FocusLost:Connect(function(enter)
if enter then
chatevent:FireServer('chat', chatbar.Text)
if chatbar.Text == '' then
return
end
chatbar.Text = 'CLICK here or press SLASH to chat'
end
end)
startergui:SetCoreGuiEnabled(Enum.CoreGuiType.Chat, false)
this doesn't work in real server
local wordList = {
"null"; --Content removed by moderators.
"null"; --Content removed by moderators.
"null"; --Content removed by moderators.
"noob";
"Hello";
"null"; --Content removed by moderators.
"idiot";
"kick/";
"ban/";
}
for i,v in pairs(wordList) do
if chatbar.Text == v then
label.Text = client.Name..' IS SWEARING'
end
end
Also this script is located in ServerScriptStorage. It's a normal script
local rep = game:GetService('ReplicatedStorage')
local chatevent = rep:WaitForChild('ChatRemote')
chatevent.OnServerEvent:Connect(function(client, request, value)
request = request:lower()
if request == 'chat' then
chatevent:FireAllClients('chat', value, client.Name)
end
end)

1 comment
Hey man, please check the community guidelines before posting. We understand you're using profane language in terms of the purpose of your script, but we do not allow it on any portion of our physical website. https://scriptinghelpers.org/help/community-guidelines