-- | Made by GR0UD local User = game:GetService("Players").LocalPlayer local Ball = game:GetService("Workspace").SoccerBall local Mouse = User:GetMouse() function Align(Part0, Part1, Position, Angle) local AttachmentA = Instance.new("Attachment", Part1) local AttachmentB = Instance.new("Attachment", Part0) local AlignPos = Instance.new("AlignPosition", AttachmentA) local BodyPos = Instance.new("BodyPosition", AlignPos) local BodyAngularVelocity = Instance.new("BodyAngularVelocity", Part1) AlignPos.Parent.Parent.CanCollide = false AlignPos.Parent.Parent.Massless = true AlignPos.ApplyAtCenterOfMass = true AlignPos.MaxForce = 9e9 AlignPos.MaxVelocity = 9e9 AlignPos.ReactionForceEnabled = false AlignPos.Responsiveness = 200 AlignPos.RigidityEnabled = false BodyPos.D = 0 BodyPos.P = 3e8 BodyPos.MaxForce = Vector3.new(9e9, 9e9, 9e9) BodyAngularVelocity.AngularVelocity = Vector3.new(9e9, 9e9, 9e9) AttachmentA.Name = "BruhA" AttachmentB.Name = "BruhB" AttachmentB.Orientation = Angle AttachmentB.Position = Position AlignPos.Attachment0 = AttachmentA AlignPos.Attachment1 = AttachmentB end Align(User.Character.HumanoidRootPart,Ball,Vector3.new(0,-20,0),Vector3.new(0,0,0)) Mouse.KeyDown:connect(function(key) if key == "e" then firetouchinterest(Ball, workspace.goal, 1) task.wait(.25) firetouchinterest(Ball, workspace.goal, 0) end end) Mouse.Button1Down:Connect(function() MouseDown = true; BodyPos = Ball end) Mouse.Button1Up:Connect(function() MouseDown = false; BodyPos = AlignPos end) game:GetService("RunService").Heartbeat:connect(function(t) Ball.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0) Ball.Velocity = Vector3.new(25.75,25.75,25.75) if MouseDown then BodyPos.Position = Mouse.Hit.Position + Vector3.new(0,0,0) else return end end)