1. -- | Made by GR0UD
  2. local User = game:GetService("Players").LocalPlayer
  3. local Ball = game:GetService("Workspace").SoccerBall
  4. local Mouse = User:GetMouse()
  5. function Align(Part0, Part1, Position, Angle)
  6. local AttachmentA = Instance.new("Attachment", Part1)
  7. local AttachmentB = Instance.new("Attachment", Part0)
  8. local AlignPos = Instance.new("AlignPosition", AttachmentA)
  9. local BodyPos = Instance.new("BodyPosition", AlignPos)
  10. local BodyAngularVelocity = Instance.new("BodyAngularVelocity", Part1)
  11. AlignPos.Parent.Parent.CanCollide = false
  12. AlignPos.Parent.Parent.Massless = true
  13. AlignPos.ApplyAtCenterOfMass = true
  14. AlignPos.MaxForce = 9e9
  15. AlignPos.MaxVelocity = 9e9
  16. AlignPos.ReactionForceEnabled = false
  17. AlignPos.Responsiveness = 200
  18. AlignPos.RigidityEnabled = false
  19. BodyPos.D = 0
  20. BodyPos.P = 3e8
  21. BodyPos.MaxForce = Vector3.new(9e9, 9e9, 9e9)
  22. BodyAngularVelocity.AngularVelocity = Vector3.new(9e9, 9e9, 9e9)
  23. AttachmentA.Name = "BruhA"
  24. AttachmentB.Name = "BruhB"
  25. AttachmentB.Orientation = Angle
  26. AttachmentB.Position = Position
  27. AlignPos.Attachment0 = AttachmentA
  28. AlignPos.Attachment1 = AttachmentB
  29. end
  30. Align(User.Character.HumanoidRootPart,Ball,Vector3.new(0,-20,0),Vector3.new(0,0,0))
  31. Mouse.KeyDown:connect(function(key) if key == "e" then
  32. firetouchinterest(Ball, workspace.goal, 1)
  33. task.wait(.25)
  34. firetouchinterest(Ball, workspace.goal, 0)
  35. end
  36. end)
  37. Mouse.Button1Down:Connect(function() MouseDown = true; BodyPos = Ball end)
  38. Mouse.Button1Up:Connect(function() MouseDown = false; BodyPos = AlignPos end)
  39. game:GetService("RunService").Heartbeat:connect(function(t)
  40. Ball.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  41. Ball.Velocity = Vector3.new(25.75,25.75,25.75)
  42. if MouseDown then
  43. BodyPos.Position = Mouse.Hit.Position + Vector3.new(0,0,0) else return
  44. end
  45. end)