
KeylessUniversal

---====
---====
---====
---====
---====
local Vitrual = game:GetService("VirtualInputManager")
local RunService = game:GetService("RunService")
local workspace = game:GetService("Workspace")
local Players = game:GetService("Players")
local Player = Players.LocalPlayer
local CurrentCharacter = Player.Character or Player.CharacterAdded:Wait()
local humanoid = CurrentCharacter:WaitForChild("Humanoid")
local PlayerRoot = CurrentCharacter:WaitForChild("HumanoidRootPart")
local SavePositionPlayer = nil
Player.CharacterAdded:Connect(function(character)
CurrentCharacter = character
end)
-- === States === --
local States = {
Wait = "Wait",
Target = "Target",
}
local CurrentState = States.Wait
local function UpdateState(State)
if not States[State] then
warn("ERROR STATE:", State)
return
end
CurrentState = State
end
-- == -- == -- == -- Follow Block -- == -- == -- == -- == -- == -- == -- == -- == --
local FollowBlock = Instance.new("Part", workspace)
FollowBlock.Size = Vector3.new(8, 8, 8)
FollowBlock.Anchored = true
FollowBlock.CanCollide = false
FollowBlock.Transparency = 0
FollowBlock.Color = Color3.new(0.101961, 1, 0)
-- === Delete/AddBall Function === --
local function CreateBallBillboard(Part)
local billboard = Instance.new("BillboardGui", Part)
billboard.Name = "BallBillboard"
billboard.Size = UDim2.fromScale(7, 4)
billboard.StudsOffset = Vector3.new(0, 3, 0)
billboard.AlwaysOnTop = false
billboard.MaxDistance = 300
billboard.Enabled = true
billboard.Adornee = Part
local label = Instance.new("TextLabel", billboard)
label.Size = UDim2.fromScale(1, 1)
label.BackgroundTransparency = 1
label.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
label.TextColor3 = Color3.fromRGB(255, 255, 255)
label.RichText = true
label.TextScaled = true
label.Text = "Ball:" .. Part.Name
local corner = Instance.new("UICorner", label)
corner.CornerRadius = UDim.new(0, 4)
end
local CurrentBall = nil
local FollowConnection = nil
local function NewGet(Part)
if FollowConnection then
FollowConnection:Disconnect()
FollowConnection = nil
end
FollowConnection = Part:GetPropertyChangedSignal("CFrame"):Connect(function()
if Part and Part.Parent and FollowBlock then
FollowBlock.CFrame = Part.CFrame
end
end)
end
local function SearchBall(Part)
if Part.Name ~= "Part" then
return false
end
if Part.Parent ~= workspace then
return false
end
if not Part:IsA("MeshPart") then
return false
end
local Highlight = Part:FindFirstChild("Highlight")
if not Highlight then
return false
end
if Highlight.FillTransparency == 0.5 then
return false
end
return true
end
for _, Part in pairs(workspace:GetChildren()) do
if SearchBall(Part) then
CurrentBall = Part
CurrentBallPosition = Part.Position
CreateBallBillboard(Part)
NewGet(Part)
print("Ball: " .. Part.Name)
break
end
end
workspace.ChildAdded:Connect(function(Part)
if SearchBall(Part) then
CurrentBall = Part
CurrentBallPosition = Part.Position
CreateBallBillboard(Part)
NewGet(Part)
print("Ball: " .. Part.Name)
end
end)
workspace.ChildRemoved:Connect(function(Part)
if Part == CurrentBall then
CurrentBall = nil
CurrentBallPosition = nil
if FollowConnection then
FollowConnection:Disconnect()
FollowConnection = nil
end
print("Ball.Deleted: " .. Part.Name)
end
end)
-- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- == -- ==
local function DeletekillBlock(Part)
local FX = workspace:FindFirstChild("FX")
if not FX then
return false
end
if Part.Parent ~= FX then
return false
end
if not Part:IsA("Part") then
return false
end
if Part.Name ~= "Part" then
return false
end
if Part.Material ~= Enum.Material.Neon then
return false
end
if Part.Color ~= Color3.fromRGB(255, 0, 0) then
return false
end
if Part.CastShadow ~= true then
return false
end
return true
end
local FX = workspace:FindFirstChild("FX")
if FX then
for _, Part in pairs(workspace.FX:GetChildren()) do
if DeletekillBlock(Part) then
task.defer(function()
Part:Destroy()
print("Kill.Part:" .. Part.Name ..":Destroy()")
end)
end
end
workspace.FX.ChildAdded:Connect(function(Part)
if DeletekillBlock(Part) then
task.defer(function()
Part:Destroy()
print("Kill.Part:" .. Part.Name ..":Destroy()")
end)
end
end)
end
-- === Parry Function and t/d === --
local function parry()
Vitrual:SendKeyEvent(true, Enum.KeyCode.F, false, game)
Vitrual:SendKeyEvent(false, Enum.KeyCode.F, false, game)
end
local function IsTarget()
local Highlight = CurrentCharacter:FindFirstChild("Highlight", true)
if not Highlight then
return false
end
if Highlight.FillTransparency == 1 then
return false
end
return true
end
local function IsParry()
local Highlight = CurrentCharacter:FindFirstChild("Highlight", true)
if not Highlight then
return false
end
if Highlight.OutlineTransparency == 1 then
return false
end
return true
end
RunService.PreRender:Connect(function()
if IsTarget() then
UpdateState(States.Target)
end
if not IsTarget() then
UpdateState(States.Wait)
end
end)
local function Update()
if CurrentState == States.Wait then
print("awawa")
end
if CurrentState == States.Target then
parry()
task.defer(function()
PlayerRoot.Position = CurrentBall.Position
end)
end
end
RunService.PreRender:Connect(Update)
---- awawa — w — By @yukizziNo comments yet for this script.



