Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Players = game:GetService("Players")
- local LocalPlayer = Players.LocalPlayer
- local ChatFrame = LocalPlayer:WaitForChild("PlayerGui"):WaitForChild("Chat"):WaitForChild("Frame")
- local MessageLog = ChatFrame:WaitForChild("ChatChannelParentFrame"):WaitForChild("Frame_MessageLogDisplay").Scroller
- local function interpolateColor(t)
- local r = math.sin(t * math.pi * 2) * 0.5 + 0.5
- local g = math.sin((t + 0.33) * math.pi * 2) * 0.5 + 0.5
- local b = math.sin((t + 0.66) * math.pi * 2) * 0.5 + 0.5
- return Color3.fromRGB(r * 255, g * 255, b * 255)
- end
- local function updateRainbow()
- local time = 0
- while true do
- for _, child in pairs(MessageLog:GetChildren()) do
- if child:IsA("Frame") then
- local textLabel = child:FindFirstChildOfClass("TextLabel")
- if textLabel then
- local color = interpolateColor(time)
- textLabel.TextColor3 = color
- end
- end
- end
- time = time + 0.01
- if time > 1 then
- time = 0
- end
- wait(0.1)
- end
- end
- task.spawn(updateRainbow)
- MessageLog.ChildAdded:Connect(function(child)
- task.wait(0.1)
- if child:IsA("Frame") then
- local textLabel = child:FindFirstChildOfClass("TextLabel")
- if textLabel then
- local color = interpolateColor(0)
- textLabel.TextColor3 = color
- end
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment