View difference between Paste ID: kxAYTWAW and 7ukTrAdx
SHOW: | | - or go back to the newest paste.
1
--By Rufus14
2
--Converted with ttyyuu12345's model to script plugin v4
3
Tool0 = Instance.new("Tool")
4
Sound2 = Instance.new("Sound")
5
Sound3 = Instance.new("Sound")
6
Sound4 = Instance.new("Sound")
7
Sound5 = Instance.new("Sound")
8
Sound6 = Instance.new("Sound")
9
Sound7 = Instance.new("Sound")
10
Tool0.Name = "Combat"
11
Tool0.CanBeDropped = false
12
Tool0.Grip = CFrame.new(0, 0, -1.70000005, 0, 0, 1, 1, 0, 0, 0, 1, 0)
13
Tool0.GripForward = Vector3.new(-1, -0, -0)
14
Tool0.GripPos = Vector3.new(0, 0, -1.70000005)
15
Tool0.GripRight = Vector3.new(0, 1, 0)
16
Tool0.GripUp = Vector3.new(0, 0, 1)
17
Tool0.RequiresHandle = false
18
Tool0.ToolTip = "Hold left mouse button to block, jump and attack for a drop kick."
19
Sound2.Name = "Kick"
20
Sound2.Parent = script
21-
Sound2.SoundId = "rbxassetid://542443306"
21+
Sound2.SoundId = "rbxassetid://1869841622"
22
Sound3.Name = "Swoosh"
23
Sound3.Parent = script
24
Sound3.SoundId = "rbxassetid://1489705211"
25
Sound3.Volume = 0.69999998807907
26
Sound4.Name = "Punch"
27
Sound4.Parent = script
28-
Sound4.SoundId = "rbxassetid://3932505023"
28+
Sound4.SoundId = "rbxassetid://679798995"
29
Sound4.Volume = 20
30
Sound5.Name = "Bass"
31
Sound5.Parent = script
32
Sound5.SoundId = "rbxassetid://2487714799"
33
Sound5.Volume = 1
34
Sound6.Name = "Ouch"
35-
Sound6.SoundId = "rbxassetid://4306991962"
35+
36
Sound6.SoundId = "rbxassetid://1168269804"
37
Sound7.Name = "Block"
38
Sound7.Parent = script
39
Sound7.SoundId = "rbxassetid://4306994664"
40
Tool0.Parent = owner.Character
41
coroutine.wrap(function()
42
--By Rufus14
43
canattack = true
44
cananimate = false
45
equipped = false
46
tool = Tool0
47
swishsound = script.Swoosh
48
blocksound = script.Block
49
punchsound = script.Punch
50
kicksound = script.Kick
51
goresound = script.Ouch
52
basssound = script.Bass
53
owner = nil
54
character = nil
55
mouseclick = false
56
attacknumber = 1
57
instancewhitelist = {}
58
runservice = game:GetService("RunService")
59
--
60
tool.Activated:connect(function()
61
	mouseclick = true
62
end)
63
tool.Deactivated:connect(function()
64
	mouseclick = false
65
end)
66
--
67
function ragdollkill(character)
68
	local victimshumanoid = character:findFirstChildOfClass("Humanoid")
69
	local checkragd = character:findFirstChild("ragded")
70
	if not checkragd then
71
		local boolvalue = Instance.new("BoolValue", character)
72
		boolvalue.Name = "ragded"
73
		if not character:findFirstChild("UpperTorso") then
74
			character.Archivable = true
75
			for i,v in pairs(character:GetChildren()) do
76
				if v.ClassName == "Sound" then
77
					v:remove()
78
				end
79
				for q,w in pairs(v:GetChildren()) do
80
					if w.ClassName == "Sound" then
81
						w:remove()
82
					end
83
				end
84
			end
85
			local ragdoll = character:Clone()
86
			for i,v in pairs(ragdoll:GetDescendants()) do
87
				if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
88
					v:destroy()
89
				end
90
			end
91
			ragdoll:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
92
			ragdoll:findFirstChildOfClass("Humanoid").Health = 0
93
			if ragdoll:findFirstChild("Health") then
94
				if ragdoll:findFirstChild("Health").ClassName == "Script" then
95
					ragdoll:findFirstChild("Health").Disabled = true
96
				end
97
			end
98
			for i,v in pairs(character:GetChildren()) do
99
				if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" then
100
					v:destroy()
101
				end
102
			end
103
			for i,v in pairs(character:GetChildren()) do
104
				if v.ClassName == "Accessory" then
105
					local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
106
					if attachment1 then
107
						for q,w in pairs(character:GetChildren()) do
108
							if w.ClassName == "Part" then
109
								local attachment2 = w:findFirstChild(attachment1.Name)
110
								if attachment2 then
111
									local hinge = Instance.new("HingeConstraint", v.Handle)
112
									hinge.Attachment0 = attachment1
113
									hinge.Attachment1 = attachment2
114
									hinge.LimitsEnabled = true
115
									hinge.LowerAngle = 0
116
									hinge.UpperAngle = 0
117
								end
118
							end
119
						end
120
					end
121
				end
122
			end
123
			ragdoll.Parent = workspace
124
			if ragdoll:findFirstChild("Right Arm") then
125
				local glue = Instance.new("Glue", ragdoll.Torso)
126
				glue.Part0 = ragdoll.Torso
127
				glue.Part1 = ragdoll:findFirstChild("Right Arm")
128
				glue.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
129
				glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
130
				local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Arm"))
131
				limbcollider.Size = Vector3.new(1.4,1,1)
132
				limbcollider.Shape = "Cylinder"
133
				limbcollider.Transparency = 1
134
				limbcollider.Name = "LimbCollider"
135
				local limbcolliderweld = Instance.new("Weld", limbcollider)
136
				limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Arm")
137
				limbcolliderweld.Part1 = limbcollider
138
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
139
			end
140
			if ragdoll:findFirstChild("Left Arm") then
141
				local glue = Instance.new("Glue", ragdoll.Torso)
142
				glue.Part0 = ragdoll.Torso
143
				glue.Part1 = ragdoll:findFirstChild("Left Arm")
144
				glue.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
145
				glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
146
				local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Arm"))
147
				limbcollider.Size = Vector3.new(1.4,1,1)
148
				limbcollider.Shape = "Cylinder"
149
				limbcollider.Name = "LimbCollider"
150
				limbcollider.Transparency = 1
151
				local limbcolliderweld = Instance.new("Weld", limbcollider)
152
				limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Arm")
153
				limbcolliderweld.Part1 = limbcollider
154
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
155
			end
156
			if ragdoll:findFirstChild("Left Leg") then
157
				local glue = Instance.new("Glue", ragdoll.Torso)
158
				glue.Part0 = ragdoll.Torso
159
				glue.Part1 = ragdoll:findFirstChild("Left Leg")
160
				glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
161
				glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
162
				local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Leg"))
163
				limbcollider.Size = Vector3.new(1.4,1,1)
164
				limbcollider.Shape = "Cylinder"
165
				limbcollider.Name = "LimbCollider"
166
				limbcollider.Transparency = 1
167
				local limbcolliderweld = Instance.new("Weld", limbcollider)
168
				limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Leg")
169
				limbcolliderweld.Part1 = limbcollider
170
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
171
			end
172
			if ragdoll:findFirstChild("Right Leg") then
173
				local glue = Instance.new("Glue", ragdoll.Torso)
174
				glue.Part0 = ragdoll.Torso
175
				glue.Part1 = ragdoll:findFirstChild("Right Leg")
176
				glue.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
177
				glue.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
178
				local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Leg"))
179
				limbcollider.Size = Vector3.new(1.4,1,1)
180
				limbcollider.Shape = "Cylinder"
181
				limbcollider.Name = "LimbCollider"
182
				limbcollider.Transparency = 1
183
				local limbcolliderweld = Instance.new("Weld", limbcollider)
184
				limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Leg")
185
				limbcolliderweld.Part1 = limbcollider
186
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
187
			end
188
			if ragdoll:findFirstChild("Head") and ragdoll.Torso:findFirstChild("NeckAttachment") then
189
				local HeadAttachment = Instance.new("Attachment", ragdoll["Head"])
190
				HeadAttachment.Position = Vector3.new(0, -0.5, 0)
191
				local connection = Instance.new('HingeConstraint', ragdoll["Head"])
192
				connection.LimitsEnabled = true
193
				connection.Attachment0 = ragdoll.Torso.NeckAttachment
194
				connection.Attachment1 = HeadAttachment
195
				connection.UpperAngle = 60
196
				connection.LowerAngle = -60
197
			elseif ragdoll:findFirstChild("Head") and not ragdoll.Torso:findFirstChild("NeckAttachment") then
198
				local hedweld = Instance.new("Weld", ragdoll.Torso)
199
				hedweld.Part0 = ragdoll.Torso
200
				hedweld.Part1 = ragdoll.Head
201
				hedweld.C0 = CFrame.new(0,1.5,0)
202
			end
203
			game.Debris:AddItem(ragdoll, 30)
204
			local function aaaalol()
205
				wait(0.2)
206
				local function searchforvelocity(wot)
207
					for i,v in pairs(wot:GetChildren()) do
208
						searchforvelocity(v)
209
						if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
210
							v:destroy()
211
						end
212
					end
213
				end
214
				searchforvelocity(ragdoll)
215
				wait(0.5)
216
				if ragdoll:findFirstChildOfClass("Humanoid") then
217
					ragdoll:findFirstChildOfClass("Humanoid").PlatformStand = true
218
				end
219
				if ragdoll:findFirstChild("HumanoidRootPart") then
220
					ragdoll:findFirstChild("HumanoidRootPart"):destroy()
221
				end
222
			end
223
			spawn(aaaalol)
224
		elseif character:findFirstChild("UpperTorso") then
225
			character.Archivable = true
226
			for i,v in pairs(character:GetChildren()) do
227
				if v.ClassName == "Sound" then
228
					v:remove()
229
				end
230
				for q,w in pairs(v:GetChildren()) do
231
					if w.ClassName == "Sound" then
232
						w:remove()
233
					end
234
				end
235
			end
236
			local ragdoll = character:Clone()
237
			ragdoll:findFirstChildOfClass("Humanoid").BreakJointsOnDeath = false
238
			for i,v in pairs(ragdoll:GetDescendants()) do
239
				if v.ClassName == "Motor" or v.ClassName == "Motor6D" then
240
					v:destroy()
241
				end
242
			end
243
			ragdoll:BreakJoints()
244
			ragdoll:findFirstChildOfClass("Humanoid").Health = 0
245
			if ragdoll:findFirstChild("Health") then
246
				if ragdoll:findFirstChild("Health").ClassName == "Script" then
247
					ragdoll:findFirstChild("Health").Disabled = true
248
				end
249
			end
250
			for i,v in pairs(character:GetChildren()) do
251
				if v.ClassName == "Part" or v.ClassName == "ForceField" or v.ClassName == "Accessory" or v.ClassName == "Hat" or v.ClassName == "MeshPart" then
252
					v:destroy()
253
				end
254
			end
255
			for i,v in pairs(character:GetChildren()) do
256
				if v.ClassName == "Accessory" then
257
					local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
258
					if attachment1 then
259
						for q,w in pairs(character:GetChildren()) do
260
							if w.ClassName == "Part" or w.ClassName == "MeshPart" then
261
								local attachment2 = w:findFirstChild(attachment1.Name)
262
								if attachment2 then
263
									local hinge = Instance.new("HingeConstraint", v.Handle)
264
									hinge.Attachment0 = attachment1
265
									hinge.Attachment1 = attachment2
266
									hinge.LimitsEnabled = true
267
									hinge.LowerAngle = 0
268
									hinge.UpperAngle = 0
269
								end
270
							end
271
						end
272
					end
273
				end
274
			end
275
			ragdoll.Parent = workspace
276
			local Humanoid = ragdoll:findFirstChildOfClass("Humanoid")
277
			Humanoid.PlatformStand = true
278
			local function makeballconnections(limb, attachementone, attachmenttwo, twistlower, twistupper)
279
				local connection = Instance.new('BallSocketConstraint', limb)
280
				connection.LimitsEnabled = true
281
				connection.Attachment0 = attachementone
282
				connection.Attachment1 = attachmenttwo
283
				connection.TwistLimitsEnabled = true
284
				connection.TwistLowerAngle = twistlower
285
				connection.TwistUpperAngle = twistupper
286
				local limbcollider = Instance.new("Part", limb)
287
				limbcollider.Size = Vector3.new(0.1,1,1)
288
				limbcollider.Shape = "Cylinder"
289
				limbcollider.Transparency = 1
290
				limbcollider:BreakJoints()
291
				local limbcolliderweld = Instance.new("Weld", limbcollider)
292
				limbcolliderweld.Part0 = limb
293
				limbcolliderweld.Part1 = limbcollider
294
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
295
			end
296
			local function makehingeconnections(limb, attachementone, attachmenttwo, lower, upper)
297
				local connection = Instance.new('HingeConstraint', limb)
298
				connection.LimitsEnabled = true
299
				connection.Attachment0 = attachementone
300
				connection.Attachment1 = attachmenttwo
301
				connection.LimitsEnabled = true
302
				connection.LowerAngle = lower
303
				connection.UpperAngle = upper
304
				local limbcollider = Instance.new("Part", limb)
305
				limbcollider.Size = Vector3.new(0.1,1,1)
306
				limbcollider.Shape = "Cylinder"
307
				limbcollider.Transparency = 1
308
				limbcollider:BreakJoints()
309
				local limbcolliderweld = Instance.new("Weld", limbcollider)
310
				limbcolliderweld.Part0 = limb
311
				limbcolliderweld.Part1 = limbcollider
312
				limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2)
