I tried to make a rainbow nametag into my Nametag System which required certain gamepass to make it. But the thing i have tried all the way that I can do but still doesn’t work. I hope hear some ideas or suggestion on how to do it and yea I am very happy if you able to make a example for me if you can.
Pics of Nametag Structure:
Script inside Nametag:
wait()
local Character = script.Parent
local NameTag = script:FindFirstChild("Nametag")
local rank = game.Players:GetPlayerFromCharacter(Character):GetRoleInGroup(12876177)
local team = game.Players:GetPlayerFromCharacter(Character).Team.Name
local Gametime = game.Players:GetPlayerFromCharacter(Character).leaderstats.Gametime.Value
local Update = game.Players:GetPlayerFromCharacter(Character).leaderstats.Gametime
local NameTagClone = NameTag:Clone()
NameTagClone.Parent = Character:FindFirstChild("Head")
NameTagClone.Adornee = Character:FindFirstChild("Head")
NameTagClone.name.Text = Character.Name
NameTagClone.rank.Text = team.." ["..rank.."]"
NameTagClone.gametime.Text = "Gametime: "..Gametime.." Minute(s)"
I have tried with with using a BoolValue. But it seem to not working at all because the ServerScriptService’s Script doesn’t make the value to True even I have gamepass.
Script inside Nametag’s Name:
local Players = game:GetService("Players")
local thing = script.Parent
local uiGradient = thing:WaitForChild("UIGradient")
local tweenService = game:GetService("TweenService")
local Character = script.Parent.Parent.Parent.Parent
if Character:WaitForChild("IsVIP").Value == true then
uiGradient.Enabled = true
while true do
local tween = tweenService:Create(uiGradient, TweenInfo.new(2, Enum.EasingStyle.Linear), {Offset = Vector2.new(-1, 0)})
tween:Play()
wait(2)
uiGradient.Offset = Vector2.new(1, 0)
local tween2 = tweenService:Create(uiGradient, TweenInfo.new(2, Enum.EasingStyle.Linear), {Offset = Vector2.new(0, 0)})
tween2:Play()
wait(2)
end
end
Script for ScriptService:
local GamepassId = 25548314
local MarketPlaceService = game:GetService("MarketplaceService")
game.Players.PlayerAdded:connect(function(Player)
local char = Player.Character or Player.CharacterAdded:Wait()
if MarketPlaceService:UserOwnsGamePassAsync(Player.UserId, GamepassId) then
char.IsVIP.Value = true
print("Own VIP Gamepass")
else
char.IsVIP.Value = false
end
end)
Im a Scripting Newbie. So, I am not really good in scripting to be honest ;-;
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(char)
local v = script.VerifiedIconGui:Clone()
v.StudsOffsetWorldSpace = Vector3.new(0, 4, 0) -- Using StudsOffsetWorlsSpace makes it so the TextLabel as an example, doesn't get all weird.
task.wait(.5) -- Wait .5 seconds because of how Roblox loads characters
v.Parent = char:FindFirstChild("HumanoidRootPart")
v.Adornee = char:FindFirstChild("HumanoidRootPart")
end)
end)
local Players = game:GetService("Players")
repeat task.wait()
until script.Parent
local Character = script.Parent
local NameTag = script:FindFirstChild("Nametag")
local Player = Players:GetPlayerFromCharacter(Character)
local Rank = Player:GetRoleInGroup(12876177)
local Team = Player.Team.Name
local Gametime = Player:WaitForChild("leaderstats"):WaitForChild("Gametime").Value
local Update = Player:WaitForChild("leaderstats"):WaitForChild("Gametime")
local NameTagClone = NameTag:Clone()
NameTagClone.Parent = Character:FindFirstChild("Head")
NameTagClone.Adornee = Character:FindFirstChild("Head")
NameTagClone.name.Text = Character.Name
NameTagClone.rank.Text = Team.." ["..Rank.."]"
NameTagClone.gametime.Text = "Gametime: "..Gametime.." Minute(s)"
Update.Changed:Connect(function(Timeval)
NameTagClone.gametime.Text = "Gametime: "..Update.Value.." Minute(s)"
end)