This is a module script in the ChatService.

local ms = game:GetService("MarketplaceService")
local gs = game:GetService("GamePassService")
local gc = game:GetService("ReplicatedStorage"):WaitForChild("gamepassChecker")

local gamepasses = {
	[4722341] = {title = '[Executive]', priority = 1, color = Color3.fromRGB(92, 137, 165), color0 = Color3.fromRGB(255, 215, 15)}
}

local players = { 
	[67940855] = {title = '[Owner]', priority = 9, color = Color3.fromRGB(255, 0, 0), color0 = Color3.fromRGB(239, 184, 56)},
	[70457458] = {title = '[Owner]', priority = 9, color = Color3.fromRGB(255, 0, 0), color0 = Color3.fromRGB(239, 184, 56)},
	[51574905] = {title = '[Admin]', priority = 9, color = Color3.fromRGB(0, 255, 225), color0 = Color3.fromRGB(239, 184, 56)},
	[63523895] = {title = '[YouTuber]', priority = 9, color = Color3.fromRGB(255, 255, 225), color0 = Color3.fromRGB(255, 0, 0)}
}

function sendInfo(player)	
	local info = nil
	local priority = 0
	
	for key, value in pairs(gamepasses) do
		if gc:InvokeServer(player, key) == true and value.priority > priority then
			info = {title = value.title, color = value.color, color0 = value.color0}
			priority = value.priority
		end
	end	
	
	for key, value in pairs(players) do
		if player.UserId == key and value.priority > priority then
			info = {title = value.title, color = value.color, color0 = value.color0}
			priority = value.priority
		end
	end	
		
return info
	
end

return sendInfo

This script is in ServerScriptService

local gps = game:GetService("GamePassService")
local rf = game:GetService("ReplicatedStorage"):WaitForChild("gamepassChecker")

local function returnPassInfo(player, actual, passid)
	if gps:PlayerHasPass(actual, passid) then
		return true
	else
		return false
	end
end
 
rf.OnServerInvoke = returnPassInfo

Does anyone know why this is not giving the player who owns a gamepass the chat tag, or the chat color?

1 comment

0

Don't come on this site with Shirooo's script, expecting for it to be fixed. https://youtu.be/98K6mrmxjkM