313
			end
314
			local HeadAttachment = Instance.new("Attachment", Humanoid.Parent.Head)
315
			HeadAttachment.Position = Vector3.new(0, -0.5, 0)
316
			if ragdoll.UpperTorso:findFirstChild("NeckAttachment") then
317
				makehingeconnections(Humanoid.Parent.Head, HeadAttachment, ragdoll.UpperTorso.NeckAttachment, -50, 50)
318
			end
319
			makehingeconnections(Humanoid.Parent.LowerTorso, Humanoid.Parent.LowerTorso.WaistRigAttachment, Humanoid.Parent.UpperTorso.WaistRigAttachment, -50, 50)
320
			makeballconnections(Humanoid.Parent.LeftUpperArm, Humanoid.Parent.LeftUpperArm.LeftShoulderRigAttachment, Humanoid.Parent.UpperTorso.LeftShoulderRigAttachment, -200, 200, 180)
321
			makehingeconnections(Humanoid.Parent.LeftLowerArm, Humanoid.Parent.LeftLowerArm.LeftElbowRigAttachment, Humanoid.Parent.LeftUpperArm.LeftElbowRigAttachment, 0, -60)
322
			makehingeconnections(Humanoid.Parent.LeftHand, Humanoid.Parent.LeftHand.LeftWristRigAttachment, Humanoid.Parent.LeftLowerArm.LeftWristRigAttachment, -20, 20)
