Advertisement
Awooslayer699

PPPUUUUUUNCH

Dec 5th, 2019
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --By Rufus14
  2. --Converted with ttyyuu12345's model to script plugin v4
  3. function sandbox(var,func)
  4.     local env = getfenv(func)
  5.     local newenv = setmetatable({},{
  6.         __index = function(self,k)
  7.             if k=="script" then
  8.                 return var
  9.             else
  10.                 return env[k]
  11.             end
  12.         end,
  13.     })
  14.     setfenv(func,newenv)
  15.     return func
  16. end
  17. cors = {}
  18. mas = Instance.new("Model",game:GetService("Lighting"))
  19. Tool0 = Instance.new("Tool")
  20. Script1 = Instance.new("Script")
  21. Sound2 = Instance.new("Sound")
  22. Sound3 = Instance.new("Sound")
  23. Sound4 = Instance.new("Sound")
  24. Sound5 = Instance.new("Sound")
  25. Sound6 = Instance.new("Sound")
  26. Sound7 = Instance.new("Sound")
  27. Tool0.Name = "Combat"
  28. Tool0.Parent = mas
  29. Tool0.CanBeDropped = false
  30. Tool0.Grip = CFrame.new(0, 0, -1.70000005, 0, 0, 1, 1, 0, 0, 0, 1, 0)
  31. Tool0.GripForward = Vector3.new(-1, -0, -0)
  32. Tool0.GripPos = Vector3.new(0, 0, -1.70000005)
  33. Tool0.GripRight = Vector3.new(0, 1, 0)
  34. Tool0.GripUp = Vector3.new(0, 0, 1)
  35. Tool0.RequiresHandle = false
  36. Tool0.ToolTip = "Hold left mouse button to block."
  37. Script1.Parent = Tool0
  38. table.insert(cors,sandbox(Script1,function()
  39. --By Rufus14
  40. canattack = true
  41. cananimate = false
  42. equipped = false
  43. tool = script.Parent
  44. swishsound = script.Swoosh
  45. blocksound = script.Block
  46. punchsound = script.Punch
  47. kicksound = script.Kick
  48. goresound = script.Ouch
  49. basssound = script.Bass
  50. owner = nil
  51. character = nil
  52. mouseclick = false
  53. attacknumber = 1
  54. instancewhitelist = {}
  55. runservice = game:GetService("RunService")
  56. --
  57. tool.Activated:connect(function()
  58.     mouseclick = true
  59. end)
  60. tool.Deactivated:connect(function()
  61.     mouseclick = false
  62. end)
  63. --
  64. function ragdollkill(character)
  65.     local victimshumanoid = character:findFirstChildOfClass("Humanoid")
  66.     local checkragd = character:findFirstChild("ragded")
  67.     if not checkragd then
  68.         local boolvalue = Instance.new("BoolValue", character)
  69.         boolvalue.Name = "ragded"
  70.         if not character:findFirstChild("UpperTorso") then
  71.             character.Archivable = true
  72.             for i,v in pairs(character:GetChildren()) do
  73.                 if v.ClassName == "Sound" then
  74.                     v:remove()
  75.                 end
  76.                 for q,w in pairs(v:GetChildren()) do
  77.                     if w.ClassName == "Sound" then
  78.                         w:remove()
  79.                     end
  80.                 end
  81.             end
  82.             local ragdoll = character:Clone()
  83.             for i,v in pairs(ragdoll:GetDescendants()) do
  84.                 if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
  85.                     v:destroy()
  86.                 end
  87.             end
  88.             ragdoll:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
  89.             ragdoll:findFirstChildOfClass("Humanoid").Health = 0
  90.             if ragdoll:findFirstChild("Health") then
  91.                 if ragdoll:findFirstChild("Health").ClassName == "Script" then
  92.                     ragdoll:findFirstChild("Health").Disabled = true
  93.                 end
  94.             end
  95.             for i,v in pairs(character:GetChildren()) do
  96.                 if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" then
  97.                     v:destroy()
  98.                 end
  99.             end
  100.             for i,v in pairs(character:GetChildren()) do
  101.                 if v.ClassName == "Accessory" then
  102.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  103.                     if attachment1 then
  104.                         for q,w in pairs(character:GetChildren()) do
  105.                             if w.ClassName == "Part" then
  106.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  107.                                 if attachment2 then
  108.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  109.                                     hinge.Attachment0 = attachment1
  110.                                     hinge.Attachment1 = attachment2
  111.                                     hinge.LimitsEnabled = true
  112.                                     hinge.LowerAngle = 0
  113.                                     hinge.UpperAngle = 0
  114.                                 end
  115.                             end
  116.                         end
  117.                     end
  118.                 end
  119.             end
  120.             ragdoll.Parent = workspace
  121.             if ragdoll:findFirstChild("Right Arm") then
  122.                 local glue = Instance.new("Glue", ragdoll.Torso)
  123.                 glue.Part0 = ragdoll.Torso
  124.                 glue.Part1 = ragdoll:findFirstChild("Right Arm")
  125.                 glue.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  126.                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  127.                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Arm"))
  128.                 limbcollider.Size = Vector3.new(181.4,181,1)
  129.                 limbcollider.Shape = "Cylinder"
  130.                 limbcollider.Transparency = 1
  131.                 limbcollider.Name = "LimbCollider"
  132.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  133.                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Arm")
  134.                 limbcolliderweld.Part1 = limbcollider
  135.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  136.             end
  137.             if ragdoll:findFirstChild("Left Arm") then
  138.                 local glue = Instance.new("Glue", ragdoll.Torso)
  139.                 glue.Part0 = ragdoll.Torso
  140.                 glue.Part1 = ragdoll:findFirstChild("Left Arm")
  141.                 glue.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  142.                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  143.                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Arm"))
  144.                 limbcollider.Size = Vector3.new(181.4,181,1)
  145.                 limbcollider.Shape = "Cylinder"
  146.                 limbcollider.Name = "LimbCollider"
  147.                 limbcollider.Transparency = 1
  148.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  149.                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Arm")
  150.                 limbcolliderweld.Part1 = limbcollider
  151.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  152.             end
  153.             if ragdoll:findFirstChild("Left Leg") then
  154.                 local glue = Instance.new("Glue", ragdoll.Torso)
  155.                 glue.Part0 = ragdoll.Torso
  156.                 glue.Part1 = ragdoll:findFirstChild("Left Leg")
  157.                 glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  158.                 glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  159.                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Leg"))
  160.                 limbcollider.Size = Vector3.new(181.4,181,1)
  161.                 limbcollider.Shape = "Cylinder"
  162.                 limbcollider.Name = "LimbCollider"
  163.                 limbcollider.Transparency = 1
  164.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  165.                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Leg")
  166.                 limbcolliderweld.Part1 = limbcollider
  167.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  168.             end
  169.             if ragdoll:findFirstChild("Right Leg") then
  170.                 local glue = Instance.new("Glue", ragdoll.Torso)
  171.                 glue.Part0 = ragdoll.Torso
  172.                 glue.Part1 = ragdoll:findFirstChild("Right Leg")
  173.                 glue.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  174.                 glue.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  175.                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Leg"))
  176.                 limbcollider.Size = Vector3.new(18.4,18,1)
  177.                 limbcollider.Shape = "Cylinder"
  178.                 limbcollider.Name = "LimbCollider"
  179.                 limbcollider.Transparency = 1
  180.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  181.                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Leg")
  182.                 limbcolliderweld.Part1 = limbcollider
  183.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  184.             end
  185.             if ragdoll:findFirstChild("Head") and ragdoll.Torso:findFirstChild("NeckAttachment") then
  186.                 local HeadAttachment = Instance.new("Attachment", ragdoll["Head"])
  187.                 HeadAttachment.Position = Vector3.new(0, -0.5, 0)
  188.                 local connection = Instance.new('HingeConstraint', ragdoll["Head"])
  189.                 connection.LimitsEnabled = true
  190.                 connection.Attachment0 = ragdoll.Torso.NeckAttachment
  191.                 connection.Attachment1 = HeadAttachment
  192.                 connection.UpperAngle = 60
  193.                 connection.LowerAngle = -60
  194.             elseif ragdoll:findFirstChild("Head") and not ragdoll.Torso:findFirstChild("NeckAttachment") then
  195.                 local hedweld = Instance.new("Weld", ragdoll.Torso)
  196.                 hedweld.Part0 = ragdoll.Torso
  197.                 hedweld.Part1 = ragdoll.Head
  198.                 hedweld.C0 = CFrame.new(0,1.5,0)
  199.             end
  200.             game.Debris:AddItem(ragdoll, 30)
  201.             local function aaaalol()
  202.                 wait(0.2)
  203.                 local function searchforvelocity(wot)
  204.                     for i,v in pairs(wot:GetChildren()) do
  205.                         searchforvelocity(v)
  206.                         if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
  207.                             v:destroy()
  208.                         end
  209.                     end
  210.                 end
  211.                 searchforvelocity(ragdoll)
  212.                 wait(0.5)
  213.                 if ragdoll:findFirstChildOfClass("Humanoid") then
  214.                     ragdoll:findFirstChildOfClass("Humanoid").PlatformStand = true
  215.                 end
  216.                 if ragdoll:findFirstChild("HumanoidRootPart") then
  217.                     ragdoll:findFirstChild("HumanoidRootPart"):destroy()
  218.                 end
  219.             end
  220.             spawn(aaaalol)
  221.         elseif character:findFirstChild("UpperTorso") then
  222.             character.Archivable = true
  223.             for i,v in pairs(character:GetChildren()) do
  224.                 if v.ClassName == "Sound" then
  225.                     v:remove()
  226.                 end
  227.                 for q,w in pairs(v:GetChildren()) do
  228.                     if w.ClassName == "Sound" then
  229.                         w:remove()
  230.                     end
  231.                 end
  232.             end
  233.             local ragdoll = character:Clone()
  234.             ragdoll:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
  235.             for i,v in pairs(ragdoll:GetDescendants()) do
  236.                 if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
  237.                     v:destroy()
  238.                 end
  239.             end
  240.             ragdoll:BreakJoints()
  241.             ragdoll:findFirstChildOfClass("Humanoid").Health = 0
  242.             if ragdoll:findFirstChild("Health") then
  243.                 if ragdoll:findFirstChild("Health").ClassName == "Script" then
  244.                     ragdoll:findFirstChild("Health").Disabled = true
  245.                 end
  246.             end
  247.             for i,v in pairs(character:GetChildren()) do
  248.                 if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" or v.ClassName == "MeshPart" then
  249.                     v:destroy()
  250.                 end
  251.             end
  252.             for i,v in pairs(character:GetChildren()) do
  253.                 if v.ClassName == "Accessory" then
  254.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  255.                     if attachment1 then
  256.                         for q,w in pairs(character:GetChildren()) do
  257.                             if w.ClassName == "Part" or w.ClassName == "MeshPart" then
  258.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  259.                                 if attachment2 then
  260.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  261.                                     hinge.Attachment0 = attachment1
  262.                                     hinge.Attachment1 = attachment2
  263.                                     hinge.LimitsEnabled = true
  264.                                     hinge.LowerAngle = 0
  265.                                     hinge.UpperAngle = 0
  266.                                 end
  267.                             end
  268.                         end
  269.                     end
  270.                 end
  271.             end
  272.             ragdoll.Parent = workspace
  273.             local Humanoid = ragdoll:findFirstChildOfClass("Humanoid")
  274.             Humanoid.PlatformStand = true
  275.             local function makeballconnections(limb, attachementone, attachmenttwo, twistlower, twistupper)
  276.                 local connection = Instance.new('BallSocketConstraint', limb)
  277.                 connection.LimitsEnabled = true
  278.                 connection.Attachment0 = attachementone
  279.                 connection.Attachment1 = attachmenttwo
  280.                 connection.TwistLimitsEnabled = true
  281.                 connection.TwistLowerAngle = twistlower
  282.                 connection.TwistUpperAngle = twistupper
  283.                 local limbcollider = Instance.new("Part", limb)
  284.                 limbcollider.Size = Vector3.new(181.1,181,1)
  285.                 limbcollider.Shape = "Cylinder"
  286.                 limbcollider.Transparency = 1
  287.                 limbcollider:BreakJoints()
  288.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  289.                 limbcolliderweld.Part0 = limb
  290.                 limbcolliderweld.Part1 = limbcollider
  291.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
  292.             end
  293.             local function makehingeconnections(limb, attachementone, attachmenttwo, lower, upper)
  294.                 local connection = Instance.new('HingeConstraint', limb)
  295.                 connection.LimitsEnabled = true
  296.                 connection.Attachment0 = attachementone
  297.                 connection.Attachment1 = attachmenttwo
  298.                 connection.LimitsEnabled = true
  299.                 connection.LowerAngle = lower
  300.                 connection.UpperAngle = upper
  301.                 local limbcollider = Instance.new("Part", limb)
  302.                 limbcollider.Size = Vector3.new(181.1,181,1)
  303.                 limbcollider.Shape = "Cylinder"
  304.                 limbcollider.Transparency = 1
  305.                 limbcollider:BreakJoints()
  306.                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  307.                 limbcolliderweld.Part0 = limb
  308.                 limbcolliderweld.Part1 = limbcollider
  309.                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
  310.             end
  311.             local HeadAttachment = Instance.new("Attachment", Humanoid.Parent.Head)
  312.             HeadAttachment.Position = Vector3.new(0, -0.5, 0)
  313.             if ragdoll.UpperTorso:findFirstChild("NeckAttachment") then
  314.                 makehingeconnections(Humanoid.Parent.Head, HeadAttachment, ragdoll.UpperTorso.NeckAttachment, -50, 50)
  315.             end
  316.             makehingeconnections(Humanoid.Parent.LowerTorso, Humanoid.Parent.LowerTorso.WaistRigAttachment, Humanoid.Parent.UpperTorso.WaistRigAttachment, -50, 50)
  317.             makeballconnections(Humanoid.Parent.LeftUpperArm, Humanoid.Parent.LeftUpperArm.LeftShoulderRigAttachment, Humanoid.Parent.UpperTorso.LeftShoulderRigAttachment, -200, 200, 180)
  318.             makehingeconnections(Humanoid.Parent.LeftLowerArm, Humanoid.Parent.LeftLowerArm.LeftElbowRigAttachment, Humanoid.Parent.LeftUpperArm.LeftElbowRigAttachment, 0, -60)
  319.             makehingeconnections(Humanoid.Parent.LeftHand, Humanoid.Parent.LeftHand.LeftWristRigAttachment, Humanoid.Parent.LeftLowerArm.LeftWristRigAttachment, -20, 20)
  320.             --
  321.             makeballconnections(Humanoid.Parent.RightUpperArm, Humanoid.Parent.RightUpperArm.RightShoulderRigAttachment, Humanoid.Parent.UpperTorso.RightShoulderRigAttachment, -200, 200, 180)
  322.             makehingeconnections(Humanoid.Parent.RightLowerArm, Humanoid.Parent.RightLowerArm.RightElbowRigAttachment, Humanoid.Parent.RightUpperArm.RightElbowRigAttachment, 0, -60)
  323.             makehingeconnections(Humanoid.Parent.RightHand, Humanoid.Parent.RightHand.RightWristRigAttachment, Humanoid.Parent.RightLowerArm.RightWristRigAttachment, -20, 20)
  324.             --
  325.             makeballconnections(Humanoid.Parent.RightUpperLeg, Humanoid.Parent.RightUpperLeg.RightHipRigAttachment, Humanoid.Parent.LowerTorso.RightHipRigAttachment, -80, 80, 80)
  326.             makehingeconnections(Humanoid.Parent.RightLowerLeg, Humanoid.Parent.RightLowerLeg.RightKneeRigAttachment, Humanoid.Parent.RightUpperLeg.RightKneeRigAttachment, 0, 60)
  327.             makehingeconnections(Humanoid.Parent.RightFoot, Humanoid.Parent.RightFoot.RightAnkleRigAttachment, Humanoid.Parent.RightLowerLeg.RightAnkleRigAttachment, -20, 20)
  328.             --
  329.             makeballconnections(Humanoid.Parent.LeftUpperLeg, Humanoid.Parent.LeftUpperLeg.LeftHipRigAttachment, Humanoid.Parent.LowerTorso.LeftHipRigAttachment, -80, 80, 80)
  330.             makehingeconnections(Humanoid.Parent.LeftLowerLeg, Humanoid.Parent.LeftLowerLeg.LeftKneeRigAttachment, Humanoid.Parent.LeftUpperLeg.LeftKneeRigAttachment, 0, 60)
  331.             makehingeconnections(Humanoid.Parent.LeftFoot, Humanoid.Parent.LeftFoot.LeftAnkleRigAttachment, Humanoid.Parent.LeftLowerLeg.LeftAnkleRigAttachment, -20, 20)
  332.             for i,v in pairs(Humanoid.Parent:GetChildren()) do
  333.                 if v.ClassName == "Accessory" then
  334.                     local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
  335.                     if attachment1 then
  336.                         for q,w in pairs(Humanoid.Parent:GetChildren()) do
  337.                             if w.ClassName == "Part" then
  338.                                 local attachment2 = w:findFirstChild(attachment1.Name)
  339.                                 if attachment2 then
  340.                                     local hinge = Instance.new("HingeConstraint", v.Handle)
  341.                                     hinge.Attachment0 = attachment1
  342.                                     hinge.Attachment1 = attachment2
  343.                                     hinge.LimitsEnabled = true
  344.                                     hinge.LowerAngle = 0
  345.                                     hinge.UpperAngle = 0
  346.                                 end
  347.                             end
  348.                         end
  349.                     end
  350.                 end
  351.             end
  352.             for i,v in pairs(ragdoll:GetChildren()) do
  353.                 for q,w in pairs(v:GetChildren()) do
  354.                     if w.ClassName == "Motor6D"--[[ and w.Name ~= "Neck"--]] and w.Name ~= "ouch_weld" then
  355.                         w:destroy()
  356.                     end
  357.                 end
  358.             end
  359.             if ragdoll:findFirstChild("HumanoidRootPart") then
  360.                 ragdoll.HumanoidRootPart:destroy()
  361.             end
  362.             if ragdoll:findFirstChildOfClass("Humanoid") then
  363.                 ragdoll:findFirstChildOfClass("Humanoid").PlatformStand = true
  364.             end
  365.             local function waitfordatmoment()
  366.                 wait(0.2)
  367.                 local function searchforvelocity(wot)
  368.                     for i,v in pairs(wot:GetChildren()) do
  369.                         searchforvelocity(v)
  370.                         if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
  371.                             v:destroy()
  372.                         end
  373.                     end
  374.                 end
  375.                 searchforvelocity(ragdoll)
  376.             end
  377.             spawn(waitfordatmoment)
  378.             game.Debris:AddItem(ragdoll, 30)
  379.         end
  380.     end
  381. end
  382. function damage(what, action, t, range)
  383.     for i,v in pairs(workspace:GetDescendants()) do
  384.         if v.ClassName == "Model" then
  385.             local head = v:findFirstChild("Head")
  386.             local humanoid = v:findFirstChildOfClass("Humanoid")
  387.             local torso = v:findFirstChild("Torso")
  388.             local ragdolled = v:findFirstChild("ragdolledpunch")
  389.             if humanoid and head and not ragdolled then
  390.                 if (head.Position - what.Position).magnitude < range and v ~= character and humanoid.Health > 0 then
  391.                     local ragdolledpunch = Instance.new("BoolValue", v)
  392.                     ragdolledpunch.Name = "ragdolledpunch"
  393.                     game.Debris:AddItem(ragdolledpunch, t)
  394.                     if action ~= "blocked" then
  395.                         local dmg = math.random(50,90)
  396.                         if action == "uppercut" then
  397.                             dmg = dmg + math.random(50,90)
  398.                         elseif action == "kick" then
  399.                             dmg = dmg + math.random(40,50)
  400.                         end
  401.                         if humanoid.Health <= dmg then
  402.                             humanoid.Health = 0
  403.                             ragdollkill(v)
  404.                         end
  405.                         humanoid.Health = humanoid.Health - dmg
  406.                     end
  407.                     if action == "punch" then
  408.                         local velocity = Instance.new("BodyVelocity", head)
  409.                         velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
  410.                         velocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * math.random(5,15)
  411.                         punchsound.PlaybackSpeed = 1+(math.random(-5,5)/15)
  412.                         punchsound:Play()
  413.                         game.Debris:AddItem(velocity, 0.2)
  414.                     elseif action == "uppercut" then
  415.                         local velocity = Instance.new("BodyVelocity", head)
  416.                         velocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  417.                         velocity.Velocity = (character.HumanoidRootPart.CFrame.upVector * math.random(5,15)) + (character.HumanoidRootPart.CFrame.lookVector * math.random(5,15))
  418.                         kicksound.PlaybackSpeed = 1+(math.random(-5,5)/15)
  419.                         kicksound:Play()
  420.                         game.Debris:AddItem(velocity, 0.2)
  421.                     elseif action == "kick" then
  422.                         local velocity = Instance.new("BodyVelocity", head)
  423.                         velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
  424.                         velocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * 30
  425.                         goresound.PlaybackSpeed = 1+(math.random(-5,5)/15)
  426.                         goresound:Play()
  427.                         game.Debris:AddItem(velocity, 0.2)
  428.                     end
  429.                     if action ~= "blocked" and action ~= "uppercut" and action ~= "kick" then
  430.                         if math.random(1,4) ~= 1 then
  431.                             return
  432.                         end
  433.                     end
  434.                     humanoid.PlatformStand = true
  435.                     coroutine.wrap(function()
  436.                         wait(t)
  437.                         humanoid.PlatformStand = false
  438.                     end)()
  439.                     if torso then
  440.                         coroutine.wrap(function()
  441.                             humanoid = v:WaitForChild("Humanoid")
  442.                             local ragdoll = v
  443.                             if ragdoll:findFirstChild("Right Arm") then
  444.                                 local glue = Instance.new("Glue", ragdoll.Torso)
  445.                                 glue.Part0 = ragdoll.Torso
  446.                                 glue.Part1 = ragdoll:findFirstChild("Right Arm")
  447.                                 glue.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  448.                                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  449.                                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Arm"))
  450.                                 limbcollider.Size = Vector3.new(181.4,181,1)
  451.                                 limbcollider.Shape = "Cylinder"
  452.                                 limbcollider.Transparency = 1
  453.                                 limbcollider.Name = "LimbCollider"
  454.                                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  455.                                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Arm")
  456.                                 limbcolliderweld.Part1 = limbcollider
  457.                                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  458.                                 coroutine.wrap(function()
  459.                                     if ragdoll.Torso:findFirstChild("Right Shoulder") then
  460.                                         local limbclone = ragdoll.Torso:findFirstChild("Right Shoulder"):Clone()
  461.                                         ragdoll.Torso:findFirstChild("Right Shoulder"):destroy()
  462.                                         coroutine.wrap(function()
  463.                                             wait(t)
  464.                                             limbclone.Parent = ragdoll.Torso
  465.                                             limbclone.Part0 = ragdoll.Torso
  466.                                             limbclone.Part1 = ragdoll["Right Arm"]
  467.                                         end)()
  468.                                     end
  469.                                     wait(t)
  470.                                     glue:destroy()
  471.                                     limbcollider:destroy()
  472.                                     limbcolliderweld:destroy()
  473.                                 end)()
  474.                             end
  475.                             if ragdoll:findFirstChild("Left Arm") then
  476.                                 local glue = Instance.new("Glue", ragdoll.Torso)
  477.                                 glue.Part0 = ragdoll.Torso
  478.                                 glue.Part1 = ragdoll:findFirstChild("Left Arm")
  479.                                 glue.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  480.                                 glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  481.                                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Arm"))
  482.                                 limbcollider.Size = Vector3.new(181.4,181,1)
  483.                                 limbcollider.Shape = "Cylinder"
  484.                                 limbcollider.Name = "LimbCollider"
  485.                                 limbcollider.Transparency = 1
  486.                                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  487.                                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Arm")        
  488.                                 limbcolliderweld.Part1 = limbcollider
  489.                                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
  490.                                 coroutine.wrap(function()
  491.                                     if ragdoll.Torso:findFirstChild("Left Shoulder") then
  492.                                         local limbclone = ragdoll.Torso:findFirstChild("Left Shoulder"):Clone()
  493.                                         ragdoll.Torso:findFirstChild("Left Shoulder"):destroy()
  494.                                         coroutine.wrap(function()
  495.                                             wait(t)
  496.                                             limbclone.Parent = ragdoll.Torso
  497.                                             limbclone.Part0 = ragdoll.Torso
  498.                                             limbclone.Part1 = ragdoll["Left Arm"]
  499.                                         end)()
  500.                                     end
  501.                                     wait(t)
  502.                                     glue:destroy()
  503.                                     limbcollider:destroy()
  504.                                     limbcolliderweld:destroy()
  505.                                 end)()
  506.                             end
  507.                             if ragdoll:findFirstChild("Left Leg") then
  508.                                 local glue = Instance.new("Glue", ragdoll.Torso)
  509.                                 glue.Part0 = ragdoll.Torso
  510.                                 glue.Part1 = ragdoll:findFirstChild("Left Leg")
  511.                                 glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  512.                                 glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  513.                                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Leg"))
  514.                                 limbcollider.Size = Vector3.new(181.5,181,1)
  515.                                 limbcollider.Shape = "Cylinder"
  516.                                 limbcollider.Name = "LimbCollider"
  517.                                 limbcollider.Transparency = 1
  518.                                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  519.                                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Leg")
  520.                                 limbcolliderweld.Part1 = limbcollider
  521.                                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.2,0,0)
  522.                                 coroutine.wrap(function()
  523.                                     if ragdoll.Torso:findFirstChild("Left Hip") then
  524.                                         local limbclone = ragdoll.Torso:findFirstChild("Left Hip"):Clone()
  525.                                         ragdoll.Torso:findFirstChild("Left Hip"):destroy()
  526.                                         coroutine.wrap(function()
  527.                                             wait(t)
  528.                                             limbclone.Parent = ragdoll.Torso
  529.                                             limbclone.Part0 = ragdoll.Torso
  530.                                             limbclone.Part1 = ragdoll["Left Leg"]
  531.                                         end)()
  532.                                     end
  533.                                     wait(t)
  534.                                     glue:destroy()
  535.                                     limbcollider:destroy()
  536.                                     limbcolliderweld:destroy()
  537.                                 end)()
  538.                             end
  539.                             if ragdoll:findFirstChild("Right Leg") then
  540.                                 local glue = Instance.new("Glue", ragdoll.Torso)
  541.                                 glue.Part0 = ragdoll.Torso
  542.                                 glue.Part1 = ragdoll:findFirstChild("Right Leg")
  543.                                 glue.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  544.                                 glue.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  545.                                 local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Leg"))
  546.                                 limbcollider.Size = Vector3.new(181.5,181,1)
  547.                                 limbcollider.Shape = "Cylinder"
  548.                                 limbcollider.Name = "LimbCollider"
  549.                                 limbcollider.Transparency = 1
  550.                                 local limbcolliderweld = Instance.new("Weld", limbcollider)
  551.                                 limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Leg")
  552.                                 limbcolliderweld.Part1 = limbcollider
  553.                                 limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.2,0,0)
  554.                                 coroutine.wrap(function()
  555.                                     if ragdoll.Torso:findFirstChild("Right Hip") then
  556.                                         local limbclone = ragdoll.Torso:findFirstChild("Right Hip"):Clone()
  557.                                         ragdoll.Torso:findFirstChild("Right Hip"):destroy()
  558.                                         coroutine.wrap(function()
  559.                                             wait(t)
  560.                                             limbclone.Parent = ragdoll.Torso
  561.                                             limbclone.Part0 = ragdoll.Torso
  562.                                             limbclone.Part1 = ragdoll["Right Leg"]
  563.                                         end)()
  564.                                     end
  565.                                     wait(t)
  566.                                     glue:destroy()
  567.                                     limbcollider:destroy()
  568.                                     limbcolliderweld:destroy()
  569.                                 end)()
  570.                             end
  571.                         end)()
  572.                     end
  573.                 end
  574.             end
  575.         end
  576.     end
  577. end
  578. --
  579. tool.Activated:connect(function()
  580.     if owner ~= nil and character ~= nil and canattack then
  581.         canattack = false
  582.         cananimate = false
  583.         local rightarmweld = character.Torso:findFirstChild("RightArmWeldpunch")
  584.         local leftarmweld = character.Torso:findFirstChild("LeftArmWeldpunch")
  585.         local headweld = character.Torso:findFirstChild("HeadWeldpunch")
  586.         local rootweld = character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch")
  587.         if attacknumber == 1 then
  588.             local sine = 0
  589.             local tiltval = 0
  590.             for i = 1,20 do --17 and sine 3
  591.                 sine = sine + 1
  592.                 damage(character["Right Arm"], "punch", 1, 2)
  593.                 headweld.C0 = headweld.C0:lerp(CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0,math.sin(sine/3.25),0),0.3)
  594.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.pi/2,0,-math.sin(sine/3.25)*2) * CFrame.new(0,-0.5,0),0.3)
  595.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.pi/2,0,(-math.sin(sine/3.25)*1.5)-math.rad(10)+(math.cos(sine/11.25))) * CFrame.new(0,-0.5,0),0.3)
  596.                 if i == 3 then
  597.                     swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
  598.                     swishsound:Play()
  599.                 end
  600.                 if i > 10 then
  601.                     if i < 17 then
  602.                         tiltval = tiltval + 0.048
  603.                     end
  604.                     rightarmweld.C0 = rightarmweld.C0 * CFrame.new(-tiltval/2,0,0) * CFrame.fromEulerAnglesXYZ(0,0,-tiltval)
  605.                 end
  606.                 rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ(math.sin(sine/3.25)/8,-math.sin(sine/3.25)*2.3,0), 0.3)
  607.                 runservice.Stepped:wait()
  608.             end
  609.             attacknumber = 2
  610.         elseif attacknumber == 2 then
  611.             local sine = 0
  612.             local tiltval = 0
  613.             for i = 1,20 do --17 and sine 3
  614.                 sine = sine + 1
  615.                 damage(character["Left Arm"], "punch", 1, 2)
  616.                 headweld.C0 = headweld.C0:lerp(CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0,-math.sin(sine/3.25),0),0.3)
  617.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.pi/2,0,(math.sin(sine/3.25)*1.5)+math.rad(10)-(math.cos(sine/11.25))) * CFrame.new(0,-0.5,0),0.3)
  618.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.5,0.5,0) * CFrame.fromEulerAnglesXYZ(math.pi/2,0,math.sin(sine/3.25)*2) * CFrame.new(0,-0.5,0),0.3)
  619.                 if i == 3 then
  620.                     swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
  621.                     swishsound:Play()
  622.                 end
  623.                 if i > 10 then
  624.                     if i < 17 then
  625.                         tiltval = tiltval + 0.048
  626.                     end
  627.                     leftarmweld.C0 = leftarmweld.C0 * CFrame.new(tiltval/2,0,0) * CFrame.fromEulerAnglesXYZ(0,0,tiltval)
  628.                 end
  629.                 rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ(math.sin(sine/3.25)/8,math.sin(sine/3.25)*2.3,0), 0.3)
  630.                 runservice.Stepped:wait()
  631.             end
  632.             attacknumber = 3
  633.         elseif attacknumber == 3 then
  634.             for i = 0,1 , 0.06 do
  635.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.52833557, 0.510312557, 0.469846129, 0.939692497, -0.116977774, -0.321393788, 0.342020124, 0.321393818, 0.88302213, 1.49011612e-08, -0.939692616, 0.342020124),i)
  636.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.64085674, 0.307911873, -0.228921652, 0.939692557, 0.342020094, 0, -0.219846308, 0.604022801, -0.766044378, -0.262002587, 0.719846249, 0.642787576),i)
  637.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.98480773, 0, -0.173648179, 0.0593911819, 0.939692616, 0.336824119, 0.163175911, -0.342020184, 0.925416529),i)
  638.                 headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.49240446, 0.0868239403, 0.999999881, -1.86264515e-09, 0, 3.7252903e-09, 0.984807789, -0.17364797, 0, 0.17364794, 0.98480773),i)
  639.                 runservice.Stepped:wait()
  640.             end
  641.             swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
  642.             swishsound:Play()
  643.             for i = 0.35,0.65 , 0.1 do
  644.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.64085674, 0.201164246, 2.38418579e-07, 0.939692497, -0.342020154, 2.7474016e-08, 0.342020005, 0.939692378, -8.94069672e-08, -1.49011612e-08, 1.1920929e-07, 0.999999762) * CFrame.fromEulerAnglesXYZ(0.2,0,0),i)
  645.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.60084724, 0.132367611, 0.0618722439, 0.939692557, 0.262002587, 0.219846293, -0.219846219, 0.955111742, -0.198565692, -0.262002587, 0.138258308, 0.955111921),i)
  646.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0.0180921555, -0.590343475, 0.105676413, 0.999541819, -0.0301466491, -0.00267778337, 0.0292237774, 0.938346207, 0.344459206, -0.0078715831, -0.344379693, 0.938797355),i)
  647.                 headweld.C0 = headweld.C0:lerp(CFrame.new(9.53674316e-07, 1.49240351, 0.0868239403, 0.999999881, 2.32830644e-09, 2.09547579e-08, -2.09547579e-09, 0.984807611, -0.173648, 2.14204192e-08, 0.173647881, 0.984807551),i)
  648.                 runservice.Stepped:wait()
  649.             end
  650.             for i = 0,1 , 0.1 do
  651.                 damage(character["Right Arm"], "uppercut", 1.5, 2)
  652.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.50000012, 1.00000048, -9.53674316e-07, 0.999999881, -1.1920929e-07, 9.12696123e-08, 1.1920929e-07, -0.999999702, -8.80099833e-08, -5.21540642e-08, 6.0768798e-08, -0.999999523),i)
  653.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.68977165, 0.475360394, 0.153648376, 0.682796299, 0.696747243, 0.219846189, -0.667948365, 0.717228174, -0.198565692, -0.296030015, -0.0112660835, 0.955111802),i)
  654.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.00488264859, 0.0593911037, 0.998222649, -0.184096873, 0.981225967, -0.0574793406, -0.98289597, -0.183489174, 0.0157247484),i)
  655.                 headweld.C0 = headweld.C0:lerp(CFrame.new(-0.0558092594, 1.49647284, 0.0200033188, 0.63302207, -0.11161878, -0.766044497, 0.0400089845, 0.992945373, -0.111618832, 0.773098826, 0.0400085226, 0.633021951),i)
  656.                 runservice.Stepped:wait()
  657.             end
  658.             attacknumber = 4
  659.         elseif attacknumber == 4 then
  660.             local rightlegweld = Instance.new("Weld", character.Torso)
  661.             rightlegweld.Part0 = character.Torso
  662.             rightlegweld.Part1 = character["Right Leg"]
  663.             rightlegweld.C0 = CFrame.new(0.5,-2,0)
  664.             rightlegweld.Name = "RightLegWeldpunch"
  665.             local leftlegweld = Instance.new("Weld", character.Torso)
  666.             leftlegweld.Part0 = character.Torso
  667.             leftlegweld.Part1 = character["Left Leg"]
  668.             leftlegweld.C0 = CFrame.new(-0.5,-2,0)
  669.             leftlegweld.Name = "LeftLegWeldpunch"
  670.             character:findFirstChildOfClass("Humanoid").WalkSpeed = character:findFirstChildOfClass("Humanoid").WalkSpeed - 10
  671.             for i = 0,1 , 0.06 do
  672.                 rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.500000954, -1.86602545, -0.499999046, 1, -1.49011665e-08, 2.98023224e-08, -2.98023224e-08, 0.866025329, -0.5, 2.98023224e-08, 0.5, 0.866025448),i)
  673.                 leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5, -0.999999523, 1, 1, -2.98023224e-08, -4.47034836e-08, -2.98023224e-08, -5.96046448e-08, 0.999999881, 2.98023224e-08, -1, -1.78813934e-07),i)
  674.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.50000095, 0.250000477, 0.433013439, 1, -5.96046448e-08, -1.09083995e-08, -2.98023224e-08, 0.5, 0.866025388, 2.98023224e-08, -0.866025567, 0.49999997),i)
  675.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.49999905, 0.75, -0.433012009, 1, 5.96046448e-08, 3.99276701e-09, -4.47034836e-08, -0.50000006, -0.866025388, 2.98023224e-08, 0.866025507, -0.50000006),i)
  676.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.866025329, -0.250000119, 0.433012873, 0, 0.866025388, 0.5, -0.500000179, -0.433012664, 0.74999994),i)
  677.                 headweld.C0 = headweld.C0:lerp(CFrame.new(-0.0434112549, 1.49240398, 0.0751919746, 0.866025329, -0.0868241489, -0.492404073, -4.47034836e-08, 0.98480767, -0.173648179, 0.500000179, 0.150383696, 0.852868497),i)
  678.                 runservice.Stepped:wait()
  679.             end
  680.             swishsound.PlaybackSpeed = 1+(math.random(-3,5)/12)
  681.             swishsound:Play()
  682.             for i = 0,1 , 0.15 do
  683.                 damage(character["Left Leg"], "kick", 1.5, 3.5)
  684.                 rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5, -1.93969274, 0.342020035, 1.00000024, -2.98023224e-08, 0, -1.49011612e-08, 0.939692557, 0.342019916, 0, -0.342019945, 0.939692676),i)
  685.                 leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.500000477, -0.826352119, -0.984807968, 1.00000024, 2.98023224e-08, 1.49011612e-08, -1.49011612e-08, -0.173648193, -0.984807611, 0, 0.98480767, -0.173648223),i)
  686.                 rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.50000095, 0.116978168, 0.321393967, 1.00000024, -1.49011612e-08, 2.98023224e-08, 2.98023224e-08, 0.766044378, 0.642787695, 0, -0.642787814, 0.766044557),i)
  687.                 leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.50000048, 0.116977692, 0.321393013, 1.00000024, -1.49011612e-08, 0, -1.49011612e-08, 0.766044438, 0.642787576, 0, -0.642787576, 0.766044497),i)
  688.                 rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.766044676, -0.111618795, -0.63302207, -1.68030141e-07, 0.98480773, -0.173648238, 0.642787516, 0.133022398, 0.754406631),i)
  689.                 headweld.C0 = headweld.C0:lerp(CFrame.new(-0.0525569916, 1.49498224, -0.0472278595, 0.663642108, -0.105113029, 0.74062866, -0.000909253955, 0.989964247, 0.141314477, -0.748049736, -0.0944556296, 0.656886339),i)
  690.                 runservice.Stepped:wait()
  691.             end
  692.             coroutine.wrap(function()
  693.                 for i = 0,1 ,0.07 do
  694.                     leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5,-2,0),i)
  695.                     rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5,-2,0),i)
  696.                     runservice.Stepped:wait()
  697.                 end
  698.                 leftlegweld:destroy()
  699.                 rightlegweld:destroy()
  700.                 character:findFirstChildOfClass("Humanoid").WalkSpeed = character:findFirstChildOfClass("Humanoid").WalkSpeed + 10
  701.             end)()
  702.             attacknumber = 1
  703.         end
  704.         if mouseclick then
  705.             coroutine.wrap(function()
  706.                 local humhp = character:findFirstChildOfClass("Humanoid").Health
  707.                 while runservice.Stepped:wait() and mouseclick do
  708.                     cananimate = false
  709.                     if character:findFirstChildOfClass("Humanoid").Health < humhp then
  710.                         character:findFirstChildOfClass("Humanoid").PlatformStand = false
  711.                         character:findFirstChildOfClass("Humanoid").Health = character:findFirstChildOfClass("Humanoid").Health + (humhp-character:findFirstChildOfClass("Humanoid").Health)
  712.                         basssound.TimePosition = 1.525
  713.                         blocksound:Play()
  714.                         basssound:Play()
  715.                         coroutine.wrap(function()
  716.                             local thehpp = character:findFirstChildOfClass("Humanoid").Health
  717.                             for i = 1,15 do
  718.                                 character:findFirstChildOfClass("Humanoid").Health = thehpp
  719.                                 runservice.Stepped:wait()
  720.                             end
  721.                         end)()
  722.                         local nearestdistance = math.huge
  723.                         local nearestplr = nil
  724.                         for i,v in pairs(workspace:GetDescendants()) do
  725.                             if v.ClassName == "Model" and v ~= character then
  726.                                 local headdw = v:findFirstChild("Head")
  727.                                 local humanoiddw = v:findFirstChildOfClass("Humanoid")
  728.                                 if humanoiddw and headdw then
  729.                                     if (headdw.Position - character.Head.Position).magnitude < 10 and (headdw.Position - character.Head.Position).magnitude < nearestdistance then
  730.                                         nearestdistance = (headdw.Position - character.Head.Position).magnitude
  731.                                         nearestplr = v
  732.                                     end
  733.                                 end
  734.                             end
  735.                         end
  736.                         if nearestplr ~= nil then
  737.                             character.Head.CFrame = CFrame.new(character.Head.Position, nearestplr.Head.Position)
  738.                             nearestplr.Head.CFrame = CFrame.new(nearestplr.Head.Position, character.Head.Position)
  739.                             local noon = Instance.new("BodyVelocity", nearestplr.Head)
  740.                             noon.MaxForce = Vector3.new(math.huge,0,math.huge)
  741.                             noon.Velocity = nearestplr.Head.CFrame.lookVector * -math.random(15,25)
  742.                             game.Debris:AddItem(noon, 0.2)
  743.                             damage(nearestplr.Head, "blocked", 3, 0.5)
  744.                         end
  745.                         local found = false
  746.                         for i,v in pairs(character:GetDescendants()) do
  747.                             if v.ClassName == "Part" then
  748.                                 v.Anchored = false
  749.                             end
  750.                             for q,w in pairs(instancewhitelist) do
  751.                                 if v == w then
  752.                                     found = true
  753.                                 end
  754.                             end
  755.                             if not found then
  756.                                 v:destroy()
  757.                             end
  758.                         end
  759.                         local velocity = Instance.new("BodyVelocity", character.Head)
  760.                         velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
  761.                         velocity.Velocity = character.Head.CFrame.lookVector * -math.random(5,10)
  762.                         game.Debris:AddItem(velocity, 0.2)
  763.                         break
  764.                     end
  765.                     rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 0.999663353, 0.0246764347, 0.00799234211, -0.0226141848, 0.980059326, -0.19741419, -0.0127044618, 0.197166979, 0.980287552) * CFrame.fromEulerAnglesXYZ(math.sin(tick())/20,0,0),0.3)
  766.                     leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-0.0263385773, 0.920211315, -1.15523124, 0.76604414, -0.642787278, 7.17118382e-08, -0.604022741, -0.719846249, -0.342020154, 0.219846427, 0.262002707, -0.939692557) * CFrame.new(0,math.cos(tick())/20,0),0.3)
  767.                     headweld.C0 = headweld.C0:lerp(CFrame.new(-9.53674316e-07, 1.49240446, -0.0868245959, 0.999999642, -1.33004505e-08, -1.58324838e-08, -1.51339918e-08, 0.98480773, 0.173648581, -1.3038516e-08, -0.1736487, 0.984807611) * CFrame.fromEulerAnglesXYZ(-math.sin(tick())/20,0,0),0.3)
  768.                     rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(0.0363903046, 0.923784733, -1.1914165, 0.721851647, 0.684478879, -0.102069058, 0.613821924, -0.701371074, -0.362355202, -0.319613039, 0.198914632, -0.926434338) * CFrame.new(0,math.cos(tick())/20,0),0.3)
  769.                     humhp = character:findFirstChildOfClass("Humanoid").Health
  770.                 end
  771.                 cananimate = true
  772.                 canattack = true
  773.             end)()
  774.         else
  775.             canattack = true
  776.             cananimate = true
  777.         end
  778.     end
  779. end)
  780. --
  781. tool.Equipped:connect(function()
  782.     equipped = true
  783.     owner = game:GetService("Players"):GetPlayerFromCharacter(tool.Parent)
  784.     character = owner.Character
  785.     local rightarm = Instance.new("Weld", character.Torso)
  786.     rightarm.Part0 = character.Torso
  787.     rightarm.Part1 = character["Right Arm"]
  788.     rightarm.C0 = CFrame.new(1.5,0,0)
  789.     rightarm.Name = "RightArmWeldpunch"
  790.     local leftarm = Instance.new("Weld", character.Torso)
  791.     leftarm.Part0 = character.Torso
  792.     leftarm.Part1 = character["Left Arm"]
  793.     leftarm.C0 = CFrame.new(-1.5,0,0)
  794.     leftarm.Name = "LeftArmWeldpunch"
  795.     local head = Instance.new("Weld", character.Torso)
  796.     head.Part0 = character.Torso
  797.     head.Part1 = character.Head
  798.     head.C0 = CFrame.new(0,1.5,0)
  799.     head.Name = "HeadWeldpunch"
  800.     local humanoidrootpart = Instance.new("Weld", character.HumanoidRootPart)
  801.     humanoidrootpart.Part0 = character.HumanoidRootPart
  802.     humanoidrootpart.Part1 = character.Torso
  803.     humanoidrootpart.Name = "HumanoidRootPartWeldpunch"
  804.     for i,v in pairs(script:GetChildren()) do
  805.         if v.ClassName == "Sound" then
  806.             v.Parent = character.HumanoidRootPart
  807.         end
  808.     end
  809.     for i,v in pairs(character:GetDescendants()) do
  810.         table.insert(instancewhitelist,i, v)
  811.     end
  812.     cananimate = true
  813.     local savedchar = character
  814.     local lasthp = character:findFirstChildOfClass("Humanoid").Health
  815.     coroutine.wrap(function()
  816.         local humhp = character:findFirstChildOfClass("Humanoid").Health
  817.         while runservice.Stepped:wait() and equipped do
  818.             if character:findFirstChildOfClass("Humanoid").Health < humhp then
  819.                 local thedamage = humhp - character:findFirstChildOfClass("Humanoid").Health
  820.                 character:findFirstChildOfClass("Humanoid").Health = character:findFirstChildOfClass("Humanoid").Health + thedamage/2.5
  821.             end
  822.             if cananimate then
  823.                 head.C0 = head.C0:lerp(CFrame.new(0,1.5,0),0.1)
  824.                 humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(),0.2)
  825.                 leftarm.C0 = leftarm.C0:lerp(CFrame.new(-0.8,0.15,-0.5) * CFrame.fromEulerAnglesXYZ(math.pi-(math.rad(20)),0,math.rad(15)) * CFrame.new(0,-0.5,0),0.2)
  826.                 rightarm.C0 = rightarm.C0:lerp(CFrame.new(0.8,0.15,-0.5) * CFrame.fromEulerAnglesXYZ(math.pi-(math.rad(20)),0,math.rad(-15)) * CFrame.new(0,-0.5,0),0.2)
  827.             end
  828.             humhp = character:findFirstChildOfClass("Humanoid").Health
  829.         end
  830.     end)()
  831. end)
  832. tool.Unequipped:connect(function()
  833.     equipped = false
  834.     instancewhitelist = {}
  835.     mouseclick = false
  836.     cananimate = false
  837.     for i,v in pairs(character.HumanoidRootPart:GetChildren()) do
  838.         if v.ClassName == "Sound" then
  839.             v.Parent = script
  840.         end
  841.     end
  842.     if character.Torso:findFirstChild("LeftArmWeldpunch") then
  843.         character.Torso:findFirstChild("LeftArmWeldpunch"):destroy()
  844.     end
  845.     if character.Torso:findFirstChild("RightArmWeldpunch") then
  846.         character.Torso:findFirstChild("RightArmWeldpunch"):destroy()
  847.     end
  848.     if character.Torso:findFirstChild("HeadWeldpunch") then
  849.         character.Torso:findFirstChild("HeadWeldpunch"):destroy()
  850.     end
  851.     if character:findFirstChild("HumanoidRootPart") then
  852.         if character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch") then
  853.             character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch"):destroy()
  854.         end
  855.     end
  856. end)
  857.  
  858. end))
  859. Sound2.Name = "Kick"
  860. Sound2.Parent = Script1
  861. Sound2.SoundId = "rbxassetid://542443306"
  862. Sound3.Name = "Swoosh"
  863. Sound3.Parent = Script1
  864. Sound3.SoundId = "rbxassetid://1489705211"
  865. Sound3.Volume = 0.69999998807907
  866. Sound4.Name = "Punch"
  867. Sound4.Parent = Script1
  868. Sound4.SoundId = "rbxassetid://3932505023"
  869. Sound5.Name = "Bass"
  870. Sound5.Parent = Script1
  871. Sound5.SoundId = "rbxassetid://2487714799"
  872. Sound5.Volume = 1
  873. Sound6.Name = "Ouch"
  874. Sound6.Parent = Script1
  875. Sound6.SoundId = "rbxassetid://4306991962"
  876. Sound7.Name = "Block"
  877. Sound7.Parent = Script1
  878. Sound7.SoundId = "rbxassetid://4306994664"
  879. for i,v in pairs(mas:GetChildren()) do
  880.     v.Parent = owner.Character
  881.     pcall(function() v:MakeJoints() end)
  882. end
  883. mas:Destroy()
  884. for i,v in pairs(cors) do
  885.     spawn(function()
  886.         pcall(v)
  887.     end)
  888. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement