
KeylessUniversal

-- I am not creator of this script i reuploaded this script because it got deleted on every site
-- Reupload by marcinek20 Enjoy :)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Workspace = game:GetService("Workspace")
local blackHoleActive = false
local currentTarget = nil
local targetSwitchTime = 2.5 -- Tempo em segundos para trocar de alvo
local blackHoleConnection = nil
-- Função para pegar um jogador aleatório VIVO (excluindo você)
local function getRandomAlivePlayer()
local alivePlayers = {}
for _, player in pairs(Players:GetPlayers()) do
-- Ignorar o próprio jogador local
if player ~= LocalPlayer then
local character = player.Character
if character then
local humanoid = character:FindFirstChild("Humanoid")
if humanoid and humanoid.Health > 0 then
table.insert(alivePlayers, player)
end
end
end
end
if #alivePlayers > 0 then
return alivePlayers[math.random(1, #alivePlayers)]
end
return nil
end
-- Verificar se o alvo está vivo
local function isTargetAlive(player)
if not player then return false end
local character = player.Character
if not character then return false end
local humanoid = character:FindFirstChild("Humanoid")
if not humanoid then return false end
return humanoid.Health > 0
end
local function setupPlayer()
local character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local Folder = Instance.new("Folder", Workspace)
local Part = Instance.new("Part", Folder)
local Attachment1 = Instance.new("Attachment", Part)
Part.Anchored = true
Part.CanCollide = false
Part.Transparency = 1
return humanoidRootPart, Attachment1
end
local humanoidRootPart, Attachment1 = setupPlayer()
if not getgenv().Network then
getgenv().Network = {
BaseParts = {},
Velocity = Vector3.new(14.46262424, 14.46262424, 14.46262424)
}
Network.RetainPart = function(part)
if typeof(part) == "Instance" and part:IsA("BasePart") and part:IsDescendantOf(Workspace) then
table.insert(Network.BaseParts, part)
part.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
part.CanCollide = false
end
end
local function EnablePartControl()
LocalPlayer.ReplicationFocus = Workspace
RunService.Heartbeat:Connect(function()
sethiddenproperty(LocalPlayer, "SimulationRadius", math.huge)
for _, part in pairs(Network.BaseParts) do
if part:IsDescendantOf(Workspace) then
part.Velocity = Network.Velocity
end
end
end)
end
EnablePartControl()
end
local function ForcePart(v)
if v:IsA("Part") and not v.Anchored and not v.Parent:FindFirstChild("Humanoid") and not v.Parent:FindFirstChild("Head") and v.Name ~= "Handle" then
for _, x in next, v:GetChildren() do
if x:IsA("BodyAngularVelocity") or x:IsA("BodyForce") or x:IsA("BodyGyro") or x:IsA("BodyPosition") or x:IsA("BodyThrust") or x:IsA("BodyVelocity") or x:IsA("RocketPropulsion") then
x:Destroy()
end
end
if v:FindFirstChild("Attachment") then
v:FindFirstChild("Attachment"):Destroy()
end
if v:FindFirstChild("AlignPosition") then
v:FindFirstChild("AlignPosition"):Destroy()
end
if v:FindFirstChild("Torque") then
v:FindFirstChild("Torque"):Destroy()
end
v.CanCollide = false
local Torque = Instance.new("Torque", v)
Torque.Torque = Vector3.new(1000000, 1000000, 1000000)
local AlignPosition = Instance.new("AlignPosition", v)
local Attachment2 = Instance.new("Attachment", v)
Torque.Attachment0 = Attachment2
AlignPosition.MaxForce = math.huge
AlignPosition.MaxVelocity = math.huge
AlignPosition.Responsiveness = 500
AlignPosition.Attachment0 = Attachment2
AlignPosition.Attachment1 = Attachment1
end
end
local function startBlackHole()
if blackHoleConnection then
blackHoleConnection:Disconnect()
blackHoleConnection = nil
end
-- Forçar todas as partes existentes
for _, v in next, Workspace:GetDescendants() do
ForcePart(v)
end
-- Conectar para forçar novas partes que aparecerem
Workspace.DescendantAdded:Connect(function(v)
if blackHoleActive then
ForcePart(v)
end
end)
blackHoleConnection = RunService.Heartbeat:Connect(function()
if not blackHoleActive then
return
end
-- Pegar um alvo aleatório
currentTarget = getRandomAlivePlayer()
if currentTarget and isTargetAlive(currentTarget) then
local character = currentTarget.Character
if character then
local targetRootPart = character:FindFirstChild("HumanoidRootPart")
if targetRootPart then
-- FICAR COLADO DIRETO NO HUMANOIDROOTPART DO ALVO (distância 0)
Attachment1.WorldCFrame = targetRootPart.CFrame
-- Esperar 2.5 segundos nesse alvo
local startTime = tick()
while tick() - startTime < targetSwitchTime and blackHoleActive and isTargetAlive(currentTarget) do
-- Atualizar posição continuamente
if targetRootPart and targetRootPart.Parent then
Attachment1.WorldCFrame = targetRootPart.CFrame
end
RunService.Heartbeat:Wait()
end
end
end
else
-- Se não tem alvo, colocar em posição segura
Attachment1.WorldCFrame = CFrame.new(0, -1000, 0)
wait(0.5) -- Pequena pausa antes de tentar novamente
end
end)
end
local function stopBlackHole()
if blackHoleConnection then
blackHoleConnection:Disconnect()
blackHoleConnection = nil
end
Attachment1.WorldCFrame = CFrame.new(0, -1000, 0)
currentTarget = nil
end
local function toggleBlackHole()
blackHoleActive = not blackHoleActive
if blackHoleActive then
print("[Blackhole] Ativado - Iniciando caçada automática")
startBlackHole()
else
print("[Blackhole] Desativado")
stopBlackHole()
end
end
LocalPlayer.CharacterAdded:Connect(function()
humanoidRootPart, Attachment1 = setupPlayer()
if blackHoleActive then
stopBlackHole()
startBlackHole()
end
end)
-- Interface do usuário
local library = loadstring(game:HttpGet("https://raw.githubusercontent.com/miroeramaa/TurtleLib/main/TurtleUiLib.lua"))()
local window = library:Window("Projeto LKB - Caçador Direto")
window:Toggle("Blackhole Caçador", false, function(Value)
if Value then
toggleBlackHole()
else
blackHoleActive = false
stopBlackHole()
end
end)
-- Botão para forçar mudança de alvo IMEDIATA
window:Button("Trocar alvo AGORA", function()
if blackHoleActive then
currentTarget = getRandomAlivePlayer()
if currentTarget then
print("[Blackhole] Alvo trocado para: " .. currentTarget.Name)
end
end
end)
-- Mostrar alvo atual
window:Button("Mostrar alvo atual", function()
if currentTarget then
print("[Blackhole] Alvo atual: " .. currentTarget.Name)
else
print("[Blackhole] Nenhum alvo no momento")
end
end)
print("Script carregado! Ative o Blackhole Caçador para começar.")No comments yet for this script.