323
			--
324
			makeballconnections(Humanoid.Parent.RightUpperArm, Humanoid.Parent.RightUpperArm.RightShoulderRigAttachment, Humanoid.Parent.UpperTorso.RightShoulderRigAttachment, -200, 200, 180)
325
			makehingeconnections(Humanoid.Parent.RightLowerArm, Humanoid.Parent.RightLowerArm.RightElbowRigAttachment, Humanoid.Parent.RightUpperArm.RightElbowRigAttachment, 0, -60)
326
			makehingeconnections(Humanoid.Parent.RightHand, Humanoid.Parent.RightHand.RightWristRigAttachment, Humanoid.Parent.RightLowerArm.RightWristRigAttachment, -20, 20)
327
			--
328
			makeballconnections(Humanoid.Parent.RightUpperLeg, Humanoid.Parent.RightUpperLeg.RightHipRigAttachment, Humanoid.Parent.LowerTorso.RightHipRigAttachment, -80, 80, 80)
329
			makehingeconnections(Humanoid.Parent.RightLowerLeg, Humanoid.Parent.RightLowerLeg.RightKneeRigAttachment, Humanoid.Parent.RightUpperLeg.RightKneeRigAttachment, 0, 60)
330
			makehingeconnections(Humanoid.Parent.RightFoot, Humanoid.Parent.RightFoot.RightAnkleRigAttachment, Humanoid.Parent.RightLowerLeg.RightAnkleRigAttachment, -20, 20)
331
			--
332
			makeballconnections(Humanoid.Parent.LeftUpperLeg, Humanoid.Parent.LeftUpperLeg.LeftHipRigAttachment, Humanoid.Parent.LowerTorso.LeftHipRigAttachment, -80, 80, 80)
333
			makehingeconnections(Humanoid.Parent.LeftLowerLeg, Humanoid.Parent.LeftLowerLeg.LeftKneeRigAttachment, Humanoid.Parent.LeftUpperLeg.LeftKneeRigAttachment, 0, 60)
334
			makehingeconnections(Humanoid.Parent.LeftFoot, Humanoid.Parent.LeftFoot.LeftAnkleRigAttachment, Humanoid.Parent.LeftLowerLeg.LeftAnkleRigAttachment, -20, 20)
335
			for i,v in pairs(Humanoid.Parent:GetChildren()) do
336
				if v.ClassName == "Accessory" then
337
					local attachment1 = v.Handle:findFirstChildOfClass("Attachment")
338
					if attachment1 then
339
						for q,w in pairs(Humanoid.Parent:GetChildren()) do
340
							if w.ClassName == "Part" then
341
								local attachment2 = w:findFirstChild(attachment1.Name)
342
								if attachment2 then
343
									local hinge = Instance.new("HingeConstraint", v.Handle)
344
									hinge.Attachment0 = attachment1
345
									hinge.Attachment1 = attachment2
346
									hinge.LimitsEnabled = true
347
									hinge.LowerAngle = 0
348
									hinge.UpperAngle = 0
349
								end
350
							end
351
						end
352
					end
353
				end
354
			end
355
			for i,v in pairs(ragdoll:GetChildren()) do
356
				for q,w in pairs(v:GetChildren()) do
