Like is here any way for make one loop inside it without getting all things from PlayerGui and stuff like that.?
Do you, mean chat tag, rainbow, or chat color.
?
This is the only method I know as of now, you could research for your own methods.
Chat tag (TagColor) I was looking for make a loop on the table for make the rainbow effect
the thing is I cant do this:
Why not? That method should work just fine.
yes Ik it works I saw something like that but I cant do it in a local script into the main script.
Iβve made a chat tag rainbow, and chat color.
What i did was code inside when you player makes a message, detect the name.
The problem is not for change the color I can change the color but I was trying to make something like the RGB effect but I need to loop parts inside the chat but I dont know how I can do it.
{TagText = "CREATOR", TagColor = Color3.fromRGB(255, 0, 4)}
--here you change the color
So, You Mean It turns rainbow color.
I am trying to make rainbow but I cant do it.
Okay, What i will do.
Is I will make it for you.
yes but how I can loop in the main script if I cant use PlayerGui in SSS (serverscriptservice)
something like this: Can you create wavy rainbow chat tag on Roblox's default chat? - #9 by rokec123
Can you send me the full script?
local ServerScriptService = game:GetService("ServerScriptService")
local MarketplaceService = game:GetService("MarketplaceService")
local ChatServiceRunner = ServerScriptService:WaitForChild("ChatServiceRunner")
local ChatService = require(ChatServiceRunner.ChatService)
local OwnerTag = {
[660698828] = {
ChatColor = Color3.new(255, 255, 255),
Tags = {
{TagText = "CREATOR", TagColor = Color3.fromRGB(0, 0, 0)},
}
},
}
local VIP_CHAT_DATA = {
ChatColor = Color3.fromRGB(255, 255, 255),
Tags = {
{TagText = "πV.I.Pπ", TagColor = Color3.fromRGB(255, 255, 0)},
},
}
-----------------------------------------------------------------------------
local GAME_PASS_ID = 21918888
-----------------------------------------------------------------------------
local function applyExtraDataForSpeaker(speaker, dataTable)
for key, value in pairs(dataTable) do
speaker:SetExtraData(key, value)
end
end
local function speakerAdded(speakerName)
local speaker = ChatService:GetSpeaker(speakerName)
local player = speaker:GetPlayer()
if player then
local dataAddressed = false
local specialData = OwnerTag[player.UserId]
if specialData then
applyExtraDataForSpeaker(speaker, specialData)
dataAddressed = true
end
-------------------------------------------------------------------------
if not dataAddressed then
local isVIP = MarketplaceService:UserOwnsGamePassAsync(player.UserId, GAME_PASS_ID)
if isVIP then
applyExtraDataForSpeaker(speaker, VIP_CHAT_DATA)
end
end
end
end
ChatService.SpeakerAdded:Connect(speakerAdded)
for _, speakerName in pairs(ChatService:GetSpeakerList()) do
speakerAdded(speakerName)
end