TheUnknownDiscord

snek?

Nov 22nd, 2021 (edited)
69
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. local arm = Instance.new("Part",script)
  2. arm.Size = Vector3.new(0.75,2,0.75)
  3. local arm2 = Instance.new("Part",script)
  4. arm2.Size = Vector3.new(1,1,1)
  5. local arm4 = Instance.new("Part",script)
  6. arm4.Size = Vector3.new(1,1,1)
  7. local block = Instance.new("Part",script)
  8. block.Size = Vector3.new(0.75,2,0.75)
  9. local arm3 = Instance.new("Part",script)
  10. arm3.Size = Vector3.new(0.75,2,0.75)
  11. arm2.Shape = Enum.PartType.Ball
  12. arm4.Shape = Enum.PartType.Ball
  13. block.CFrame = owner.Character.HumanoidRootPart.CFrame
  14. arm3.CFrame = owner.Character.HumanoidRootPart.CFrame
  15. arm.CFrame = owner.Character.HumanoidRootPart.CFrame
  16. arm2.CFrame = owner.Character.HumanoidRootPart.CFrame
  17. arm4.CFrame = owner.Character.HumanoidRootPart.CFrame
  18. local density = 1
  19. local friction = 1
  20. local elasticity = 0
  21. local frictionWeight = 100000000000
  22. local elasticityWeight = 0
  23. local physProperties = PhysicalProperties.new(density, friction, elasticity, frictionWeight, elasticityWeight)
  24. arm.CustomPhysicalProperties = physProperties
  25. arm2.CustomPhysicalProperties = physProperties
  26. arm3.CustomPhysicalProperties = physProperties
  27. arm4.CustomPhysicalProperties = physProperties
  28. block.CustomPhysicalProperties = physProperties
  29. owner.Character.Parent = nil
  30. arm.Name = "the3"
  31. block:SetNetworkOwner(owner)
  32. arm3:SetNetworkOwner(owner)
  33. arm:SetNetworkOwner(owner)
  34. arm4:SetNetworkOwner(owner)
  35. arm2:SetNetworkOwner(owner)
  36. arm2.CanCollide = false
  37. arm4.CanCollide = false
  38. arm3.Name = "the"
  39. armweld = Instance.new("Weld",arm3)
  40. armweld.Part0 = arm2
  41. armweld.Part1 = arm3
  42. armweld.C0 = CFrame.new(0,1,0)
  43. armweld2 = Instance.new("Weld",block)
  44. armweld2.Part0 = arm4
  45. armweld2.Part1 = block
  46. armweld2.C0 = CFrame.new(0,-1,0)
  47. block.Name = "the2"
  48. remote = Instance.new("RemoteEvent",script)
  49. remote.Name = "The"
  50. local weld
  51. notouch = Instance.new("NoCollisionConstraint")
  52. notouch.Parent = script
  53. notouch.Part0 = block
  54. notouch.Part1 = block
  55. notouch2 = Instance.new("NoCollisionConstraint")
  56. notouch2.Parent = script
  57. notouch2.Part0 = arm
  58. notouch2.Part1 = arm
  59. local weld2
  60. local count2 = 0
  61. local count = 0
  62. times = 0
  63. local object = Instance.new("ObjectValue", owner.PlayerGui)
  64. object.Value = arm
  65. object.Name = 'ARM'
  66. local object2 = Instance.new("ObjectValue", owner.PlayerGui)
  67. object2.Value = block
  68. object2.Name = 'BLOCK'
  69. local object3 = Instance.new("ObjectValue", owner.PlayerGui)
  70. object3.Value = arm3
  71. object3.Name = 'ARM3'
  72. local object4 = Instance.new("ObjectValue", owner.PlayerGui)
  73. object4.Value = remote
  74. object4.Name = 'REMOTE'
  75. remote.OnServerEvent:Connect(function(plr,hit,hitp)
  76. pcall(function()
  77. count = count+1
  78. if count == 1 then
  79. if times == 1 then
  80. weld2:Destroy()
  81. end
  82. local attachment0 = Instance.new("Attachment")
  83. attachment0.Parent = block
  84. local attachment1 = Instance.new("Attachment")
  85. attachment1.Parent = hit
  86. attachment1.WorldCFrame = attachment0.Parent.CFrame * CFrame.new(0,1,0)
  87. attachment0.WorldCFrame = attachment0.Parent.CFrame * CFrame.new(0,1,0)
  88. weld = Instance.new("AlignPosition")
  89. weld.Parent = block
  90. weld.Attachment0 = attachment0
  91. weld.Attachment1 = attachment1
  92. notouch.Part0 = block
  93. notouch.Part1 = hit
  94. notouch2.Part0 = arm
  95. notouch2.Part1 = hit
  96. weld.RigidityEnabled = true
  97. elseif count == 2 then
  98. weld:Destroy()
  99. local attachment2 = Instance.new("Attachment")
  100. attachment2.Parent = arm3
  101. local attachment3 = Instance.new("Attachment")
  102. attachment3.Parent = hit
  103. attachment3.WorldCFrame = attachment3.Parent.CFrame * CFrame.new(0,-1,0)
  104. attachment2.WorldCFrame = attachment2.Parent.CFrame * CFrame.new(0,-1,0)
  105. weld2 = Instance.new("AlignPosition")
  106. weld2.Parent = arm3
  107. weld2.Attachment0 = attachment2
  108. weld2.Attachment1 = attachment3
  109. weld2.RigidityEnabled = true
  110. notouch.Part0 = arm3
  111. notouch.Part1 = hit
  112. notouch2.Part0 = arm
  113. notouch2.Part1 = hit
  114. times = 1
  115. count = 0
  116. end
  117. end)
  118. end)
  119. wait(0.1)
  120. remote:FireClient(owner,script)
  121. coroutine.wrap(function()
  122. NLS([[
  123. local remote = owner.PlayerGui.REMOTE.Value
  124. local hand = owner.PlayerGui.BLOCK.Value
  125. local hand2 = owner.PlayerGui.ARM3.Value
  126. local hand3 = owner.PlayerGui.ARM.Value
  127. workspace.CurrentCamera.CameraSubject = hand3
  128. local Socket = Instance.new("BallSocketConstraint")
  129. local a1 = Instance.new("Attachment")
  130. local a2 = Instance.new("Attachment")
  131. a1.Parent = hand
  132. a2.Parent = hand3
  133. Socket.Parent = hand
  134. Socket.Attachment0 = a1
  135. Socket.Attachment1 = a2
  136. a1.WorldCFrame = a1.Parent.CFrame * CFrame.new(0,-1,0)
  137. a2.WorldCFrame = a2.Parent.CFrame * CFrame.new(0,1,0)
  138. local Socket3 = Instance.new("BallSocketConstraint")
  139. local a5 = Instance.new("Attachment")
  140. local a6 = Instance.new("Attachment")
  141. a5.Parent = hand3
  142. a6.Parent = hand2
  143. Socket3.Parent = hand
  144. Socket3.Attachment0 = a5
  145. Socket3.Attachment1 = a6
  146. a5.WorldCFrame = a5.Parent.CFrame * CFrame.new(0,-1,0)
  147. a6.WorldCFrame = a6.Parent.CFrame * CFrame.new(0,1,0)
  148. mouse = owner:GetMouse()
  149. remote.OnClientEvent:Connect(function(plr,what)
  150. mouse.TargetFilter = what
  151. end)
  152. bg = Instance.new("BodyGyro",hand)
  153. bg.D = 100
  154. bg.P = 10000
  155. bg.MaxTorque = Vector3.new(math.huge * math.huge,math.huge * math.huge,math.huge * math.huge)
  156. bg2 = Instance.new("BodyGyro",hand2)
  157. bg2.D = 100
  158. bg2.P = 10000
  159. bg2.MaxTorque = Vector3.new(math.huge * math.huge,math.huge * math.huge,math.huge * math.huge)
  160. local count3 = 0
  161. bv = Instance.new("BodyVelocity")
  162. bv.Velocity = Vector3.new()
  163. bv.MaxForce = Vector3.new(1000000000,1000000000,1000000000)
  164. going = false
  165. waiting = false
  166. mouse.KeyDown:Connect(function(key)
  167. pcall(function()
  168. key = key:lower()
  169. if key == "q" then
  170. waiting = true
  171. remote:FireServer(mouse.Target,mouse.Hit)
  172. count3 = count3+1
  173. coroutine.wrap(function()
  174. wait(0.25)
  175. waiting = false
  176. end)()
  177. if count3 == 2 then
  178. count3 = 0
  179. end
  180. elseif key == "w" then
  181. if waiting then
  182. going = false
  183. wait(0.25)
  184. going = true
  185. else
  186. going = true
  187. end
  188. end
  189. end)
  190. end)
  191. mouse.KeyUp:Connect(function(key)
  192. pcall(function()
  193. key = key:lower()
  194. if key == "w" then
  195. going = false
  196. bv.Parent = nil
  197. end
  198. end)
  199. end)
  200. cursor = Instance.new("Part", script)
  201. cursor.Size = Vector3.new(0.1,0.1,0.1)
  202. cursor.Anchored = true
  203. cursor.Transparency = 0.25
  204. game:GetService("RunService").RenderStepped:Connect(function()
  205. pcall(function()
  206. cursor.Position = game.Workspace.CurrentCamera.CFrame.Position + (mouse.Hit.Position - game.Workspace.CurrentCamera.CFrame.Position).Unit * 20
  207. if count3 == 0 then
  208. bg.CFrame = CFrame.new(cursor.Position,hand.Position) * CFrame.Angles(math.rad(90),0,0)
  209. bg2.D = 0
  210. bg2.P = 0
  211. bg.D = 100
  212. bg.P = 10000
  213. elseif count3 == 1 then
  214. bg2.CFrame = CFrame.new(cursor.Position,hand2.Position) * CFrame.Angles(math.rad(-90),0,0)
  215. bg.D = 0
  216. bg.P = 0
  217. bg2.D = 100
  218. bg2.P = 10000
  219. end
  220. if going then
  221. if count3 == 1 then
  222. bv.Parent = hand2
  223. bv.Velocity = hand2.CFrame.upVector * -20
  224. wait()
  225. elseif count3 == 0 or count3 == 2 then
  226. bv.Parent = hand
  227. bv.Velocity = hand.CFrame.upVector * 20
  228. wait()
  229. end
  230. elseif not going then
  231. bv.Parent = nil
  232. bv.Velocity = Vector3.new()
  233. end
  234. end)
  235. end)
  236. ]],owner.PlayerGui)
  237. end)()
RAW Paste Data