Run it
Copy the script and paste it into your executor.
URL =
Players = :()
HttpService = :()
UIS = :()
lp = Players.LocalPlayer
parent = (gethui ()) :()
parent:() parent.WSChat:()
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.Parent = parent
main = .()
main.Size = .(, , , )
main.Position = .(, , , -)
main.BackgroundColor3 = .(, , )
main.BorderSizePixel =
main.Parent = gui
.(, main).CornerRadius = .(, )
top = .()
top.Size = .(, , , )
top.BackgroundColor3 = .(, , )
top.BorderSizePixel =
top.Text =
top.TextColor3 = .(, , )
top.TextXAlignment = .TextXAlignment.Left
top.Font = .Font.GothamBold
top.TextSize =
top.Parent = main
.(, top).CornerRadius = .(, )
hide = .()
hide.Size = .(, , , )
hide.Position = .(, -, , )
hide.BackgroundTransparency =
hide.Text =
hide.TextColor3 = .(, , )
hide.TextSize =
hide.Parent = top
box = .()
box.Size = .(, -, , -)
box.Position = .(, , , )
box.BackgroundTransparency =
box.BorderSizePixel =
box.ScrollBarThickness =
box.CanvasSize = .(, , , )
box.AutomaticCanvasSize = .AutomaticSize.Y
box.Parent = main
layout = .(, box)
layout.Padding = .(, )
input = .()
input.Size = .(, -, , )
input.Position = .(, , , -)
input.BackgroundColor3 = .(, , )
input.TextColor3 = .(, , )
input.PlaceholderText =
input.PlaceholderColor3 = .(, , )
input.ClearTextOnFocus =
input.Font = .Font.Gotham
input.TextSize =
input.Text =
input.Parent = main
.(, input).CornerRadius = .(, )
send = .()
send.Size = .(, , , )
send.Position = .(, -, , -)
send.BackgroundColor3 = .(, , )
send.Text =
send.TextColor3 = .(, , )
send.Font = .Font.GothamBold
send.TextSize =
send.Parent = main
.(, send).CornerRadius = .(, )
dragging, dragStart, startPos
top.InputBegan:((i)
i.UserInputType == .UserInputType.MouseButton1 i.UserInputType == .UserInputType.Touch
dragging, dragStart, startPos = , i.Position, main.Position
)
UIS.InputChanged:((i)
dragging (i.UserInputType == .UserInputType.MouseMovement i.UserInputType == .UserInputType.Touch)
d = i.Position - dragStart
main.Position = .(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y)
)
UIS.InputEnded:((i)
i.UserInputType == .UserInputType.MouseButton1 i.UserInputType == .UserInputType.Touch
dragging =
)
minimized =
hide.MouseButton1Click:(()
minimized = minimized
box.Visible = minimized
input.Visible = minimized
send.Visible = minimized
main.Size = minimized .(, , , ) .(, , , )
hide.Text = minimized
)
(name, text, color)
l = .()
l.Size = .(, -, , )
l.AutomaticSize = .AutomaticSize.Y
l.BackgroundTransparency =
l.TextWrapped =
l.RichText =
l.TextXAlignment = .TextXAlignment.Left
l.Font = .Font.Gotham
l.TextSize =
l.TextColor3 = .(, , )
safe = (text):(, ):(, )
name
l.Text = .(, color , name, safe)
l.Text = .. safe ..
l.Parent = box
.(()
box.CanvasPosition = .(, )
)
ws
ok, err = (()
ws = WebSocket.(URL)
)
ok ws
(, .. (err))
(, )
(, )
ws.OnMessage:((raw)
good, data = (()
HttpService:(raw)
)
good (data) ==
(data.user , data.text )
(, raw)
)
ws.OnClose:(()
(, )
ws =
)
()
t = input.Text
t == #t >
ws
(, )
payload = HttpService:({ user = lp.DisplayName, text = t })
(() ws:(payload) )
input.Text =
send.MouseButton1Click:(sendMsg)
input.FocusLost:((enter)
enter ()
)Chat with any person in any place,like an global chat

Universal