357
					if w.ClassName == "Motor6D"--[[ and w.Name ~= "Neck"--]] and w.Name ~= "ouch_weld" then
358
						w:destroy()
359
					end
360
				end
361
			end
362
			if ragdoll:findFirstChild("HumanoidRootPart") then
363
				ragdoll.HumanoidRootPart:destroy()
364
			end
365
			if ragdoll:findFirstChildOfClass("Humanoid") then
366
				ragdoll:findFirstChildOfClass("Humanoid").PlatformStand = true
367
			end
368
			local function waitfordatmoment()
369
				wait(0.2)
370
				local function searchforvelocity(wot)
371
					for i,v in pairs(wot:GetChildren()) do
372
						searchforvelocity(v)
373
						if v.ClassName == "BodyPosition" or v.ClassName == "BodyVelocity" then
374
							v:destroy()
375
						end
376
					end
377
				end
378
				searchforvelocity(ragdoll)
379
			end
380
			spawn(waitfordatmoment)
381
			game.Debris:AddItem(ragdoll, 30)
382
		end
383
	end
384
end
385
function damage(what, action, t, range)
386
	for i,v in pairs(workspace:GetDescendants()) do
387
		if v.ClassName == "Model" then
388
			local head = v:findFirstChild("Head")
389
			local humanoid = v:findFirstChildOfClass("Humanoid")
390
			local torso = v:findFirstChild("Torso")
391
			local ragdolled = v:findFirstChild("ragdolledpunch")
392
			if humanoid and head then
393
				if (head.Position - what.Position).magnitude < range and v ~= character and humanoid.Health > 0 then
394
					if action ~= "stomp" then
395
						if ragdolled then
396
							return
397
						end
398
					end
399
					local ragdolledpunch = Instance.new("BoolValue", v)
400
					ragdolledpunch.Name = "ragdolledpunch"
401
					game.Debris:AddItem(ragdolledpunch, t)
402
					if action == "punch" then
403
						local velocity = Instance.new("BodyVelocity", head)
404
						velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
405
						velocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * math.random(5,15)
406
						punchsound.PlaybackSpeed = 1+(math.random(-5,5)/15)
407
						punchsound:Play()
408
						game.Debris:AddItem(velocity, 0.2)
409
					elseif action == "uppercut" then
410
						local velocity = Instance.new("BodyVelocity", head)
411
						velocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
412
						velocity.Velocity = (character.HumanoidRootPart.CFrame.upVector * math.random(5,15)) + (character.HumanoidRootPart.CFrame.lookVector * math.random(5,15))
413
						kicksound.PlaybackSpeed = 1+(math.random(-5,5)/15)
414
						kicksound:Play()
415
						game.Debris:AddItem(velocity, 0.2)
416
					elseif action == "kick" then
417
						local velocity = Instance.new("BodyVelocity", head)
418
						velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
419
						velocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * 20
420
						goresound.PlaybackSpeed = 1+(math.random(-5,5)/15)
421
						goresound:Play()
422
						game.Debris:AddItem(velocity, 0.2)
423
					elseif action == "dropkick" then
424
						local velocity = Instance.new("BodyVelocity", head)
425
						velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
426
						velocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * 30
427
						kicksound.PlaybackSpeed = 1+(math.random(-5,5)/15)
428
						kicksound:Play()
429
						goresound.PlaybackSpeed = 1+(math.random(-5,5)/15)
430
						goresound:Play()
431
						game.Debris:AddItem(velocity, 0.2)
432
					elseif action == "stomp" then
433
						punchsound.PlaybackSpeed = 1+(math.random(-5,5)/15)
434
						punchsound:Play()
435
					end
436
					if action ~= "blocked" then
437
						local dmg = math.random(30,50)
438
						if action == "uppercut" then
439
							dmg = dmg + math.random(20,30)
440
						elseif action == "kick" then
441
							dmg = dmg + math.random(40,50)
442
						elseif action == "dropkick" then
443
							dmg = dmg + math.random(50,90)
444
						end
445
						if humanoid.Health <= dmg then
446
							humanoid.Health = 0
447
							ragdollkill(v)
448
						end
449
						humanoid.Health = humanoid.Health - dmg
450
					end
451
					if action ~= "blocked" and action ~= "uppercut" and action ~= "kick" and action ~= "dropkick" then
452
						if math.random(1,5) ~= 1 then
453
							return
454
						end
455
					end
456
					if action == "stomp" then
457
						return
458
					end
459
					humanoid.PlatformStand = true
460
					coroutine.wrap(function()
461
						wait(t)
462
						humanoid.PlatformStand = false
463
					end)()
464
					if torso then
465
						coroutine.wrap(function()
466
							humanoid = v:WaitForChild("Humanoid")
467
							local ragdoll = v
468
							if ragdoll:findFirstChild("Right Arm") then
469
								local glue = Instance.new("Glue", ragdoll.Torso)
470
								glue.Part0 = ragdoll.Torso
471
								glue.Part1 = ragdoll:findFirstChild("Right Arm")
472
								glue.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
473
								glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
474
								local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Arm"))
475
								limbcollider.Size = Vector3.new(1.4,1,1)
476
								limbcollider.Shape = "Cylinder"
477
								limbcollider.Transparency = 1
478
								limbcollider.Name = "LimbCollider"
479
								local limbcolliderweld = Instance.new("Weld", limbcollider)
480
								limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Arm")
481
								limbcolliderweld.Part1 = limbcollider
482
								limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
483
								coroutine.wrap(function()
484
									if ragdoll.Torso:findFirstChild("Right Shoulder") then
485
										local limbclone = ragdoll.Torso:findFirstChild("Right Shoulder"):Clone()
486
										ragdoll.Torso:findFirstChild("Right Shoulder"):destroy()
487
										coroutine.wrap(function()
488
											wait(t)
489
											limbclone.Parent = ragdoll.Torso
490
											limbclone.Part0 = ragdoll.Torso
491
											limbclone.Part1 = ragdoll["Right Arm"]
492
										end)()
493
									end
494
									wait(t)
495
									glue:destroy()
496
									limbcollider:destroy()
497
									limbcolliderweld:destroy()
498
								end)()
499
							end
500
							if ragdoll:findFirstChild("Left Arm") then
501
								local glue = Instance.new("Glue", ragdoll.Torso)
502
								glue.Part0 = ragdoll.Torso
503
								glue.Part1 = ragdoll:findFirstChild("Left Arm")
504
								glue.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
505
								glue.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
506
								local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Arm"))
507
								limbcollider.Size = Vector3.new(1.4,1,1)
508
								limbcollider.Shape = "Cylinder"
509
								limbcollider.Name = "LimbCollider"
510
								limbcollider.Transparency = 1
511
								local limbcolliderweld = Instance.new("Weld", limbcollider)
512
								limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Arm")			
513
								limbcolliderweld.Part1 = limbcollider
514
								limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.3,0,0)
515
								coroutine.wrap(function()
516
									if ragdoll.Torso:findFirstChild("Left Shoulder") then
517
										local limbclone = ragdoll.Torso:findFirstChild("Left Shoulder"):Clone()
518
										ragdoll.Torso:findFirstChild("Left Shoulder"):destroy()
519
										coroutine.wrap(function()
520
											wait(t)
521
											limbclone.Parent = ragdoll.Torso
522
											limbclone.Part0 = ragdoll.Torso
523
											limbclone.Part1 = ragdoll["Left Arm"]
524
										end)()
525
									end
526
									wait(t)
527
									glue:destroy()
528
									limbcollider:destroy()
529
									limbcolliderweld:destroy()
530
								end)()
531
							end
532
							if ragdoll:findFirstChild("Left Leg") then
533
								local glue = Instance.new("Glue", ragdoll.Torso)
534
								glue.Part0 = ragdoll.Torso
535
								glue.Part1 = ragdoll:findFirstChild("Left Leg")
536
								glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
537
								glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
538
								local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Left Leg"))
539
								limbcollider.Size = Vector3.new(1.5,1,1)
540
								limbcollider.Shape = "Cylinder"
541
								limbcollider.Name = "LimbCollider"
542
								limbcollider.Transparency = 1
543
								local limbcolliderweld = Instance.new("Weld", limbcollider)
544
								limbcolliderweld.Part0 = ragdoll:findFirstChild("Left Leg")
545
								limbcolliderweld.Part1 = limbcollider
546
								limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.2,0,0)
547
								coroutine.wrap(function()
548
									if ragdoll.Torso:findFirstChild("Left Hip") then
549
										local limbclone = ragdoll.Torso:findFirstChild("Left Hip"):Clone()
550
										ragdoll.Torso:findFirstChild("Left Hip"):destroy()
551
										coroutine.wrap(function()
552
											wait(t)
553
											limbclone.Parent = ragdoll.Torso
554
											limbclone.Part0 = ragdoll.Torso
555
											limbclone.Part1 = ragdoll["Left Leg"]
556
										end)()
557
									end
558
									wait(t)
559
									glue:destroy()
560
									limbcollider:destroy()
561
									limbcolliderweld:destroy()
562
								end)()
563
							end
564
							if ragdoll:findFirstChild("Right Leg") then
565
								local glue = Instance.new("Glue", ragdoll.Torso)
566
								glue.Part0 = ragdoll.Torso
567
								glue.Part1 = ragdoll:findFirstChild("Right Leg")
568
								glue.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
569
								glue.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
570
								local limbcollider = Instance.new("Part", ragdoll:findFirstChild("Right Leg"))
571
								limbcollider.Size = Vector3.new(1.5,1,1)
572
								limbcollider.Shape = "Cylinder"
573
								limbcollider.Name = "LimbCollider"
574
								limbcollider.Transparency = 1
575
								local limbcolliderweld = Instance.new("Weld", limbcollider)
576
								limbcolliderweld.Part0 = ragdoll:findFirstChild("Right Leg")
577
								limbcolliderweld.Part1 = limbcollider
578
								limbcolliderweld.C0 = CFrame.fromEulerAnglesXYZ(0,0,math.pi/2) * CFrame.new(-0.2,0,0)
579
								coroutine.wrap(function()
580
									if ragdoll.Torso:findFirstChild("Right Hip") then
581
										local limbclone = ragdoll.Torso:findFirstChild("Right Hip"):Clone()
582
										ragdoll.Torso:findFirstChild("Right Hip"):destroy()
583
										coroutine.wrap(function()
584
											wait(t)
585
											limbclone.Parent = ragdoll.Torso
586
											limbclone.Part0 = ragdoll.Torso
587
											limbclone.Part1 = ragdoll["Right Leg"]
588
										end)()
589
									end
590
									wait(t)
591
									glue:destroy()
592
									limbcollider:destroy()
593
									limbcolliderweld:destroy()
594
								end)()
595
							end
596
						end)()
597
					end
598
				end
599
			end
600
		end
601
	end
602
end
603
--
604
tool.Activated:connect(function()
605
	if owner ~= nil and character ~= nil and canattack then
606
		local rightarmweld = character.Torso:findFirstChild("RightArmWeldpunch")
607
		local leftarmweld = character.Torso:findFirstChild("LeftArmWeldpunch")
608
		local headweld = character.Torso:findFirstChild("HeadWeldpunch")
609
		local rootweld = character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch")
610
		for i,v in pairs(workspace:GetDescendants()) do
611
			if v.ClassName == "Model" and v ~= character then
612
				local humanoid = v:findFirstChildOfClass("Humanoid")
613
				local headepic = v:findFirstChild("Head")
614
				if humanoid and headepic then
615
					if (headepic.Position - character.HumanoidRootPart.Position).magnitude < 5 and humanoid.PlatformStand and humanoid.Health > 0 then
616
						local rightlegweld = Instance.new("Weld", character.Torso)
617
						rightlegweld.Part0 = character.Torso
618
						rightlegweld.Part1 = character["Right Leg"]
619
						rightlegweld.C0 = CFrame.new(0.5,-2,0)
620
						rightlegweld.Name = "RightLegWeldbat"
621
						local leftlegweld = Instance.new("Weld", character.Torso)
622
						leftlegweld.Part0 = character.Torso
623
						leftlegweld.Part1 = character["Left Leg"]
624
						leftlegweld.C0 = CFrame.new(-0.5,-2,0)
625
						leftlegweld.Name = "LeftLegWeldbat"
626
						character:findFirstChildOfClass("Humanoid").WalkSpeed = 0
627
						for i = 0,1 , 0.1 do
628
							cananimate = false
629
							canattack = false
630
							character.HumanoidRootPart.CFrame = CFrame.new(character.HumanoidRootPart.Position, Vector3.new(headepic.Position.x,character.HumanoidRootPart.Position.y,headepic.Position.z))
631
							rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5, -0.75804615, -1.03058243, 1, 0, 0, 0, 1, 5.96046448e-08, 0, -5.96046448e-08, 1),i)
632
							leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5, -1.93969202, 0.342020512, 1, 0, 0, 0, 0.939692557, 0.342020333, 0, -0.342020392, 0.939692557),i)
633
							rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.5,0,0),i)
634
							leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.5,0,0),i)
635
							rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.939692557, -0.342020363, 0, 0.342020363, 0.939692557),i)
636
							headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.38302135, -0.32139349, 1, 0, 0, 0, 0.766044259, 0.642787755, 0, -0.642787755, 0.766044259),i)
637
							runservice.Stepped:wait()
638
						end
639
						for i = 0,1 , 0.15 do
640
							rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5, -1.93246841, -1.17564046, 1, 0, 0, 0, 0.939692557, -0.342019618, 0, 0.342019647, 0.939692676),i)
641
							leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5, -1.98480701, 0.173648238, 1, 0, 0, 0, 0.984807491, 0.173648387, 0, -0.173648402, 0.984807551),i)
642
							rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.64085674, 0.201163769, -2.38418579e-07, 0.939692616, -0.342020124, 0, 0.342020094, 0.939692497, 0, 0, 0, 0.99999994),i)
643
							leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.64085674, 0.201163769, -2.38418579e-07, 0.939692616, 0.342020124, 0, -0.342020094, 0.939692497, 0, 0, 0, 0.99999994),i)
644
							rootweld.C0 = rootweld.C0:lerp(CFrame.new(0, -0.0347294807, -0.396961689, 1, 0, 0, 0, 0.98480773, 0.173648179, 0, -0.173648179, 0.98480773),i)
645
							headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.38302231, -0.321393967, 1, 0, 0, 0, 0.766044259, 0.642787695, 0, -0.642787695, 0.766044259),i)
646
							runservice.Stepped:wait()
647
						end
648
						damage(character["Right Leg"], "stomp", 1, 3.5)
649
						coroutine.wrap(function()
650
							for i = 0,1 ,0.07 do
651
								leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5,-2,0),i)
652
								rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5,-2,0),i)
653
								runservice.Stepped:wait()
654
							end
655
							leftlegweld:destroy()
656
							rightlegweld:destroy()
657
							character:findFirstChildOfClass("Humanoid").WalkSpeed = 16
658
						end)()
659
						cananimate = true
660
						canattack = true
661
						return
662
					end
663
				end
664
			end
665
		end
666
		if character:findFirstChildOfClass("Humanoid").Jump then
667
			canattack = false
668
			cananimate = false
669
			character:findFirstChildOfClass("Humanoid").PlatformStand = true
670
			local rightlegweld = Instance.new("Weld", character.Torso)
671
			rightlegweld.Part0 = character.Torso
672
			rightlegweld.Part1 = character["Right Leg"]
673
			rightlegweld.C0 = CFrame.new(0.5,-2,0)
674
			rightlegweld.Name = "RightLegWeldpunch"
675
			local leftlegweld = Instance.new("Weld", character.Torso)
676
			leftlegweld.Part0 = character.Torso
677
			leftlegweld.Part1 = character["Left Leg"]
678
			leftlegweld.C0 = CFrame.new(-0.5,-2,0)
679
			leftlegweld.Name = "LeftLegWeldpunch"
680
			local vel = Instance.new("BodyVelocity", character.HumanoidRootPart)
681
			vel.MaxForce = Vector3.new(math.huge,600,math.huge)
682
			vel.Velocity = character.HumanoidRootPart.CFrame.lookVector * 20
683
			for i = 0,1 , 0.13 do
684
				damage(character["Left Leg"], "dropkick", 3.5, 3)
685
				damage(character["Right Leg"], "dropkick", 3.5, 3)
686
				rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5, -1, -0.400000095, 0.999999881, 0, 0, 0, 0.999999881, 0, 0, -1.49011612e-08, 0.99999994),i)
687
				leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5, -1, -0.400000095, 0.999999881, 0, 0, 0, 0.999999881, 0, 0, -1.49011612e-08, 0.99999994),i)
688
				rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.64085579, 0.201163769, 0, 0.939692438, -0.342020065, 0, 0.342020094, 0.939692438, 0, 0, 0, 0.99999994),i)
689
				leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.64085579, 0.201163769, 0, 0.939692438, 0.342020065, 0, -0.342020094, 0.939692438, 0, 0, 0, 0.99999994),i)
690
				rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ(math.pi/2,0,0),i)
691
				headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.24999976, -0.433012486, 0.999999881, 0, 0, 0, 0.5, 0.866025448, 0, -0.866025448, 0.5),i)
692
				runservice.Stepped:wait()
693
			end
694
			swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
695
			swishsound:Play()
696
			for i = 0,1 , 0.13 do
697
				damage(character["Left Leg"], "dropkick", 3.5, 3)
698
				damage(character["Right Leg"], "dropkick", 3.5, 3)
699
				rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5, -2, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 1.49011612e-08, 0.99999994),i)
700
				leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5, -2, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 1.49011612e-08, 0.99999994),i)
701
				rightarmweld.C0 = rightarmweld.C0:lerp(CFrame.new(1.57922745, 0.094420433, 4.76837158e-07, 0.98480773, -0.173648179, 0, 0.173648149, 0.984807611, 0, -1.86264515e-09, 0, 0.99999994),i)
702
				leftarmweld.C0 = leftarmweld.C0:lerp(CFrame.new(-1.57922745, 0.094420433, 4.76837158e-07, 0.98480773, 0.173648179, 0, -0.173648149, 0.984807611, 0, 1.86264515e-09, 0, 0.99999994),i)
