Advertisement
DrawingJhon

NexoSnake

Sep 24th, 2022
1,152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 13.15 KB | None | 0 0
  1. local beta_control = false
  2.  
  3. local speed = 1
  4. local sine = 1
  5. local srv = game:GetService('RunService')
  6.  
  7. local player = game.Players.LocalPlayer
  8. local character = player.Character
  9. local humanoid = character.Humanoid
  10. local torso = character.Torso
  11. character.HumanoidRootPart:Destroy()
  12.  
  13. pcall(function()
  14.     character.Animate.Disabled = true
  15. end)
  16.  
  17. for _, track in pairs(humanoid:GetPlayingAnimationTracks()) do
  18.     track:Stop()
  19. end
  20.  
  21. humanoid:ChangeState(16)
  22.  
  23. for _, child in pairs(character:GetChildren()) do
  24.     if child:IsA("Tool") then
  25.         child.Parent = player:FindFirstChildOfClass("Backpack")
  26.     end
  27. end
  28.  
  29. local parts = character:GetDescendants()
  30. local actived = false
  31.  
  32. local netless = game:GetService("RunService").Heartbeat:Connect(function()
  33.     if not actived then return end
  34.     for i, v in pairs(parts) do
  35.         if v:IsA("BasePart") then
  36.             v.AssemblyLinearVelocity = Vector3.new(-30,0,0)
  37.         end
  38.     end
  39.     sethiddenproperty(player,"MaximumSimulationRadius",math.huge)
  40.     sethiddenproperty(player,"SimulationRadius",999999999)
  41. end)
  42.  
  43. local lastPos = torso.Position
  44.  
  45. local noclip; noclip = game:GetService("RunService").Stepped:Connect(function()
  46.     if not character:IsDescendantOf(workspace) then
  47.         noclip:Disconnect()
  48.         return
  49.     end
  50.     for i, v in pairs(parts) do
  51.         if v:IsA("BasePart") then
  52.             v.CanCollide = false
  53.         end
  54.     end
  55. end)
  56.  
  57. local uis = game:GetService("UserInputService")
  58. local player = game:GetService("Players").LocalPlayer
  59.  
  60. local HumanDied = false
  61.  
  62. local second_char = Instance.new("Model", workspace)
  63. local second_root = Instance.new("Part", second_char)
  64. second_root.Name = "HumanoidRootPart"
  65. second_root.Size = Vector3.new(2, 2, 1)
  66. second_root.Position = torso.Position
  67. second_root.CanCollide = false
  68. second_root.Transparency =  0.9
  69. local second_torso = second_root:Clone()
  70. second_torso.Name = "Torso"
  71. second_torso.Transparency = 1
  72. local weld = Instance.new("Weld", second_torso)
  73. weld.Part0 = second_torso
  74. weld.Part1 = second_root
  75. weld.C0 = CFrame.new(0, 1, 0)
  76. second_torso.Parent = second_char
  77. second_torso.Massless = true
  78. local second_rarm = Instance.new("Part", second_char)
  79. second_rarm.Name = "Right Arm"
  80. second_rarm.CanCollide = false
  81. second_rarm.Transparency = 1
  82. second_rarm.Massless = true
  83. second_rarm.Size = Vector3.new(1, 2, 1)
  84. local motor = Instance.new("Motor6D", second_torso)
  85. motor.Part0 = second_torso
  86. motor.Part1 = second_rarm
  87. motor.C0 = CFrame.new(1, 1, 0)
  88. motor.Name = "Right Shoulder"
  89. local second_humanoid = Instance.new("Humanoid", second_char)
  90. second_humanoid.HipHeight = 2
  91. second_humanoid.AutoJumpEnabled = false
  92.  
  93. local cn; cn = second_humanoid.Died:Connect(function()
  94.     player.Character = character
  95.     HumanDied = true
  96.     second_char:Destroy()
  97.     netless:Disconnect()   
  98.     --root:ClearAllChildren()
  99.     --root.CFrame = CFrame.new(0, workspace.FallenPartsDestroyHeight + 5, 0)
  100.     character:BreakJoints()
  101.     cn:Disconnect()
  102. end)
  103.  
  104. character.Changed:Connect(function()
  105.     if not character:IsDescendantOf(workspace) then
  106.         HumanDied = true
  107.         second_char:Destroy()
  108.     end
  109. end)
  110.  
  111. function create(weld)
  112.     local part = weld.Part1
  113.     local att0 = Instance.new("Attachment", part)
  114.     local att1 = Instance.new("Attachment", second_torso)
  115.     local alignPos = Instance.new("AlignPosition", part)
  116.     local alignOr = Instance.new("AlignOrientation", part)
  117.  
  118.     alignPos.Attachment0 = att0
  119.     alignPos.Attachment1 = att1
  120.     alignPos.MaxForce = 999999999
  121.     alignPos.MaxVelocity = math.huge
  122.     alignPos.ReactionForceEnabled = false
  123.     alignPos.Responsiveness = math.huge
  124.     alignPos.RigidityEnabled = false
  125.     alignPos.Mode = "TwoAttachment"
  126.  
  127.     alignOr.Attachment0 = att0
  128.     alignOr.Attachment1 = att1
  129.     alignOr.Responsiveness = math.huge
  130.     alignOr.MaxTorque = 999999999
  131.     alignOr.Mode = "TwoAttachment"
  132.  
  133.     weld:Destroy()
  134.     --table.insert(parts, part)
  135.  
  136.     return setmetatable({}, {
  137.         __index = function(self, index)
  138.             if index == "C1" then
  139.                 return att0.CFrame
  140.             elseif index == "C0" then
  141.                 return att1.CFrame
  142.             end
  143.             return weld[index]
  144.         end,
  145.         __newindex = function(self, index, value)
  146.             if index == "C1" then
  147.                 att0.CFrame = value
  148.             elseif index == "C0" then
  149.                 att1.CFrame = value
  150.             else
  151.                 weld[index] = value
  152.             end
  153.         end
  154.     })
  155. end
  156.  
  157. wait()
  158.  
  159. local bv = Instance.new("BodyVelocity")
  160. bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
  161. bv.Velocity = Vector3.new()
  162. bv.Parent = torso
  163. torso.CanCollide = false
  164.  
  165. spawn(function()
  166.     torso.CFrame = CFrame.new(lastPos) * CFrame.new(0, -10, 0)
  167. end)
  168.  
  169. m=game.Players.LocalPlayer:GetMouse()
  170. RJ = {C0 = CFrame.new(); C1 = CFrame.new()}
  171. RS = create(character.Torso['Right Shoulder'])
  172. LS = create(character.Torso['Left Shoulder'])
  173. RH = create(character.Torso['Right Hip'])
  174. LH = create(character.Torso['Left Hip'])
  175. ROOT = second_root
  176. NECK = {C0 = CFrame.new(); C1 = CFrame.new()}
  177. NECK.C0 = CFrame.new(0,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  178. NECK.C1 = CFrame.new(0,-0.5,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  179. RJ.C1 = CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  180. RJ.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  181. RS.C1 = CFrame.new(0,0.5,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  182. LS.C1 = CFrame.new(0,0.5,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  183. RH.C1 = CFrame.new(0,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  184. LH.C1 = CFrame.new(0,1,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  185. RH.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  186. LH.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  187. RS.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  188. LS.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  189.  
  190. --second_root.Position = lastPos + Vector3.new(0, 3, 0)
  191.  
  192. if not beta_control then
  193.     player.Character = second_char
  194. else
  195.     local mover; mover = game:GetService("RunService").RenderStepped:Connect(function()
  196.         if not character:IsDescendantOf(workspace) or humanoid.Health <= 0 then
  197.             mover:Disconnect()
  198.             return
  199.         end
  200.        
  201.         pcall(function()
  202.             second_humanoid:Move(humanoid.MoveDirection)
  203.             second_humanoid.Jump = humanoid.Jump
  204.         end)
  205.     end)
  206. end
  207.    
  208. workspace.CurrentCamera.CameraSubject = second_humanoid
  209.  
  210. wait()
  211.  
  212. actived = true
  213.  
  214. coroutine.wrap(function()
  215.     while true do -- anim changer
  216.         if HumanDied then break end
  217.         sine = sine + speed
  218.         if second_humanoid.Jump then -- jump
  219.             NECK.C0=NECK.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),1+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  220.             RJ.C0=RJ.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),2.54+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  221.             RS.C0=RS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),0+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  222.             LS.C0=LS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.76+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  223.             RH.C0=RH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-2.83+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  224.             LH.C0=LH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-4.44+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  225.         elseif ROOT.Velocity.y < -1 and second_humanoid.Jump then -- fall
  226.             NECK.C0=NECK.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),1+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  227.             RJ.C0=RJ.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),2.54+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  228.             RS.C0=RS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),0+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  229.             LS.C0=LS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.76+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  230.             RH.C0=RH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-2.83+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  231.             LH.C0=LH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-4.44+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  232.         elseif ROOT.Velocity.Magnitude < 2 then -- idle
  233.             NECK.C0=NECK.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),1+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  234.             RJ.C0=RJ.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-2+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  235.             RS.C0=RS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),0.93+0*math.cos(sine/10))*CFrame.Angles(math.rad(120.21+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  236.             LS.C0=LS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),1.47+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  237.             RH.C0=RH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),2.9+0*math.cos(sine/10))*CFrame.Angles(math.rad(242.48+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+5.58*math.cos(sine/10))),.2)
  238.             LH.C0=LH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-0.68+0*math.cos(sine/10),4.69+0*math.cos(sine/10))*CFrame.Angles(math.rad(219.55+13.23*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+59.08*math.cos(sine/10))),.2)
  239.         elseif ROOT.Velocity.Magnitude < 20 then -- walk
  240.             NECK.C0=NECK.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),1+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  241.             RJ.C0=RJ.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-2+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  242.             RS.C0=RS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),0.93+0*math.cos(sine/10))*CFrame.Angles(math.rad(120.21+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  243.             LS.C0=LS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),1.47+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  244.             RH.C0=RH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),2.9+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+2*math.cos(sine/10))),.2)
  245.             LH.C0=LH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),4.69+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+-2.06*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+28.51*math.cos(sine/10))),.2)
  246.         elseif ROOT.Velocity.Magnitude > 20 then -- run
  247.             NECK.C0=NECK.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),1+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  248.             RJ.C0=RJ.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-2+0*math.cos(sine/10),0+0*math.cos(sine/10))*CFrame.Angles(math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  249.             RS.C0=RS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),0.93+0*math.cos(sine/10))*CFrame.Angles(math.rad(120.21+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  250.             LS.C0=LS.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),1.47+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10))),.2)
  251.             RH.C0=RH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),2.9+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+0*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+2*math.cos(sine/10))),.2)
  252.             LH.C0=LH.C0:Lerp(CFrame.new(0+0*math.cos(sine/10),-1.5+0*math.cos(sine/10),4.69+0*math.cos(sine/10))*CFrame.Angles(math.rad(270+-2.06*math.cos(sine/10)),math.rad(0+0*math.cos(sine/10)),math.rad(0+28.51*math.cos(sine/10))),.2)
  253.         end
  254.        
  255.         srv.RenderStepped:Wait()
  256.     end
  257.     second_char:Destroy()
  258. end)()
  259. --Created using Nexo Animator V4
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement