Advertisement
Guest User

Bezier Curve Help

a guest
Aug 17th, 2022
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. for i = 1,60 do
  2.  
  3. local part = Instance.new("Part", Char)
  4. part.Anchored = true
  5. part.Transparency = 1
  6. part.CFrame = Char.Torso.CFrame * CFrame.new(math.random(-10,10),math.random(-5,8),-20)
  7. part.Massless = true
  8. part.CanCollide = false
  9.  
  10. local part2 = Instance.new("Part", Char)
  11. part2.Anchored = true
  12. part2.CFrame = Char.Torso.CFrame * CFrame.new(0,0,-8)
  13. part2.Massless = true
  14. part2.Transparency = 1
  15. part2.CanCollide = false
  16. part2.CFrame = Char.Torso.CFrame * CFrame.new(math.random(-20,20),math.random(-5,15),-8)
  17.  
  18. local p0 = Char.Torso.Position
  19. local p1 = part2.Position
  20. local p2 = part.Position
  21.  
  22. local function curve(t, p0, p1, p2)
  23. return (1 - t)^2 * p0 + 2 * (1 - t) * t * p1 + t^2 * p2
  24. end
  25.  
  26. local part1 = game.ReplicatedStorage.GumPart:Clone()
  27. part1.Parent = workspace
  28. part1.Anchored = true
  29. part1.Trail.Enabled = true
  30. part1.Trail.Color = ColorSequence.new(Char.Torso.Color)
  31. part1.Transparency = 0
  32. part1.Position = p0
  33. part1.CanCollide = false
  34.  
  35. local tval = Instance.new("NumberValue",part1)
  36. local goal = {}
  37. goal.Value = 1
  38. local info = TweenInfo.new(0.5,Enum.EasingStyle.Linear)
  39. local tween = game.TweenService:Create(tval,info,goal)
  40. tween:Play()
  41.  
  42. tval:GetPropertyChangedSignal("Value"):Connect(function()
  43. local t = tval.Value
  44.  
  45. local curveposition = curve(t,p0,p1,p2)
  46.  
  47. part1.Position = curveposition
  48. part1.CFrame = CFrame.lookAt(curveposition, p2)
  49. end)
  50. game.Debris:AddItem(part,2)
  51. game.Debris:AddItem(part2,2)
  52. wait(0.01)
  53. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement