Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Overhead rank not refreshing. Can someone please help?

Asked by 6 years ago
Edited 6 years ago

Hello, everyone! I have added an overhead rank script along time ago to my game, and it worked perfectly. But, a few months ago, I noticed the rank didn't update on resetting or refreshing. Could someone please help? Thanks!

--DonutsIndeed

function Create(ClassName)
    return function(Properties)
        local Obj = Instance.new(ClassName)
        for i, v in pairs(Properties) do
            if type(i) == "number" then
                v.Parent = Obj
            else
                Obj[i] = v
            end
        end
        return Obj
    end
end

function HandleCharacter(Player, Character)
    local Custom = Character:WaitForChild("Head"):clone()
    Custom.Name = "ParadiseOverhead"
    Custom.Parent = Character
    Custom.face:Destroy()
    Character.Head.Transparency = 1
    Create("Weld") {
        Name = "CustomWeld",
        Parent = Custom,
        Part0 = Character.Head,
        Part1 = Custom
    }
    Create("BillboardGui") {
        Name = "Nametag",
        Parent = Custom,
        Size = UDim2.new(5, 0, 0.5, 0),
        StudsOffset = Vector3.new(0, 2, 0),
        Create("TextLabel") {
            Name = "NameLabel",
            BackgroundTransparency = 1,
            Size = UDim2.new(1, 0, 1, 0),
            Position = UDim2.new(0, 0, -0.8, 0),
            Font = "SourceSansBold",
            Text = Character.Name,
            TextColor3 = Color3.new(1, 1, 1),
            TextScaled = true,
            TextStrokeTransparency = 1,
        },
        Create("TextLabel") {
            Name = "RankLabel",
            BackgroundTransparency = 1,
            Size = UDim2.new(1, 0, 0.92, 0),
            Position = UDim2.new(0, 0, 0.2, 0),
            TextTransparency = .1,
            Font = "SourceSans",
            FontSize = Enum.FontSize.Size12,
            Text = Player:GetRoleInGroup(3538954),
            TextColor3 = Color3.new(1, 1, 1),
            TextScaled = true,
            TextStrokeTransparency = 1
        },
    }
    Custom.BrickColor = Character.Head.BrickColor
    Character.Head.Changed:connect(function()
        Character.Head.Transparency = 1
        Custom.BrickColor = Character.Head.BrickColor
    end)
    Character.Head.Mesh.Changed:connect(function()
        Custom:WaitForChild("Mesh").MeshId = Character.Head:WaitForChild("Mesh").MeshId
    end)
end
local rainbow = function(callback)
    local frequency = 0.1
    local i = 0
    while true do
        wait()
        local red = math.sin(frequency * i + 0) * 127 + 128
        local green = math.sin(frequency * i + 2 * math.pi / 3) * 127 + 128
        local blue = math.sin(frequency * i + 4 * math.pi / 3) * 127 + 128
        callback(Color3.new(red / 255, green / 255, blue / 255))
        i = i + 1
    end
end
function HandlePlayer(Player)
    if Player.Character then
        HandleCharacter(Player, Player.Character)
    end
    Player.CharacterAdded:connect(function(Character)
        HandleCharacter(Player, Character)
    end)
    if Player:GetRankInGroup(3538954) == 255 then
        Player.CharacterAdded:connect(function(char)
            local label = char:WaitForChild("ParadiseOverhead")
            coroutine.resume(coroutine.create(rainbow), function(color)
                label.Nametag.RankLabel.TextColor3 = Color3.new(color.r, color.g, color.b)
            end)
        end)
    end
end

game.Players.PlayerAdded:connect(function(b)
    HandlePlayer(b)
end)

for i, wv in pairs(game.Players:GetPlayers()) do
    HandlePlayer(v)
end
0
By rank updating do you mean that the GUI still shows, but not the correct rank, or the GUI doesn't show at all? climethestair 1663 — 6y
0
What a Error you've getting in Output? Diltz_3 75 — 6y
0
You accidently put a w in for i, wv in pairs(game.Players:GetPlayers()) do hiimgoodpack 2009 — 6y

Answer this question