local player = game.Players.LocalPlayer local ball = workspace:WaitForChild("Ball") local Event = game:GetService("ReplicatedStorage"):WaitForChild("Events"):WaitForChild("UseMove") local RunService = game:GetService("RunService") local triggerDistance = 60 local canFire = true local function getHRP() local character = player.Character if not character then return nil end return character:FindFirstChild("HumanoidRootPart") end RunService.RenderStepped:Connect(function() local hrp = getHRP() if not hrp then return end local ballPos = ball.Position local distance = (hrp.Position - ballPos).Magnitude if distance <= triggerDistance and canFire then canFire = false Event:InvokeServer(2, { NiceShot = hrp.Position }) task.delay(0.2, function() canFire = true end) end end)