703
				rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ((math.pi/2)-math.rad(30),0,0),i)
704
				headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.32139361, -0.383021832, 1, 0, 0, 0, 0.642787635, 0.766044438, 0, -0.766044438, 0.642787635),i)
705
				runservice.Stepped:wait()
706
			end
707
			for i = 1,20 do
708
				damage(character["Left Leg"], "dropkick", 3.5, 3)
709
				damage(character["Right Leg"], "dropkick", 3.5, 3)
710
				runservice.Stepped:wait()
711
			end
712
			vel:destroy()
713
			rightlegweld:destroy()
714
			leftlegweld:destroy()
715
			coroutine.wrap(function()
716
				wait(0.8)
717
				character:findFirstChildOfClass("Humanoid").PlatformStand = false
718
			end)()
719
			canattack = true
720
			cananimate = true
721
		else
722
			canattack = false
723
			cananimate = false
724
			if attacknumber == 1 then
725
				local sine = 0
726
				local tiltval = 0
727
				for i = 1,20 do --17 and sine 3 
728
					sine = sine + 1
729
					damage(character["Right Arm"], "punch", 1, 2)
730
					headweld.C0 = headweld.C0:lerp(CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0,math.sin(sine/3.25),0),0.3)
731
					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)
732
					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) 
733
					if i == 3 then
734
						swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
735
						swishsound:Play()
736
					end
737
					if i > 10 then
738
						if i < 17 then
739
							tiltval = tiltval + 0.048
740
						end
741
						rightarmweld.C0 = rightarmweld.C0 * CFrame.new(-tiltval/2,0,0) * CFrame.fromEulerAnglesXYZ(0,0,-tiltval)
742
					end
743
					rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ(math.sin(sine/3.25)/8,-math.sin(sine/3.25)*2.3,0), 0.3)
744
					runservice.Stepped:wait()
745
				end
746
				attacknumber = 2
747
			elseif attacknumber == 2 then
748
				local sine = 0
749
				local tiltval = 0
750
				for i = 1,20 do --17 and sine 3 
751
					sine = sine + 1
752
					damage(character["Left Arm"], "punch", 1, 2)
753
					headweld.C0 = headweld.C0:lerp(CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0,-math.sin(sine/3.25),0),0.3)
754
					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)
755
					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) 
756
					if i == 3 then
757
						swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
758
						swishsound:Play()
759
					end
760
					if i > 10 then
761
						if i < 17 then
762
							tiltval = tiltval + 0.048
763
						end
764
						leftarmweld.C0 = leftarmweld.C0 * CFrame.new(tiltval/2,0,0) * CFrame.fromEulerAnglesXYZ(0,0,tiltval)
765
					end
766
					rootweld.C0 = rootweld.C0:lerp(CFrame.fromEulerAnglesXYZ(math.sin(sine/3.25)/8,math.sin(sine/3.25)*2.3,0), 0.3)
767
					runservice.Stepped:wait()
768
				end
769
				attacknumber = 3
770
			elseif attacknumber == 3 then
771
				for i = 0,1 , 0.06 do
772
					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)
773
					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)
774
					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)
775
					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)
776
					runservice.Stepped:wait()
777
				end
778
				swishsound.PlaybackSpeed = 1+(math.random(-2,5)/12)
779
				swishsound:Play()
780
				for i = 0.35,0.65 , 0.1 do
781
					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)
782
					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)
783
					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)
784
					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)
785
					runservice.Stepped:wait()
786
				end
787
				for i = 0,1 , 0.1 do
788
					damage(character["Right Arm"], "uppercut", 1.5, 2)
789
					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)
790
					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)
791
					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)
792
					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)
793
					runservice.Stepped:wait()
794
				end
795
				attacknumber = 4
796
			elseif attacknumber == 4 then
797
				local rightlegweld = Instance.new("Weld", character.Torso)
798
				rightlegweld.Part0 = character.Torso
799
				rightlegweld.Part1 = character["Right Leg"]
800
				rightlegweld.C0 = CFrame.new(0.5,-2,0)
801
				rightlegweld.Name = "RightLegWeldpunch"
802
				local leftlegweld = Instance.new("Weld", character.Torso)
803
				leftlegweld.Part0 = character.Torso
804
				leftlegweld.Part1 = character["Left Leg"]
805
				leftlegweld.C0 = CFrame.new(-0.5,-2,0)
806
				leftlegweld.Name = "LeftLegWeldpunch"
807
				character:findFirstChildOfClass("Humanoid").WalkSpeed = character:findFirstChildOfClass("Humanoid").WalkSpeed - 10
808
				for i = 0,1 , 0.06 do
809
					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)
810
					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)
811
					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)
812
					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)
813
					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)
814
					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)
815
					runservice.Stepped:wait()
816
				end
817
				swishsound.PlaybackSpeed = 1+(math.random(-3,5)/12)
818
				swishsound:Play()
819
				for i = 0,1 , 0.15 do
820
					damage(character["Left Leg"], "kick", 1.5, 3.5)
821
					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)
822
					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)
823
					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)
824
					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)
825
					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)
826
					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)
827
					runservice.Stepped:wait()
828
				end
829
				coroutine.wrap(function()
830
					for i = 0,1 ,0.07 do
831
						leftlegweld.C0 = leftlegweld.C0:lerp(CFrame.new(-0.5,-2,0),i)
832
						rightlegweld.C0 = rightlegweld.C0:lerp(CFrame.new(0.5,-2,0),i)
833
						runservice.Stepped:wait()
834
					end
835
					leftlegweld:destroy()
836
					rightlegweld:destroy()
837
					character:findFirstChildOfClass("Humanoid").WalkSpeed = character:findFirstChildOfClass("Humanoid").WalkSpeed + 10
838
				end)()
839
				attacknumber = 1
840
			end
841
			if mouseclick then
