local players = game:GetService("Players") local runService = game:GetService("RunService") local function createSpeedTag(character) if not character then return end -- Espera o Humanoid e a Head carregarem com segurança local humanoid = character:WaitForChild("Humanoid", 10) local head = character:WaitForChild("Head", 10) if head and humanoid and not head:FindFirstChild("SpeedTag") then local billboard = Instance.new("BillboardGui") billboard.Name = "SpeedTag" billboard.Size = UDim2.new(0, 30, 0, 30) billboard.StudsOffset = Vector3.new(0, 1.5, 0) billboard.AlwaysOnTop = true billboard.Parent = head billboard.Adornee = head local textLabel = Instance.new("TextLabel") textLabel.Size = UDim2.new(1, 0, 1, 0) textLabel.BackgroundTransparency = 1 textLabel.TextColor3 = Color3.fromRGB(255, 255, 255) textLabel.TextStrokeTransparency = 0.2 textLabel.TextScaled = true textLabel.Font = Enum.Font.GothamBold textLabel.Parent = billboard -- Loop de atualização de texto (RenderStepped é o mais rápido possível) local connection connection = runService.RenderStepped:Connect(function() if not character:IsDescendantOf(game) or not humanoid or not head then connection:Disconnect() billboard:Destroy() return end textLabel.Text = tostring(math.floor(humanoid.WalkSpeed)) end) end end -- Função para monitorar jogadores local function monitorPlayer(plr) plr.CharacterAdded:Connect(function(char) task.wait(0.5) -- Pequena pausa para garantir que o personagem montou createSpeedTag(char) end) if plr.Character then createSpeedTag(plr.Character) end end -- Monitora quem já está e quem entrar players.PlayerAdded:Connect(monitorPlayer) for _, plr in pairs(players:GetPlayers()) do monitorPlayer(plr) end -- SCAN DE SEGURANÇA: A cada 2 segundos verifica se alguém ficou sem a tag task.spawn(function() while task.wait(2) do for _, plr in pairs(players:GetPlayers()) do if plr.Character and not plr.Character:FindFirstChild("Head"):FindFirstChild("SpeedTag") then createSpeedTag(plr.Character) end end end end)