Advertisement
TheUnknownDiscord

arm

Mar 25th, 2022
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.18 KB | None | 0 0
  1. local part3 = Instance.new("Part",owner.Character)
  2. part3.CanCollide = false
  3. part3.Name = "the"
  4. local wel = Instance.new("Weld",owner.Character.HumanoidRootPart)
  5. wel.Part0 = owner.Character.Head
  6. wel.Part1 = wel.Parent
  7. wel.C1 = CFrame.new(0,1,0)
  8. part3:SetNetworkOwner(owner)
  9. part3.Size = Vector3.new(0.5,2,0.5)
  10. owner.Character.HumanoidRootPart:SetNetworkOwner(owner)
  11. owner.Character.Humanoid.RequiresNeck = false
  12. owner.Character.Head.CanCollide = false
  13. owner.Character.HumanoidRootPart:SetNetworkOwner(owner)
  14. owner.Character.Torso:SetNetworkOwner(owner)
  15. owner.Character.Head:SetNetworkOwner(owner)
  16. for i,v in pairs(owner.Character:GetDescendants()) do
  17. pcall(function()
  18. v:SetNetworkOwner(owner)
  19. end)
  20. end
  21. owner.Character["Right Arm"]:Destroy()
  22. owner.Character["Left Arm"]:Destroy()
  23. local part4 = Instance.new("Part",owner.Character)
  24. part4.CanCollide = false
  25. part4.Name = "the2"
  26. part4:SetNetworkOwner(owner)
  27. part4.Size = Vector3.new(0.5,2,0.5)
  28. local mesh = Instance.new("SpecialMesh",part3)
  29. mesh.MeshId = "rbxassetid://6674278819"
  30. mesh.Offset = Vector3.new(0.5,0,0)
  31. local App = game:GetService("Players"):GetCharacterAppearanceAsync(owner.UserId)
  32. local col = App["Body Colors"].LeftArmColor
  33. part3.Color = col.Color
  34. mesh.Scale = Vector3.new(0.04,0.04,0.04)
  35. local bv = Instance.new("BodyVelocity",part3)
  36. bv.Velocity = Vector3.new()
  37. bv.MaxForce = Vector3.new(1,1,1) * math.huge
  38. local mesh2 = Instance.new("SpecialMesh",part4)
  39. mesh2.MeshId = "rbxassetid://6674278818"
  40. mesh2.Offset = Vector3.new(-0.5,0,0)
  41. local col = App["Body Colors"].RightArmColor
  42. part4.Color = col.Color
  43. mesh2.Scale = Vector3.new(0.04,0.04,0.04)
  44. local bv2 = Instance.new("BodyVelocity",part4)
  45. bv2.Velocity = Vector3.new()
  46. bv2.MaxForce = Vector3.new(1,1,1) * math.huge
  47. e = Instance.new("RemoteEvent",part3)
  48. weld2 = nil
  49. partta = {}
  50. anchors = {}
  51. netta = {}
  52. weld3 = nil
  53. partta2 = {}
  54. anchors2 = {}
  55. netta2 = {}
  56. e.OnServerEvent:Connect(function(_,wha,who,cf)
  57. if wha == "the" then
  58. local mod = who:FindFirstAncestorWhichIsA("Model")
  59. if mod and mod ~= workspace then
  60. for i,v in pairs(mod:GetDescendants()) do
  61. if v:IsA("BasePart") then
  62. table.insert(anchors,v.Anchored)
  63. table.insert(netta,v:GetNetworkOwner())
  64. table.insert(partta,v)
  65. coroutine.wrap(function()
  66. wait(0.01)
  67. v.Anchored = false
  68. v:SetNetworkOwner(owner)
  69. end)()
  70. end
  71. end
  72. else
  73. table.insert(anchors,who.Anchored)
  74. table.insert(netta,who:GetNetworkOwner())
  75. table.insert(partta,who)
  76. wait()
  77. who.Anchored = false
  78. who:SetNetworkOwner(owner)
  79. end
  80. weld2 = Instance.new("Weld",part3)
  81. local cfdif = part3.CFrame:Inverse() * who.CFrame
  82. weld2.Part0 = who
  83. weld2.Part1 = part3
  84. task.wait()
  85. weld2.C0 = cfdif:Inverse()
  86. elseif wha == "fist" then
  87. weld2:Destroy()
  88. wait()
  89. for i,v in pairs(partta) do
  90. v:SetNetworkOwner(netta[i])
  91. v.Anchored = anchors[i]
  92. end
  93. wait(0.01)
  94. netta = {}
  95. anchors = {}
  96. partta = {}
  97. elseif wha == "the2" then
  98. local mod = who:FindFirstAncestorWhichIsA("Model")
  99. if mod and mod ~= workspace then
  100. for i,v in pairs(mod:GetDescendants()) do
  101. if v:IsA("BasePart") then
  102. table.insert(anchors2,v.Anchored)
  103. table.insert(netta2,v:GetNetworkOwner())
  104. table.insert(partta2,v)
  105. coroutine.wrap(function()
  106. wait(0.01)
  107. v.Anchored = false
  108. v:SetNetworkOwner(owner)
  109. end)()
  110. end
  111. end
  112. else
  113. table.insert(anchors2,who.Anchored)
  114. table.insert(netta2,who:GetNetworkOwner())
  115. table.insert(partta2,who)
  116. wait()
  117. who.Anchored = false
  118. who:SetNetworkOwner(owner)
  119. end
  120. weld3 = Instance.new("Weld",part4)
  121. local cfdif = part4.CFrame:Inverse() * who.CFrame
  122. weld3.Part0 = who
  123. weld3.Part1 = part4
  124. task.wait()
  125. weld3.C0 = cfdif:Inverse()
  126. elseif wha == "fist2" then
  127. weld3:Destroy()
  128. wait()
  129. for i,v in pairs(partta2) do
  130. v:SetNetworkOwner(netta2[i])
  131. v.Anchored = anchors2[i]
  132. end
  133. wait(0.01)
  134. netta2 = {}
  135. anchors2 = {}
  136. partta2 = {}
  137. elseif wha == "headrot" then
  138. wel.C0 = cf
  139. end
  140. end)
  141. NLS([[
  142. local pard = script.Parent
  143. local pard2 = owner.Character:WaitForChild("the2")
  144. local e = pard:FindFirstChildWhichIsA("RemoteEvent")
  145. mouse = owner:GetMouse()
  146. local active = true
  147. local what = nil
  148. local active2 = true
  149. local what2 = nil
  150. local part = Instance.new("Part",script)
  151. part.Transparency = 1
  152. part.CanCollide = false
  153. part.Anchored = true
  154. part.Size = Vector3.new()
  155. local part6 = Instance.new("Part",script)
  156. part6.Transparency = 1
  157. part6.CanCollide = false
  158. part6.Anchored = true
  159. part6.Size = Vector3.new()
  160. local part2 = Instance.new("Part",script)
  161. part2.CanCollide = false
  162. part2.Transparency = 1
  163. part2.Size = Vector3.new(0.5,0.5,3)
  164. local part5 = Instance.new("Part",script)
  165. part5.CanCollide = false
  166. part5.Transparency = 1
  167. part5.Size = Vector3.new(0.5,0.5,3)
  168. mouse.KeyDown:Connect(function(key)
  169. key = key:lower()
  170. if key == "q" and active then
  171. local params = RaycastParams.new()
  172. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2}
  173. params.FilterType = Enum.RaycastFilterType.Blacklist
  174. local result2 = workspace:Raycast(pard.Position + pard.CFrame.rightVector * 0.5, pard.CFrame.upVector * -3, params)
  175. if result2 and result2.Instance then
  176. active = false
  177. e:FireServer("the",result2.Instance)
  178. if result2.Instance:FindFirstAncestorWhichIsA("Model") then
  179. what = result2.Instance:FindFirstAncestorWhichIsA("Model")
  180. else
  181. what = result2.Instance
  182. end
  183. end
  184. elseif key == "q" and not active then
  185. active = true
  186. e:FireServer("fist")
  187. what = nil
  188. elseif key == "e" and active2 then
  189. local params = RaycastParams.new()
  190. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2}
  191. params.FilterType = Enum.RaycastFilterType.Blacklist
  192. local result2 = workspace:Raycast(pard2.Position + pard2.CFrame.rightVector * -0.5, pard2.CFrame.upVector * -3, params)
  193. if result2 and result2.Instance then
  194. active2 = false
  195. e:FireServer("the2",result2.Instance)
  196. if result2.Instance:FindFirstAncestorWhichIsA("Model") then
  197. what2 = result2.Instance:FindFirstAncestorWhichIsA("Model")
  198. else
  199. what2 = result2.Instance
  200. end
  201. end
  202. elseif key == "e" and not active2 then
  203. active2 = true
  204. e:FireServer("fist2")
  205. what2 = nil
  206. end
  207. end)
  208. local weld = Instance.new("Weld",part)
  209. weld.Part0 = part2
  210. weld.Part1 = part
  211. weld.C0 = CFrame.new(1.5,1,2)
  212. local weld4 = Instance.new("Weld",part6)
  213. weld4.Part0 = part5
  214. weld4.Part1 = part6
  215. weld4.C0 = CFrame.new(-1.5,1,2)
  216. local bob = CFrame.new()
  217. local bob2 = CFrame.new()
  218. game:GetService("RunService").RenderStepped:Connect(function()
  219. pard.LocalTransparencyModifier = 0
  220. pard2.LocalTransparencyModifier = 0
  221. bob = bob:Lerp(workspace.CurrentCamera.CFrame.Rotation,0.5)
  222. bob2 = bob2:Lerp(owner.Character.HumanoidRootPart.CFrame.Rotation,0.5)
  223. local cfl = CFrame.new(0,-0.5,0) * bob:Inverse() * bob2
  224. e:FireServer("headrot","nil",cfl)
  225. local params = RaycastParams.new()
  226. if what ~= nil and what2 ~= nil then
  227. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,what2:GetDescendants(),part5,part6}
  228. elseif what == nil and what2 ~= nil then
  229. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2,what2:GetDescendants(),part5,part6}
  230. elseif what ~= nil and what2 == nil then
  231. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,part5,part6}
  232. else
  233. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,part5,pard2,part6}
  234. end
  235. params.FilterType = Enum.RaycastFilterType.Blacklist
  236. local po = CFrame.new(workspace.CurrentCamera.CFrame.Position) * CFrame.Angles(part2.CFrame:ToEulerAnglesXYZ())
  237. local result = workspace:Raycast(po.Position + po.rightVector * -0.5, part2.CFrame.lookVector * 4, params)
  238. if result then
  239. local pos = CFrame.new(result.Position + po.rightVector * 0.5) * CFrame.Angles(workspace.CurrentCamera.CFrame:ToEulerAnglesXYZ()) * CFrame.new(0,0,4)
  240. part.CFrame = CFrame.new(pos.Position) * bob
  241. else
  242. part.CFrame = CFrame.new(workspace.CurrentCamera.CFrame.Position) * bob
  243. end
  244. local params = RaycastParams.new()
  245. if what ~= nil and what2 ~= nil then
  246. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,what2:GetDescendants(),part5,part6}
  247. elseif what == nil and what2 ~= nil then
  248. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2,what2:GetDescendants(),part5,part6}
  249. elseif what ~= nil and what2 == nil then
  250. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,part5,part6}
  251. else
  252. params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,part5,pard2,part6}
  253. end
  254. params.FilterType = Enum.RaycastFilterType.Blacklist
  255. local po = CFrame.new(workspace.CurrentCamera.CFrame.Position) * CFrame.Angles(part5.CFrame:ToEulerAnglesXYZ())
  256. local result = workspace:Raycast(po.Position + po.rightVector * 0.5, part5.CFrame.lookVector * 4, params)
  257. if result then
  258. local pos = CFrame.new(result.Position + po.rightVector * -0.5) * CFrame.Angles(workspace.CurrentCamera.CFrame:ToEulerAnglesXYZ()) * CFrame.new(0,0,4)
  259. part6.CFrame = CFrame.new(pos.Position) * bob
  260. else
  261. part6.CFrame = CFrame.new(workspace.CurrentCamera.CFrame.Position) * bob
  262. end
  263. pard.CFrame = part2.CFrame * CFrame.Angles(math.rad(90),0,0)
  264. pard2.CFrame = part5.CFrame * CFrame.Angles(math.rad(90),0,0)
  265. end)
  266. ]],part3)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement