Run it
Copy the script and paste it into your executor.
CoreGui = :()
Players = :()
ReplicatedStorage = :()
RunService = :()
LocalPlayer = Players.LocalPlayer
CustomDisplayName = LocalPlayer.Name
CustomTag =
()
username = LocalPlayer.Name
normalName =
redBio = .. username ..
RE = ReplicatedStorage:() ReplicatedStorage:()
RE
nameRemote = RE:() RE:() RE:()
bioRemote = RE:() RE:() RE:()
nameRemote
(() nameRemote:(, normalName) )
(() nameRemote:(normalName) )
bioRemote
(() bioRemote:(, redBio) )
(() bioRemote:(redBio) )
char = LocalPlayer.Character LocalPlayer.CharacterAdded:()
char
bioVal = char:() char:()
bioVal bioVal:() (() bioVal.Value = redBio )
nameVal = char:() char:()
nameVal nameVal:() (() nameVal.Value = normalName )
.(()
.()
()
LocalPlayer.CharacterAdded:(()
.()
()
)
)
ChatEvent = ReplicatedStorage:()
ChatEvent
ChatEvent = .()
ChatEvent.Name =
ChatEvent.Parent = ReplicatedStorage
ScreenGui = .()
ScreenGui.Name =
ScreenGui.Parent = CoreGui
TitleBar = .()
TitleBar.Size = .(, , , )
TitleBar.Position = .(, , , -)
TitleBar.BackgroundColor3 = .(, , )
TitleBar.BackgroundTransparency =
TitleBar.BorderSizePixel =
TitleBar.Parent = ScreenGui
TitleText = .()
TitleText.Size = .(, , , )
TitleText.BackgroundTransparency =
TitleText.Text =
TitleText.TextColor3 = .(, , )
TitleText.Font = .Font.SourceSansBold
TitleText.TextSize =
TitleText.Parent = TitleBar
ToggleBtn = .()
ToggleBtn.Size = .(, , , )
ToggleBtn.Position = .(, , , )
ToggleBtn.BackgroundColor3 = .(, , )
ToggleBtn.BackgroundTransparency =
ToggleBtn.BorderSizePixel =
ToggleBtn.TextColor3 = .(, , )
ToggleBtn.Text =
ToggleBtn.Font = .Font.SourceSansSemibold
ToggleBtn.TextSize =
ToggleBtn.Parent = ScreenGui
MainFrame = .()
MainFrame.Size = .(, , , )
MainFrame.Position = .(, -, , -)
MainFrame.BackgroundColor3 = .(, , )
MainFrame.BackgroundTransparency =
MainFrame.BorderSizePixel =
MainFrame.Active =
MainFrame.Draggable =
MainFrame.ClipsDescendants =
MainFrame.Parent = ScreenGui
ScrollBox = .()
ScrollBox.Size = .(, -, , -)
ScrollBox.Position = .(, , , )
ScrollBox.BackgroundTransparency =
ScrollBox.CanvasSize = .(, , , )
ScrollBox.ClipsDescendants =
ScrollBox.ScrollBarThickness =
ScrollBox.Parent = MainFrame
UIListLayout = .()
UIListLayout.Parent = ScrollBox
UIListLayout.SortOrder = .SortOrder.LayoutOrder
UIListLayout.Padding = .(, )
TextBox = .()
TextBox.Size = .(, -, , )
TextBox.Position = .(, , , -)
TextBox.BackgroundColor3 = .(, , )
TextBox.BackgroundTransparency =
TextBox.TextColor3 = .(, , )
TextBox.PlaceholderText =
TextBox.Text =
TextBox.ClearTextOnFocus =
TextBox.TextWrapped =
TextBox.Parent = MainFrame
ToggleBtn.MouseButton1Click:(()
MainFrame.Visible = MainFrame.Visible
)
RainbowTagsList = {}
(senderPlayer, msg, isSystem, overrideName, overrideTag, isPrivate, recipientName)
MessageRow = .()
MessageRow.Size = .(, , , )
MessageRow.AutomaticSize = .AutomaticSize.Y
MessageRow.BackgroundTransparency =
MessageRow.ClipsDescendants =
MessageRow.Parent = ScrollBox
AvatarImg = .()
AvatarImg.Size = .(, , , )
AvatarImg.Position = .(, , , )
AvatarImg.BackgroundTransparency =
isSystem senderPlayer
.(()
content, isReady = Players:(senderPlayer.UserId, .ThumbnailType.HeadShot, .ThumbnailSize.Size420x420)
isReady AvatarImg.Image = content
)
AvatarImg.Parent = MessageRow
senderRealName = senderPlayer senderPlayer.Name overrideName
isFounder = (senderRealName:() == senderRealName:() == )
isLeader = (senderRealName:() == )
isSystem
SysLabel = .()
SysLabel.Size = .(, -, , )
SysLabel.Position = .(, , , )
SysLabel.AutomaticSize = .AutomaticSize.Y
SysLabel.BackgroundTransparency =
SysLabel.TextXAlignment = .TextXAlignment.Left
SysLabel.TextColor3 = .(, , )
SysLabel.Text = msg
SysLabel.Font = .Font.SourceSansBold
SysLabel.TextSize =
SysLabel.TextWrapped =
SysLabel.Parent = MessageRow
CombinedLabel = .()
CombinedLabel.Size = .(, -, , )
CombinedLabel.Position = .(, , , )
CombinedLabel.AutomaticSize = .AutomaticSize.Y
CombinedLabel.BackgroundTransparency =
CombinedLabel.TextXAlignment = .TextXAlignment.Left
CombinedLabel.Font = .Font.SourceSans
CombinedLabel.TextSize =
CombinedLabel.RichText =
CombinedLabel.TextWrapped =
displayName = overrideName senderRealName
isPrivate
CombinedLabel.TextColor3 = .(, , )
prefix = (senderPlayer == LocalPlayer) ( .. (recipientName ) .. ) ( .. senderRealName .. )
.(RainbowTagsList, {
LabelObj = CombinedLabel,
TagName = overrideTag ,
DisplayName = displayName,
Message = msg,
IsFounder = isFounder,
IsLeader = isLeader,
IsPM = ,
CustomPrefix = prefix
})
CombinedLabel.TextColor3 = .(, , )
.(RainbowTagsList, {
LabelObj = CombinedLabel,
TagName = overrideTag ,
DisplayName = displayName,
Message = msg,
IsFounder = isFounder,
IsLeader = isLeader,
IsPM = ,
CustomPrefix =
})
CombinedLabel.Parent = MessageRow
senderPlayer senderPlayer ~= LocalPlayer
ClickBtn = .()
ClickBtn.Size = .(, , , )
ClickBtn.BackgroundTransparency =
ClickBtn.Text =
ClickBtn.Parent = CombinedLabel
ClickBtn.MouseButton1Click:(()
TextBox.Text = .. senderRealName ..
TextBox:()
)
.(()
ScrollBox.CanvasSize = .(, , , UIListLayout.AbsoluteContentSize.Y + )
ScrollBox.CanvasPosition = .(, ScrollBox.AbsoluteCanvasSize.Y)
)
(t)
t = t %
t <
.( - t, , )
t <
v = t -
.(v, v, v)
v = t -
.(, - v, - v)
(t)
t = t %
t <
.(, t, - t)
t <
v = t -
.(v, - v, )
t <
v = t -
.( - ( * v), , * v)
v = t -
.( * ( - v), , + ( * v))
RunService.RenderStepped:(()
t = () *
tagColor = (t)
r1, g1, b1 = .(tagColor.R * ), .(tagColor.G * ), .(tagColor.B * )
rbwColor = (t)
r2, g2, b2 = .(rbwColor.R * ), .(rbwColor.G * ), .(rbwColor.B * )
_, tagData (RainbowTagsList)
tagData.LabelObj tagData.LabelObj.Parent
prefix = tagData.CustomPrefix
formattedBadge =
formattedTag =
formattedName =
tagData.IsFounder
formattedBadge = .(, r2, g2, b2)
tagData.IsLeader
formattedBadge = .(, r2, g2, b2)
tagData.TagName tagData.TagName ~=
formattedTag = .(, r1, g1, b1, tagData.TagName)
formattedName = .(, tagData.DisplayName)
tagData.IsPM
tagData.LabelObj.Text = prefix .. formattedBadge .. formattedTag .. tagData.Message
tagData.LabelObj.Text = prefix .. formattedBadge .. formattedTag .. formattedName .. tagData.Message
)
.(()
.()
username = LocalPlayer.Name:()
username == username ==
(, .. LocalPlayer.Name, )
username ==
(, .. LocalPlayer.Name, )
(, .. LocalPlayer.Name, )
)
(name)
name = name:()
_, p (Players:())
p.Name:():(, #name) == name p.DisplayName:():(, #name) == name
p
TextBox.FocusLost:((enterPressed)
enterPressed TextBox.Text ~=
textToSend = TextBox.Text
TextBox.Text =
cleanText = textToSend:():(, )
textToSend:(, ):() == textToSend:(, ):() ==
args = .(textToSend, )
targetName = args[]
pmMsg = .(args, , )
targetName pmMsg pmMsg ~=
targetPlayer = (targetName)
targetPlayer
(LocalPlayer, pmMsg, , CustomDisplayName, CustomTag, , targetPlayer.Name)
ChatEvent:(LocalPlayer, pmMsg, CustomDisplayName, CustomTag, , targetPlayer.Name)
(, , )
textToSend:(, ):() ==
newName = textToSend:()
newName newName:(, ) ~=
CustomDisplayName = newName
cleanText == cleanText ==
CustomDisplayName = LocalPlayer.Name
cleanText == cleanText == cleanText == cleanText ==
CustomTag =
(, , )
textToSend:(, ):() ==
newTag = textToSend:()
newTag newTag:(, ) ~=
CustomTag = newTag
(LocalPlayer, textToSend, , CustomDisplayName, CustomTag, )
ChatEvent:(LocalPlayer, textToSend, CustomDisplayName, CustomTag, )
)
ChatEvent.Event:((senderPlayer, msg, senderCustomName, senderCustomTag, isPrivate, recipientName)
senderPlayer ~= LocalPlayer
isPrivate
recipientName recipientName:() == LocalPlayer.Name:()
(senderPlayer, msg, , senderCustomName, senderCustomTag, , LocalPlayer.Name)
(senderPlayer, msg, , senderCustomName, senderCustomTag, )
)
Universal