842
				coroutine.wrap(function()
843
					local humhp = character:findFirstChildOfClass("Humanoid").Health
844
					while runservice.Stepped:wait() and mouseclick do
845
						cananimate = false
846
						if character:findFirstChildOfClass("Humanoid").Health < humhp then
847
							character:findFirstChildOfClass("Humanoid").PlatformStand = false
848
							character:findFirstChildOfClass("Humanoid").Health = character:findFirstChildOfClass("Humanoid").Health + (humhp-character:findFirstChildOfClass("Humanoid").Health)
849
							character:findFirstChildOfClass("Humanoid").WalkSpeed = 16
850
							basssound.TimePosition = 1.525
851
							blocksound:Play()
852
							basssound:Play()
853
							coroutine.wrap(function()
854
								local thehpp = character:findFirstChildOfClass("Humanoid").Health
855
								for i = 1,20 do
856
									character:findFirstChildOfClass("Humanoid").Health = thehpp
857
									runservice.Stepped:wait()
858
								end
859
							end)()
860
							local nearestdistance = math.huge
861
							local nearestplr = nil
862
							for i,v in pairs(workspace:GetDescendants()) do
863
								if v.ClassName == "Model" and v ~= character then
864
									local headdw = v:findFirstChild("Head")
865
									local humanoiddw = v:findFirstChildOfClass("Humanoid")
866
									if humanoiddw and headdw then
867
										if (headdw.Position - character.Head.Position).magnitude < 10 and (headdw.Position - character.Head.Position).magnitude < nearestdistance then
868
											nearestdistance = (headdw.Position - character.Head.Position).magnitude
869
											nearestplr = v
870
										end
871
									end
872
								end
873
							end
874
							if nearestplr ~= nil then
875
								character.Head.CFrame = CFrame.new(character.Head.Position, nearestplr.Head.Position)
876
								nearestplr.Head.CFrame = CFrame.new(nearestplr.Head.Position, character.Head.Position)
877
								local noon = Instance.new("BodyVelocity", nearestplr.Head)
878
								noon.MaxForce = Vector3.new(math.huge,0,math.huge)
879
								noon.Velocity = nearestplr.Head.CFrame.lookVector * -math.random(15,25)
880
								game.Debris:AddItem(noon, 0.2)
881
								damage(nearestplr.Head, "blocked", 3, 0.5)
882
							end
883
							local velocity = Instance.new("BodyVelocity", character.Head)
884
							velocity.MaxForce = Vector3.new(math.huge,0,math.huge)
885
							velocity.Velocity = character.Head.CFrame.lookVector * -math.random(10,15)
886
							game.Debris:AddItem(velocity, 0.2)
887
							break
888
						end
889
						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)
890
						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)
891
						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)
892
						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)
893
						humhp = character:findFirstChildOfClass("Humanoid").Health
894
					end
895
					cananimate = true
896
					canattack = true
897
				end)()
898
			else
899
				canattack = true
900
				cananimate = true
901
			end
902
		end
903
	end
904
end)
905
--
906
tool.Equipped:connect(function()
907
	equipped = true
908
	owner = game:GetService("Players"):GetPlayerFromCharacter(tool.Parent)
909
	character = owner.Character
910
	local rightarm = Instance.new("Weld", character.Torso)
911
	rightarm.Part0 = character.Torso
912
	rightarm.Part1 = character["Right Arm"]
913
	rightarm.C0 = CFrame.new(1.5,0,0)
914
	rightarm.Name = "RightArmWeldpunch"
915
	local leftarm = Instance.new("Weld", character.Torso)
916
	leftarm.Part0 = character.Torso
917
	leftarm.Part1 = character["Left Arm"]
918
	leftarm.C0 = CFrame.new(-1.5,0,0)
919
	leftarm.Name = "LeftArmWeldpunch"
920
	local head = Instance.new("Weld", character.Torso)
921
	head.Part0 = character.Torso
922
	head.Part1 = character.Head
923
	head.C0 = CFrame.new(0,1.5,0)
924
	head.Name = "HeadWeldpunch"
925
	local humanoidrootpart = Instance.new("Weld", character.HumanoidRootPart)
926
	humanoidrootpart.Part0 = character.HumanoidRootPart
927
	humanoidrootpart.Part1 = character.Torso
928
	humanoidrootpart.Name = "HumanoidRootPartWeldpunch"
929
	for i,v in pairs(script:GetChildren()) do
930
		if v.ClassName == "Sound" then
931
			v.Parent = character.HumanoidRootPart
932
		end
933
	end
934
	cananimate = true
935
	local savedchar = character
936
	local lasthp = character:findFirstChildOfClass("Humanoid").Health
937
	coroutine.wrap(function()
938
		local humhp = character:findFirstChildOfClass("Humanoid").Health
939
		while runservice.Stepped:wait() and equipped do
940
			if character:findFirstChildOfClass("Humanoid").Health < humhp then
941
				local thedamage = humhp - character:findFirstChildOfClass("Humanoid").Health
942
				character:findFirstChildOfClass("Humanoid").Health = character:findFirstChildOfClass("Humanoid").Health + thedamage/2.5
943
			end
944
			if cananimate then
945
				head.C0 = head.C0:lerp(CFrame.new(0,1.5,0),0.1)
946
				humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(),0.2)
947
				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)
948
				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)
949
			end
950
			humhp = character:findFirstChildOfClass("Humanoid").Health
951
		end
952
	end)()
953
end)
954
tool.Unequipped:connect(function()
955
	equipped = false
956
	instancewhitelist = {}
957
	mouseclick = false
958
	cananimate = false
959
	for i,v in pairs(character.HumanoidRootPart:GetChildren()) do
960
		if v.ClassName == "Sound" then
961
			v.Parent = script
962
		end
963
	end
964
	if character.Torso:findFirstChild("LeftArmWeldpunch") then
965
		character.Torso:findFirstChild("LeftArmWeldpunch"):destroy()
966
	end
967
	if character.Torso:findFirstChild("RightArmWeldpunch") then
968
		character.Torso:findFirstChild("RightArmWeldpunch"):destroy()
969
	end
970
	if character.Torso:findFirstChild("HeadWeldpunch") then
971
		character.Torso:findFirstChild("HeadWeldpunch"):destroy()
972
	end
973
	if character:findFirstChild("HumanoidRootPart") then
974
		if character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch") then
975
			character.HumanoidRootPart:findFirstChild("HumanoidRootPartWeldpunch"):destroy()
976
		end
977
	end
978
end)
979
980
end)()