Advertisement
Rufus14

Chainsaw

Dec 24th, 2019
3,011
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 32.68 KB | None | 0 0
  1. --By Rufus14
  2. --Converted with ttyyuu12345's model to script plugin v4
  3. Tool0 = Instance.new("Tool")
  4. Part1 = Instance.new("Part")
  5. SpecialMesh2 = Instance.new("SpecialMesh")
  6. Sound3 = Instance.new("Sound")
  7. Sound4 = Instance.new("Sound")
  8. Sound5 = Instance.new("Sound")
  9. Sound6 = Instance.new("Sound")
  10. Sound7 = Instance.new("Sound")
  11. Sound8 = Instance.new("Sound")
  12. Sound9 = Instance.new("Sound")
  13. Sound10 = Instance.new("Sound")
  14. Tool0.Name = "Chainsaw"
  15. Tool0.ToolTip = "really cuts people in half"
  16. Part1.Name = "Handle"
  17. Part1.Parent = Tool0
  18. Part1.CFrame = CFrame.new(-0.100341909, 2.97482109, 5.56015015, -0.999999762, 7.57067573e-06, 1.3017052e-07, -4.55088411e-08, 2.98023224e-08, -0.99999994, -7.71969371e-06, -0.999999881, -2.98023224e-07)
  19. Part1.Orientation = Vector3.new(89.9800034, 156.410004, -56.7799988)
  20. Part1.Position = Vector3.new(-0.100341909, 2.97482109, 5.56015015)
  21. Part1.Rotation = Vector3.new(90, 0, -180)
  22. Part1.Color = Color3.new(0.388235, 0.372549, 0.384314)
  23. Part1.Size = Vector3.new(0.200000003, 0.880000353, 3.94999981)
  24. Part1.BottomSurface = Enum.SurfaceType.Smooth
  25. Part1.BrickColor = BrickColor.new("Dark stone grey")
  26. Part1.TopSurface = Enum.SurfaceType.Smooth
  27. Part1.brickColor = BrickColor.new("Dark stone grey")
  28. Part1.FormFactor = Enum.FormFactor.Custom
  29. Part1.formFactor = Enum.FormFactor.Custom
  30. SpecialMesh2.Parent = Part1
  31. SpecialMesh2.MeshId = "http://roblox.com/asset/?id=2766469"
  32. SpecialMesh2.TextureId = "http://www.roblox.com/asset/?id=185441602"
  33. SpecialMesh2.MeshType = Enum.MeshType.FileMesh
  34. Sound3.Name = "Hit"
  35. Sound3.Parent = Part1
  36. Sound3.SoundId = "rbxassetid://3848646775"
  37. Sound4.Name = "Charge"
  38. Sound4.Parent = Part1
  39. Sound4.Looped = true
  40. Sound4.SoundId = "rbxassetid://3848643367"
  41. Sound5.Name = "Idle"
  42. Sound5.Parent = Part1
  43. Sound5.Looped = true
  44. Sound5.SoundId = "rbxassetid://3848642339"
  45. Sound5.Volume = 0.25
  46. Sound6.Name = "Equip"
  47. Sound6.Parent = Part1
  48. Sound6.SoundId = "rbxassetid://3848640975"
  49. Sound7.Name = "Crush"
  50. Sound7.Parent = Part1
  51. Sound7.SoundId = "rbxassetid://4459571342"
  52. Sound8.Name = "Swoosh"
  53. Sound8.Parent = Part1
  54. Sound8.SoundId = "rbxassetid://3755636438"
  55. Sound9.Name = "Crush2"
  56. Sound9.Parent = Part1
  57. Sound9.SoundId = "rbxassetid://4459573786"
  58. Sound10.Name = "Crush3"
  59. Sound10.Parent = Part1
  60. Sound10.SoundId = "rbxassetid://4459571443"
  61. Tool0.Parent = owner.Character
  62. coroutine.wrap(function()
  63. --By Rufus14
  64. canattack = true
  65. cananimate = false
  66. equipped = false
  67. tool = Tool0
  68. handle = tool.Handle
  69. equipsound = handle.Equip
  70. charge = handle.Charge
  71. swishsound = handle.Swoosh
  72. hitsound = handle.Hit
  73. idlesound = handle.Idle
  74. goresound = handle.Crush
  75. goresound3 = handle.Crush3
  76. goresound2 = handle.Crush2
  77. goreplaying = false
  78. owner = nil
  79. character = nil
  80. mouseclick = false
  81. attacknumber = 1
  82. swingspeed = 0.07
  83. counter = 0
  84. gotsomeone = false
  85. runservice = game:GetService("RunService")
  86. --
  87. tool.Activated:connect(function()
  88.     mouseclick = true
  89. end)
  90. tool.Deactivated:connect(function()
  91.     mouseclick = false
  92. end)
  93. --
  94. function ragdollkill(character)
  95.     local victimshumanoid = character:findFirstChildOfClass("Humanoid")
  96.     local checkragd = character:findFirstChild("ragded")
  97.     if not checkragd then
  98.         local boolvalue = Instance.new("BoolValue", character)
  99.         boolvalue.Name = "ragded"
  100.         if not character:findFirstChild("UpperTorso") then
  101.             local ragdollmodel = Instance.new("Model", workspace)
  102.             ragdollmodel.Name = character.Name
  103.             character.Archivable = true
  104.             for i,v in pairs(character:GetChildren()) do
  105.                 if v.ClassName == "Sound" then
  106.                     v:remove()
  107.                 end
  108.                 for q,w in pairs(v:GetChildren()) do
  109.                     if w.ClassName == "Sound" then
  110.                         w:remove()
  111.                     end
  112.                 end
  113.             end
  114.             local ragdollright = character:Clone()
  115.             local ragdollleft = character:Clone()
  116.             for i,v in pairs(ragdollright:GetDescendants()) do
  117.                 if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
  118.                     v:destroy()
  119.                 end
  120.             end
  121.             ragdollright:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
  122.             ragdollright:findFirstChildOfClass("Humanoid").Health = 0
  123.             if ragdollright:findFirstChild("Health") then
  124.                 if ragdollright:findFirstChild("Health").ClassName == "Script" then
  125.                     ragdollright:findFirstChild("Health").Disabled = true
  126.                 end
  127.             end
  128.             --
  129.             for i,v in pairs(ragdollleft:GetDescendants()) do
  130.                 if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
  131.                     v:destroy()
  132.                 end
  133.             end
  134.             ragdollleft:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
  135.             ragdollleft:findFirstChildOfClass("Humanoid").Health = 0
  136.             if ragdollleft:findFirstChild("Health") then
  137.                 if ragdollleft:findFirstChild("Health").ClassName == "Script" then
  138.                     ragdollright:findFirstChild("Health").Disabled = true
  139.                 end
  140.             end
  141.             for i,v in pairs(character:GetChildren()) do
  142.                 if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" then
  143.                     v:destroy()
  144.                 end
  145.             end
  146.             for i,v in pairs(character:GetChildren()) do
  147.                 if v.ClassName == "Accessory" then
  148.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  149.                     if attachment1 then
  150.                         for q,w in pairs(character:GetChildren()) do
  151.                             if w.ClassName == "Part" then
  152.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  153.                                 if attachment2 then
  154.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  155.                                     hinge.Attachment0 = attachment1
  156.                                     hinge.Attachment1 = attachment2
  157.                                     hinge.LimitsEnabled = true
  158.                                     hinge.LowerAngle = 0
  159.                                     hinge.UpperAngle = 0
  160.                                 end
  161.                             end
  162.                         end
  163.                     end
  164.                 end
  165.             end
  166.             ragdollright.Parent = ragdollmodel
  167.             ragdollleft.Parent = ragdollmodel
  168.             --
  169.             ragdollleft.Torso.Transparency = 0.01
  170.             ragdollright.Torso.Transparency = 0.01
  171.             if ragdollleft:findFirstChild("HumanoidRootPart") then
  172.                 ragdollleft:findFirstChild("HumanoidRootPart").Transparency = 1
  173.             end
  174.             --
  175.             local leftinvisible = Instance.new("Part", ragdollmodel)
  176.             leftinvisible.Size = Vector3.new(1.2,2.2,1.2)
  177.             leftinvisible.Material = "Glass"
  178.             leftinvisible.CanCollide = false
  179.             leftinvisible.Transparency = 0.999
  180.             local leftweld = Instance.new("Weld", leftinvisible)
  181.             leftweld.Part0 = ragdollleft.Torso
  182.             leftweld.Part1 = leftinvisible
  183.             leftweld.C0 = CFrame.new(0.5,0,0)
  184.             local leftred = Instance.new("Part", ragdollleft.Torso)
  185.             leftred.Size = Vector3.new(0.925,1.925,0.925)
  186.             leftred.Material = "Pebble"
  187.             leftred.CanCollide = false
  188.             leftred.BrickColor = BrickColor.new("Maroon")
  189.             local leftredweld = Instance.new("Weld", leftred)
  190.             leftredweld.Part0 = ragdollleft.Torso
  191.             leftredweld.Part1 = leftred
  192.             leftredweld.C0 = CFrame.new(-0.5,0,0)
  193.             --
  194.             local rightinvisible = Instance.new("Part", ragdollmodel)
  195.             rightinvisible.Size = Vector3.new(1.2,2.2,1.2)
  196.             rightinvisible.Material = "Glass"
  197.             rightinvisible.CanCollide = false
  198.             rightinvisible.Transparency = 0.999
  199.             local rightweld = Instance.new("Weld", rightinvisible)
  200.             rightweld.Part0 = ragdollright.Torso
  201.             rightweld.Part1 = rightinvisible
  202.             rightweld.C0 = CFrame.new(-0.5,0,0)
  203.             local rightred = Instance.new("Part", ragdollright.Torso)
  204.             rightred.Size = Vector3.new(0.925,1.925,0.925)
  205.             rightred.Material = "Pebble"
  206.             rightred.CanCollide = false
  207.             rightred.BrickColor = BrickColor.new("Maroon")
  208.             local rightredweld = Instance.new("Weld", rightred)
  209.             rightredweld.Part0 = ragdollright.Torso
  210.             rightredweld.Part1 = rightred
  211.             rightredweld.C0 = CFrame.new(0.5,0,0)
  212.             --
  213.             if ragdollleft:findFirstChild("Right Arm") then
  214.                 ragdollleft["Right Arm"]:destroy()
  215.             end
  216.             if ragdollright:findFirstChild("Right Arm") then
  217.                 local glue = Instance.new("Glue", ragdollright.Torso)
  218.                 glue.Part0 = ragdollright.Torso
  219.                 glue.Part1 = ragdollright:findFirstChild("Right Arm")
  220.                 glue.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  221.                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  222.                 local limbcollider = Instance.new("Part", ragdollright:findFirstChild("Right Arm"))
  223.                 limbcollider.Size = Vector3.new(1.4,1,1)
  224.                 limbcollider.Shape = "Cylinder"
  225.                 limbcollider.Transparency = 1
  226.                 limbcollider.Name = "LimbCollider"
  227.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  228.                 limbcolliderweld.Part0 = ragdollright:findFirstChild("Right Arm")
  229.                 limbcolliderweld.Part1 = limbcollider
  230.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  231.             end
  232.             if ragdollright:findFirstChild("Left Arm") then
  233.                 ragdollright["Left Arm"]:destroy()
  234.             end
  235.             if ragdollleft:findFirstChild("Left Arm") then
  236.                 local glue = Instance.new("Glue", ragdollleft.Torso)
  237.                 glue.Part0 = ragdollleft.Torso
  238.                 glue.Part1 = ragdollleft:findFirstChild("Left Arm")
  239.                 glue.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  240.                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  241.                 local limbcollider = Instance.new("Part", ragdollleft:findFirstChild("Left Arm"))
  242.                 limbcollider.Size = Vector3.new(1.4,1,1)
  243.                 limbcollider.Shape = "Cylinder"
  244.                 limbcollider.Name = "LimbCollider"
  245.                 limbcollider.Transparency = 1
  246.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  247.                 limbcolliderweld.Part0 = ragdollleft:findFirstChild("Left Arm")
  248.                 limbcolliderweld.Part1 = limbcollider
  249.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  250.             end
  251.             if ragdollright:findFirstChild("Left Leg") then
  252.                 ragdollright["Left Leg"]:destroy()
  253.             end
  254.             if ragdollleft:findFirstChild("Left Leg") then
  255.                 local glue = Instance.new("Glue", ragdollleft.Torso)
  256.                 glue.Part0 = ragdollleft.Torso
  257.                 glue.Part1 = ragdollleft:findFirstChild("Left Leg")
  258.                 glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  259.                 glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  260.                 local limbcollider = Instance.new("Part", ragdollleft:findFirstChild("Left Leg"))
  261.                 limbcollider.Size = Vector3.new(1.4,1,1)
  262.                 limbcollider.Shape = "Cylinder"
  263.                 limbcollider.Name = "LimbCollider"
  264.                 limbcollider.Transparency = 1
  265.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  266.                 limbcolliderweld.Part0 = ragdollleft:findFirstChild("Left Leg")
  267.                 limbcolliderweld.Part1 = limbcollider
  268.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  269.             end
  270.             if ragdollleft:findFirstChild("Right Leg") then
  271.                 ragdollleft["Right Leg"]:destroy()
  272.             end
  273.             if ragdollright:findFirstChild("Right Leg") then
  274.                 local glue = Instance.new("Glue", ragdollright.Torso)
  275.                 glue.Part0 = ragdollright.Torso
  276.                 glue.Part1 = ragdollright:findFirstChild("Right Leg")
  277.                 glue.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  278.                 glue.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  279.                 local limbcollider = Instance.new("Part", ragdollright:findFirstChild("Right Leg"))
  280.                 limbcollider.Size = Vector3.new(1.4,1,1)
  281.                 limbcollider.Shape = "Cylinder"
  282.                 limbcollider.Name = "LimbCollider"
  283.                 limbcollider.Transparency = 1
  284.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  285.                 limbcolliderweld.Part0 = ragdollright:findFirstChild("Right Leg")
  286.                 limbcolliderweld.Part1 = limbcollider
  287.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  288.             end
  289.             if ragdollleft:findFirstChild("Head") then
  290.                 ragdollleft["Head"]:destroy()
  291.             end
  292.             if ragdollright:findFirstChild("Head") and ragdollright.Torso:findFirstChild("NeckAttachment") then
  293.                 local HeadAttachment = Instance.new("Attachment", ragdollright["Head"])
  294.                 HeadAttachment.Position = Vector3.new(0, -0.5, 0)
  295.                 local connection = Instance.new('HingeConstraint', ragdollright["Head"])
  296.                 connection.LimitsEnabled = true
  297.                 connection.Attachment0 = ragdollright.Torso.NeckAttachment
  298.                 connection.Attachment1 = HeadAttachment
  299.                 connection.UpperAngle = 60
  300.                 connection.LowerAngle = -60
  301.             elseif ragdollright:findFirstChild("Head") and not ragdollright.Torso:findFirstChild("NeckAttachment") then
  302.                 local hedweld = Instance.new("Weld", ragdollright.Torso)
  303.                 hedweld.Part0 = ragdollright.Torso
  304.                 hedweld.Part1 = ragdollright.Head
  305.                 hedweld.C0 = CFrame.new(0,1.5,0)
  306.             end
  307.             game.Debris:AddItem(ragdollmodel, 30)
  308.             local function aaaalol()
  309.                 wait(0.2)
  310.                 local function searchforvelocity(wot)
  311.                     for i,v in pairs(wot:GetChildren()) do
  312.                         searchforvelocity(v)
  313.                         if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
  314.                             v:destroy()
  315.                         end
  316.                     end
  317.                 end
  318.                 searchforvelocity(ragdollleft)
  319.                 searchforvelocity(ragdollright)
  320.                 wait(0.5)
  321.                 if ragdollleft:findFirstChildOfClass("Humanoid") then
  322.                     ragdollleft:findFirstChildOfClass("Humanoid").PlatformStand = true
  323.                 end
  324.                 if ragdollleft:findFirstChild("HumanoidRootPart") then
  325.                     ragdollleft:findFirstChild("HumanoidRootPart"):destroy()
  326.                 end
  327.                 if ragdollright:findFirstChildOfClass("Humanoid") then
  328.                     ragdollright:findFirstChildOfClass("Humanoid").PlatformStand = true
  329.                 end
  330.                 if ragdollright:findFirstChild("HumanoidRootPart") then
  331.                     ragdollright:findFirstChild("HumanoidRootPart"):destroy()
  332.                 end
  333.             end
  334.             spawn(aaaalol)
  335.         elseif character:findFirstChild("UpperTorso") then
  336.             character.Archivable = true
  337.             for i,v in pairs(character:GetChildren()) do
  338.                 if v.ClassName == "Sound" then
  339.                     v:remove()
  340.                 end
  341.                 for q,w in pairs(v:GetChildren()) do
  342.                     if w.ClassName == "Sound" then
  343.                         w:remove()
  344.                     end
  345.                 end
  346.             end
  347.             local ragdoll = character:Clone()
  348.             ragdoll:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
  349.             for i,v in pairs(ragdoll:GetDescendants()) do
  350.                 if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
  351.                     v:destroy()
  352.                 end
  353.             end
  354.             ragdoll:BreakJoints()
  355.             ragdoll:findFirstChildOfClass("Humanoid").Health = 0
  356.             if ragdoll:findFirstChild("Health") then
  357.                 if ragdoll:findFirstChild("Health").ClassName == "Script" then
  358.                     ragdoll:findFirstChild("Health").Disabled = true
  359.                 end
  360.             end
  361.             for i,v in pairs(character:GetChildren()) do
  362.                 if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" or v.ClassName == "MeshPart" then
  363.                     v:destroy()
  364.                 end
  365.             end
  366.             for i,v in pairs(character:GetChildren()) do
  367.                 if v.ClassName == "Accessory" then
  368.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  369.                     if attachment1 then
  370.                         for q,w in pairs(character:GetChildren()) do
  371.                             if w.ClassName == "Part" or w.ClassName == "MeshPart" then
  372.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  373.                                 if attachment2 then
  374.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  375.                                     hinge.Attachment0 = attachment1
  376.                                     hinge.Attachment1 = attachment2
  377.                                     hinge.LimitsEnabled = true
  378.                                     hinge.LowerAngle = 0
  379.                                     hinge.UpperAngle = 0
  380.                                 end
  381.                             end
  382.                         end
  383.                     end
  384.                 end
  385.             end
  386.             ragdoll.Parent = workspace
  387.             local Humanoid = ragdoll:findFirstChildOfClass("Humanoid")
  388.             Humanoid.PlatformStand = true
  389.             local function makeballconnections(limb, attachementone, attachmenttwo, twistlower, twistupper)
  390.                 local connection = Instance.new('BallSocketConstraint', limb)
  391.                 connection.LimitsEnabled = true
  392.                 connection.Attachment0 = attachementone
  393.                 connection.Attachment1 = attachmenttwo
  394.                 connection.TwistLimitsEnabled = true
  395.                 connection.TwistLowerAngle = twistlower
  396.                 connection.TwistUpperAngle = twistupper
  397.                 local limbcollider = Instance.new("Part", limb)
  398.                 limbcollider.Size = Vector3.new(0.1,1,1)
  399.                 limbcollider.Shape = "Cylinder"
  400.                 limbcollider.Transparency = 1
  401.                 limbcollider:BreakJoints()
  402.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  403.                 limbcolliderweld.Part0 = limb
  404.                 limbcolliderweld.Part1 = limbcollider
  405.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
  406.             end
  407.             local function makehingeconnections(limb, attachementone, attachmenttwo, lower, upper)
  408.                 local connection = Instance.new('HingeConstraint', limb)
  409.                 connection.LimitsEnabled = true
  410.                 connection.Attachment0 = attachementone
  411.                 connection.Attachment1 = attachmenttwo
  412.                 connection.LimitsEnabled = true
  413.                 connection.LowerAngle = lower
  414.                 connection.UpperAngle = upper
  415.                 local limbcollider = Instance.new("Part", limb)
  416.                 limbcollider.Size = Vector3.new(0.1,1,1)
  417.                 limbcollider.Shape = "Cylinder"
  418.                 limbcollider.Transparency = 1
  419.                 limbcollider:BreakJoints()
  420.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  421.                 limbcolliderweld.Part0 = limb
  422.                 limbcolliderweld.Part1 = limbcollider
  423.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
  424.             end
  425.             local HeadAttachment = Instance.new("Attachment", Humanoid.Parent.Head)
  426.             HeadAttachment.Position = Vector3.new(0, -0.5, 0)
  427.             if ragdoll.UpperTorso:findFirstChild("NeckAttachment") then
  428.                 makehingeconnections(Humanoid.Parent.Head, HeadAttachment, ragdoll.UpperTorso.NeckAttachment, -50, 50)
  429.             end
  430.             makehingeconnections(Humanoid.Parent.LowerTorso, Humanoid.Parent.LowerTorso.WaistRigAttachment, Humanoid.Parent.UpperTorso.WaistRigAttachment, -50, 50)
  431.             makeballconnections(Humanoid.Parent.LeftUpperArm, Humanoid.Parent.LeftUpperArm.LeftShoulderRigAttachment, Humanoid.Parent.UpperTorso.LeftShoulderRigAttachment, -200, 200, 180)
  432.             makehingeconnections(Humanoid.Parent.LeftLowerArm, Humanoid.Parent.LeftLowerArm.LeftElbowRigAttachment, Humanoid.Parent.LeftUpperArm.LeftElbowRigAttachment, 0, -60)
  433.             makehingeconnections(Humanoid.Parent.LeftHand, Humanoid.Parent.LeftHand.LeftWristRigAttachment, Humanoid.Parent.LeftLowerArm.LeftWristRigAttachment, -20, 20)
  434.             --
  435.             makeballconnections(Humanoid.Parent.RightUpperArm, Humanoid.Parent.RightUpperArm.RightShoulderRigAttachment, Humanoid.Parent.UpperTorso.RightShoulderRigAttachment, -200, 200, 180)
  436.             makehingeconnections(Humanoid.Parent.RightLowerArm, Humanoid.Parent.RightLowerArm.RightElbowRigAttachment, Humanoid.Parent.RightUpperArm.RightElbowRigAttachment, 0, -60)
  437.             makehingeconnections(Humanoid.Parent.RightHand, Humanoid.Parent.RightHand.RightWristRigAttachment, Humanoid.Parent.RightLowerArm.RightWristRigAttachment, -20, 20)
  438.             --
  439.             makeballconnections(Humanoid.Parent.RightUpperLeg, Humanoid.Parent.RightUpperLeg.RightHipRigAttachment, Humanoid.Parent.LowerTorso.RightHipRigAttachment, -80, 80, 80)
  440.             makehingeconnections(Humanoid.Parent.RightLowerLeg, Humanoid.Parent.RightLowerLeg.RightKneeRigAttachment, Humanoid.Parent.RightUpperLeg.RightKneeRigAttachment, 0, 60)
  441.             makehingeconnections(Humanoid.Parent.RightFoot, Humanoid.Parent.RightFoot.RightAnkleRigAttachment, Humanoid.Parent.RightLowerLeg.RightAnkleRigAttachment, -20, 20)
  442.             --
  443.             makeballconnections(Humanoid.Parent.LeftUpperLeg, Humanoid.Parent.LeftUpperLeg.LeftHipRigAttachment, Humanoid.Parent.LowerTorso.LeftHipRigAttachment, -80, 80, 80)
  444.             makehingeconnections(Humanoid.Parent.LeftLowerLeg, Humanoid.Parent.LeftLowerLeg.LeftKneeRigAttachment, Humanoid.Parent.LeftUpperLeg.LeftKneeRigAttachment, 0, 60)
  445.             makehingeconnections(Humanoid.Parent.LeftFoot, Humanoid.Parent.LeftFoot.LeftAnkleRigAttachment, Humanoid.Parent.LeftLowerLeg.LeftAnkleRigAttachment, -20, 20)
  446.             for i,v in pairs(Humanoid.Parent:GetChildren()) do
  447.                 if v.ClassName == "Accessory" then
  448.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  449.                     if attachment1 then
  450.                         for q,w in pairs(Humanoid.Parent:GetChildren()) do
  451.                             if w.ClassName == "Part" then
  452.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  453.                                 if attachment2 then
  454.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  455.                                     hinge.Attachment0 = attachment1
  456.                                     hinge.Attachment1 = attachment2
  457.                                     hinge.LimitsEnabled = true
  458.                                     hinge.LowerAngle = 0
  459.                                     hinge.UpperAngle = 0
  460.                                 end
  461.                             end
  462.                         end
  463.                     end
  464.                 end
  465.             end
  466.             for i,v in pairs(ragdoll:GetChildren()) do
  467.                 for q,w in pairs(v:GetChildren()) do
  468.                     if w.ClassName == "Motor6D"--[[ and w.Name ~= "Neck"--]] and w.Name ~= "ouch_weld" then
  469.                         w:destroy()
  470.                     end
  471.                 end
  472.             end
  473.             if ragdoll:findFirstChild("HumanoidRootPart") then
  474.                 ragdoll.HumanoidRootPart:destroy()
  475.             end
  476.             if ragdoll:findFirstChildOfClass("Humanoid") then
  477.                 ragdoll:findFirstChildOfClass("Humanoid").PlatformStand = true
  478.             end
  479.             local function waitfordatmoment()
  480.                 wait(0.2)
  481.                 local function searchforvelocity(wot)
  482.                     for i,v in pairs(wot:GetChildren()) do
  483.                         searchforvelocity(v)
  484.                         if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
  485.                             v:destroy()
  486.                         end
  487.                     end
  488.                 end
  489.                 searchforvelocity(ragdoll)
  490.             end
  491.             spawn(waitfordatmoment)
  492.             game.Debris:AddItem(ragdoll, 30)
  493.         end
  494.     end
  495. end
  496. function damage(dmg)
  497.     for i,v in pairs(workspace:GetDescendants()) do
  498.         if v.ClassName == "Model" and v ~= character then
  499.             local headdude = v:findFirstChild("Head")
  500.             if headdude then
  501.                 if (headdude.Position - handle.Position).magnitude < 3.25 then
  502.                     if headdude.Parent ~= nil then
  503.                         local humm = v:findFirstChildOfClass("Humanoid")
  504.                         if humm then
  505.                             if humm.Parent ~= character then
  506.                                 if humm.Health > 0 then
  507.                                     gotsomeone = true
  508.                                     charge.TimePosition = 1
  509.                                     charge:Play()
  510.                                     character.HumanoidRootPart.CFrame = CFrame.new(character.HumanoidRootPart.Position, Vector3.new(headdude.Position.x,character.HumanoidRootPart.Position.y,headdude.Position.z))
  511.                                     humm.Health = humm.Health - dmg
  512.                                     coroutine.wrap(function()
  513.                                         wait()
  514.                                         damage(dmg)
  515.                                     end)()
  516.                                     local rightarmweld = character.Torso:findFirstChild("RightArmWeldsaw")
  517.                                     local leftarmweld = character.Torso:findFirstChild("LeftArmWeldsaw")
  518.                                     local grip = character["Right Arm"]:WaitForChild("RightGrip")
  519.                                     local headweld = character.Torso:findFirstChild("HeadWeldsaw")
  520.                                     local rootweld = character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldsaw")
  521.                                     local random = math.random(-10,10)/100
  522.                                     grip.C0 = CFrame.new(-0.0732569695, -1.92370892, -0.641631603, 0.969727159, 0.0133714303, -0.243824616, 0.238927066, 0.154250577, 0.95870775, 0.050429374, -0.987941206, 0.146386176)
  523.                                     headweld.C0 = CFrame.new(-0.0150766373, 1.49240398, 0.0855045319, 0.984807789, -0.0301536527, -0.171009883, -8.14907253e-10, 0.98480773, -0.173648179, 0.173647955, 0.171010077, 0.969846368)
  524.                                     rootweld.C0 = CFrame.new(0, 0, 0, 0.984807789, -0.0301536173, 0.171009868, 0, 0.984807789, 0.17364797, -0.17364797, -0.171009868, 0.969846368)
  525.                                     rightarmweld.C0 =  CFrame.new(1.23043251, 0.356081486, -0.816204071, 0.939692616, 0.342020154, -6.33299351e-08, -0.0593911633, 0.163175702, -0.98480767, -0.336824059, 0.925416589, 0.17364797) * CFrame.fromEulerAnglesXYZ(random,0,0)
  526.                                     leftarmweld.C0 = CFrame.new(-0.310541153, 1.13866043, -1.10306931, 0.49999997, -0.813797772, 0.2961981, 0.15038377, -0.25523603, -0.95511198, 0.852868557, 0.522099376, -0.00523606688) * CFrame.fromEulerAnglesXYZ(random,0,0)
  527.                                     if not goreplaying then
  528.                                         goreplaying = true
  529.                                         hitsound:Play()
  530.                                         local goresounds = {goresound, goresound2, goresound3}
  531.                                         local pickedsound = goresounds[math.random(1,#goresounds)]
  532.                                         pickedsound:Play()
  533.                                         coroutine.wrap(function()
  534.                                             wait(pickedsound.TimeLength)
  535.                                             goreplaying = false
  536.                                         end)()
  537.                                     end
  538.                                 else
  539.                                     ragdollkill(humm.Parent)
  540.                                     counter = 0
  541.                                     goreplaying = false
  542.                                     gotsomeone = false
  543.                                     canattack = false
  544.                                     cananimate = false
  545.                                     local grip = character["Right Arm"]:WaitForChild("RightGrip")
  546.                                     local rightarmweld = character.Torso:findFirstChild("RightArmWeldsaw")
  547.                                     local leftarmweld = character.Torso:findFirstChild("LeftArmWeldsaw")
  548.                                     local headweld = character.Torso:findFirstChild("HeadWeldsaw")
  549.                                     local rootweld = character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldsaw")
  550.                                     for i = 0,1 , 0.07 do
  551.                                         grip.C0 = grip.C0:lerp(CFrame.new(0.338353157, -2.24114323, -0.897329807, 0.928362608, 0.214593962, -0.303466737, 0.149478868, 0.531971872, 0.833463669, 0.340291977, -0.819118381, 0.461785525),i)
  552.                                         rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.18301249, 0.158493519, -0.591506004, 0.866025269, 0.49999994, -1.49011612e-08, -0.24999994, 0.433012664, -0.866025388, -0.433012694, 0.74999994, 0.499999851),i)
  553.                                         leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-0.33951664, 0.407286167, -1.21828938, 0.649518967, -0.759164333, 0.0423575863, 0.0593911484, -0.00488249958, -0.998222709, 0.75802207, 0.650880337, 0.0419163257),i)
  554.                                         rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.939692676, -0.0593911223, 0.336823821, 0, 0.98480773, 0.173648149, -0.342019886, -0.163175881, 0.925416589) * CFrame.fromEulerAnglesXYZ(0,math.rad(20),0),i)
  555.                                         headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.5, 0, 0.939692497, -3.7252903e-09, -0.342020094, 1.97906047e-09, 0.999999881, 1.49011612e-08, 0.342020035, 1.49011612e-08, 0.939692438),i)
  556.                                         runservice.Stepped:wait()
  557.                                     end
  558.                                     charge:Stop()
  559.                                     canattack = true
  560.                                     cananimate = true
  561.                                 end
  562.                             end
  563.                         end
  564.                     end
  565.                 end
  566.             end
  567.         end
  568.     end
  569. end
  570. tool.Unequipped:connect(function()
  571.     equipped = false
  572.     mouseclick = false
  573.     cananimate = false
  574.     idlesound:Stop()
  575.     charge:Stop()
  576.     if character.Torso:findFirstChild("LeftArmWeldsaw") then
  577.         character.Torso:findFirstChild("LeftArmWeldsaw"):destroy()
  578.     end
  579.     if character.Torso:findFirstChild("RightArmWeldsaw") then
  580.         character.Torso:findFirstChild("RightArmWeldsaw"):destroy()
  581.     end
  582.     if character.Torso:findFirstChild("HeadWeldsaw") then
  583.         character.Torso:findFirstChild("HeadWeldsaw"):destroy()
  584.     end
  585.     if character:findFirstChild("HumanoidRootPart") then
  586.         if character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldsaw") then
  587.             character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldsaw"):destroy()
  588.         end
  589.     end
  590. end)
  591. tool.Equipped:connect(function()
  592.     equipped = true
  593.     cananimate = true
  594.     canattack = false
  595.     equipsound:Play()
  596.     idlesound:Play()
  597.     owner = game:GetService("Players"):GetPlayerFromCharacter(tool.Parent)
  598.     character = owner.Character
  599.     local grip = character["Right Arm"]:WaitForChild("RightGrip")
  600.     local rightarm = Instance.new("Weld", character.Torso)
  601.     rightarm.Part0 = character.Torso
  602.     rightarm.Part1 = character["Right Arm"]
  603.     rightarm.C0 = CFrame.new(1.5,0,0)
  604.     rightarm.Name = "RightArmWeldsaw"
  605.     local leftarm = Instance.new("Weld", character.Torso)
  606.     leftarm.Part0 = character.Torso
  607.     leftarm.Part1 = character["Left Arm"]
  608.     leftarm.C0 = CFrame.new(-1.5,0,0)
  609.     leftarm.Name = "LeftArmWeldsaw"
  610.     local head = Instance.new("Weld", character.Torso)
  611.     head.Part0 = character.Torso
  612.     head.Part1 = character.Head
  613.     head.C0 = CFrame.new(0,1.5,0)
  614.     head.Name = "HeadWeldsaw"
  615.     local humanoidrootpart = Instance.new("Weld", character.HumanoidRootPart)
  616.     humanoidrootpart.Part0 = character.HumanoidRootPart
  617.     humanoidrootpart.Part1 = character.Torso
  618.     humanoidrootpart.Name = "HumanoidRootPartWeldsaw"
  619.     for i = 0,1 , 0.07 do
  620.         grip.C0 = grip.C0:lerp(CFrame.new(-1.05606174, -2.31819725, 0.326734543, 0.737709045, -0.431000441, 0.519638062, -0.593709648, -0.0477490723, 0.803261399, -0.321393758, -0.901087344, -0.291114032),i)
  621.         rightarm.C0 = rightarm.C0:lerp(CFrame.new(1.18301249, 0.266395807, -0.641820908, 0.866025329, 0.49999994, -2.98023224e-08, -0.171010047, 0.29619807, -0.939692497, -0.469846189, 0.813797653, 0.342020094),i)
  622.         leftarm.C0 = leftarm.C0:lerp(CFrame.new(-0.961470604, 0.328989744, -0.685032845, 0.642787576, -0.719846189, -0.262002558, 0, 0.342020094, -0.939692497, 0.766044378, 0.604022741, 0.219846293),i)
  623.         humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(0, 0, 0, 0.342020094, 0, -0.939692616, 0.163175717, 0.984807789, 0.0593910962, 0.925416589, -0.17364797, 0.336824059),i)
  624.         head.C0 = head.C0:lerp(CFrame.new(-0.0855050087, 1.46984625, -0.148098946, 0.974494398, -0.171010137, 0.145312965, 0.116977841, 0.939692557, 0.321393967, -0.191511184, -0.296198308, 0.935729682),i)
  625.         runservice.Stepped:wait()
  626.     end
  627.     wait(0.45)
  628.     for i = 0,1 , 0.07 do
  629.         grip.C0 = grip.C0:lerp(CFrame.new(-0.772166252, -2.19977283, -0.396611214, 0.845839143, -0.296142429, 0.443684131, -0.404046834, 0.187376171, 0.895341277, -0.348284483, -0.936584055, 0.038834691),i)
  630.         rightarm.C0 = rightarm.C0:lerp(CFrame.new(1.5, 0.250000238, -0.433012486, 0.999999881, 0, 1.49011612e-08, 1.49011603e-08, 0.499999553, -0.866025567, 5.96046448e-08, 0.866025448, 0.499999583),i)
  631.         leftarm.C0 = leftarm.C0:lerp(CFrame.new(-1.68301296, 0.808493614, 0.534326553, 0.866025388, 0.5, 1.49011612e-08, -0.24999994, 0.433012575, -0.866025388, -0.433012724, 0.75, 0.499999881),i)
  632.         humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(0, 0, 0, 0.766044438, 0, -0.642787576, 0, 1, 0, 0.642787576, 0, 0.766044438),i)
  633.         head.C0 = head.C0:lerp(CFrame.new(0, 1.5, 0, 0.866025388, 0, 0.5, 0, 1, 0, -0.5, 0, 0.866025388),i)
  634.         runservice.Stepped:wait()
  635.     end
  636.     wait(0.5)
  637.     canattack = true
  638.     coroutine.wrap(function()
  639.         while equipped and runservice.Stepped:wait() do
  640.             if cananimate and not gotsomeone then
  641.                 grip.C0 = grip.C0:lerp(CFrame.new(-0.242508888, -2.5377059, -0.631694317, 0.946577728, -0.296142906, 0.127631813, -0.0734542608, 0.18737559, 0.979537964, -0.313998401, -0.936583996, 0.155612677),0.1)
  642.                 rightarm.C0 = rightarm.C0:lerp(CFrame.new(0.930742264, 0.177621126, -0.385728598, 0.642787576, 0.719846249, 0.262002587, -0.262002587, 0.527981639, -0.807830274, -0.719846249, 0.450617909, 0.527981758) * CFrame.fromEulerAnglesXYZ(math.sin(tick()*45)/40,0,0),0.1)
  643.                 leftarm.C0 = leftarm.C0:lerp(CFrame.new(-1.18301296, 0.266396046, -0.64182198, 0.866025269, -0.5, 0, 0.171010062, 0.29619807, -0.939692557, 0.469846249, 0.813797593, 0.342020154) * CFrame.fromEulerAnglesXYZ(math.sin(tick()*45)/40,0,0),0.1)
  644.                 head.C0 = head.C0:lerp(CFrame.new(0, 1.5, 0, 0.98480767, 0, 0.173648164, 0, 1, 0, -0.173648164, 0, 0.98480767),0.1)
  645.                 humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(0, 0, 0, 0.98480773, 0, -0.173648179, 0, 1, 0, 0.173648179, 0, 0.98480773),0.1)
  646.             end
  647.         end
  648.     end)()
  649. end)
  650. tool.Activated:connect(function()
  651.     if canattack then
  652.         canattack = false
  653.         cananimate = false
  654.         local grip = character["Right Arm"]:WaitForChild("RightGrip")
  655.         local rightarmweld = character.Torso:findFirstChild("RightArmWeldsaw")
  656.         local leftarmweld = character.Torso:findFirstChild("LeftArmWeldsaw")
  657.         local headweld = character.Torso:findFirstChild("HeadWeldsaw")
  658.         local rootweld = character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldsaw")
  659.         charge:Play()
  660.         for i = 0,1 , 0.04 do
  661.             grip.C0 = grip.C0:lerp(CFrame.new(0.338353157, -2.24114323, -0.897329807, 0.928362608, 0.214593962, -0.303466737, 0.149478868, 0.531971872, 0.833463669, 0.340291977, -0.819118381, 0.461785525),i)
  662.             rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.27280998, 0.726655483, -0.622729301, 0.984807372, -0.173648089, -7.4505806e-08, -0.0593910888, -0.336823702, -0.939691901, 0.163175941, 0.925416112, -0.342019677),i)
  663.             leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(0.686654091, 1.62646389, -1.40339398, 0.649519086, -0.727868378, 0.219846457, -0.315068483, -0.520797014, -0.793411732, 0.691994667, 0.44606936, -0.567595959),i)
  664.             rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.939692616, -0.0593911707, -0.336824059, 0, 0.98480773, -0.173648179, 0.342020124, 0.163175911, 0.925416529),i)
  665.             headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.49999952, 0, 0.939692616, 0, 0.342020094, 3.78349796e-09, 0.999999881, 0, -0.342020124, 0, 0.939692497),i)
  666.             runservice.Stepped:wait()
  667.         end
  668.         swishsound:Play()
  669.         for i = 0,1 , 0.07 do
  670.             if not gotsomeone then
  671.                 damage(math.random(5,10))
  672.                 grip.C0 = grip.C0:lerp(CFrame.new(0.338353157, -2.24114323, -0.897329807, 0.928362608, 0.214593962, -0.303466737, 0.149478868, 0.531971872, 0.833463669, 0.340291977, -0.819118381, 0.461785525),i)
  673.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.18301249, 0.158493519, -0.591506004, 0.866025269, 0.49999994, -1.49011612e-08, -0.24999994, 0.433012664, -0.866025388, -0.433012694, 0.74999994, 0.499999851),i)
  674.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-0.33951664, 0.407286167, -1.21828938, 0.649518967, -0.759164333, 0.0423575863, 0.0593911484, -0.00488249958, -0.998222709, 0.75802207, 0.650880337, 0.0419163257),i)
  675.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.939692676, -0.0593911223, 0.336823821, 0, 0.98480773, 0.173648149, -0.342019886, -0.163175881, 0.925416589) * CFrame.fromEulerAnglesXYZ(0,math.rad(20),0),i)
  676.                 headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.5, 0, 0.939692497, -3.7252903e-09, -0.342020094, 1.97906047e-09, 0.999999881, 1.49011612e-08, 0.342020035, 1.49011612e-08, 0.939692438),i)
  677.                 runservice.Stepped:wait()
  678.             end
  679.         end
  680.         charge:Stop()
  681.         if gotsomeone then
  682.             wait(2)
  683.         end
  684.         gotsomeone = false
  685.         canattack = true
  686.         cananimate = true
  687.     end
  688. end)
  689. end)()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement