saladass000

rblx debug

Feb 20th, 2025
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | Source Code | 0 0
  1. -- services
  2. local runService = game:GetService("RunService")
  3. local players = game:GetService("Players")
  4. local rs = game:GetService("ReplicatedStorage")
  5. local TweenService = game:GetService("TweenService")
  6.  
  7. -- Player stuff
  8. local localPlr = players.LocalPlayer
  9. local mouse = localPlr:GetMouse()
  10. local isHolding = false
  11.  
  12. -- Camera Constants
  13. local camera = game.Workspace.CurrentCamera
  14. local cameraAnchor = rs.clientEssentials.cameraAnchor:Clone()
  15. local cameraPanning = rs.clientEssentials.cameraPanner:Clone()
  16.  
  17. -- Camera Variables
  18. local cameraDistance = 20
  19.  
  20. -- Camera properties
  21. camera.CameraType = Enum.CameraType.Scriptable
  22. camera.CameraSubject = cameraAnchor
  23.  
  24. -- Panning Settings
  25. local mouseIcon = ""
  26. local panningRadius = 12
  27. mouse.Icon = mouseIcon
  28.  
  29. local function CameraTransition(target, isSmooth)
  30.  
  31. camera.CameraSubject = target
  32. local newAnchorCFrame = CFrame.new(0, cameraDistance, 0)
  33. local targetCFrame = target.CFrame:ToWorldSpace(newAnchorCFrame) * CFrame.Angles(math.rad(-90), 0, 0)
  34.  
  35. if isSmooth then
  36.  
  37. local seconds = .3
  38. local tweenInfo = TweenInfo.new(seconds, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
  39. local goal = { CFrame = targetCFrame }
  40. local tween = TweenService:Create(camera, tweenInfo, goal)
  41.  
  42. tween:Play() -- Tween/Lerp does pretty much everything
  43.  
  44. else
  45.  
  46. camera.CFrame = target.CFrame:ToWorldSpace(newAnchorCFrame)* CFrame.Angles(math.rad(-90), 0, 0)
  47.  
  48. end
  49. end
  50.  
  51.  
  52. runService.RenderStepped:Connect(function(deltaTime)
  53. -- Handles Camera Parts
  54. local chr = localPlr.Character or localPlr.CharacterAdded:Wait()
  55. local anchor = chr:WaitForChild("cameraAnchor")
  56. local panner = chr:WaitForChild("cameraPanner")
  57.  
  58. anchor.Position = chr.HumanoidRootPart.Position
  59. panner.Position = chr.HumanoidRootPart.Position
  60.  
  61. -- Selection
  62. if chr and not isHolding then
  63.  
  64. CameraTransition(anchor, false) -- Transition to cameraw
  65. --camera.CFrame = anchor.CFrame:ToWorldSpace(newAnchorCFrame) * CFrame.Angles(math.rad(-90), 0, 0)
  66.  
  67. elseif chr and isHolding then
  68.  
  69. -- Handles Panner Movement
  70. local pannerPosition = panner.Position
  71. local mousePosition = mouse.Hit
  72.  
  73. panner.Position = Vector3.new(mousePosition.X, pannerPosition.Y, mousePosition.Z)
  74. local pannerOffset = panner.CFrame.Position - anchor.CFrame.Position
  75.  
  76. if pannerOffset.Magnitude > panningRadius then
  77. panner.CFrame = anchor.CFrame * CFrame.new(pannerOffset.Unit * panningRadius)
  78. end
  79.  
  80. CameraTransition(panner, true)
  81. end
  82. end)
  83.  
  84.  
Advertisement
Add Comment
Please, Sign In to add comment