View difference between Paste ID: 9JkHsvLZ and qA9nicui
SHOW: | | - or go back to the newest paste.
1
print("Loaded Successfully!")
2
	--[[Changeable Variables]]--
3
local multiplier = 1 --Attack multiplier (default is 1)
4
local soundlist = {
5
	HardHit1 = "rbxassetid://565207203",
6
	HardHit2 = "rbxassetid://541909913",
7
	HardHit3 = "rbxassetid://541909983",
8
	WeakHit1 = "rbxassetid://558642292",
9
	WeakHit2 = "rbxassetid://541907812",
10
	Slice1 = "rbxassetid://260429964",
11
	Slice2 = "rbxassetid://260430015",
12
	Explosion1 = "rbxassetid://138186576",
13
	Explosion2 = "rbxassetid://157878578",
14
	Woosh1 = "rbxassetid://541909867",
15
	Woosh2 = "rbxassetid://541909763",
16
	TimeSlow = "rbxassetid://615678808",
17
	TimeStop = "rbxassetid://926382097",
18
	TimeResume = "rbxassetid://894793352",
19
	TimeFast = "rbxassetid://743499393",
20
	TimeReverse = "rbxassetid://618737332",
21
	
22
}
23
24
	--[[Important Variables]]--
25
local plr = game:GetService('Players').LocalPlayer
26
local char = plr.Character
27
local mouse = plr:GetMouse()
28
local input = game:GetService('UserInputService')
29
----
30
local joints = {"Right Shoulder", "Left Shoulder", "Right Hip", "Left Hip", "Neck", "RootJoint"}
31
local torso,head,rootpart = char.Torso,char.Head,char.HumanoidRootPart
32
local rs = torso["Right Shoulder"]
33
local ls = torso["Left Shoulder"]
34
local rh = torso["Right Hip"]
35
local lh = torso["Left Hip"]
36
local neck = torso.Neck
37
local rj = rootpart["RootJoint"]
38
----
39
local huge = Vector3.new(math.huge, math.huge, math.huge)
40-
local attacking = false
40+
local attacking = true
41
local cananim = true
42-
local timestop = false
42+
local timestop = true
43-
local timeslow = false
43+
local timeslow = true
44-
local timefast = false
44+
local timefast = true
45-
local reversing = false
45+
local reversing = true
46
local unfreeze = {}
47
local sounddata = {}
48
local connections = {}
49
local healthstuff = {}
50
51
	--[[ Functions ]]--
52
function addattack(keycode, func)
53
	input.InputBegan:connect(function(inp)
54
		if inp.KeyCode == keycode and not input:GetFocusedTextBox() then
55
			func()
56
		end
57
	end)
58
end
59
function attackend(keycode, func)
60
	input.InputEnded:connect(function(inp)
61
		if inp.KeyCode == keycode and not input:GetFocusedTextBox() then
62
			func()
63
		end
64
	end)
65
end
66
function swait(t)
67
	if t then
68
		for i = 0, t do
69
			game:GetService('RunService').Stepped:wait(0)
70
		end
71
	else
72
		game:GetService('RunService').Stepped:wait(0)
73
	end
74
	return true
75
end
76
function fade(obj, dest, grow)
77
	spawn(function()
78
		local oldcf = obj.CFrame
79
		for i = 0, 10 do
80
			if grow then
81
				obj.Size = obj.Size +Vector3.new(1,1,1)
82
				obj.CFrame = oldcf
83
			end
84
			obj.Transparency = obj.Transparency +0.1
85
			swait()
86
		end
87
		if dest then
88
		obj:Destroy()
89
		end
90
	end)
91
end
92
function replacejoint(name)
93
	local j = torso:FindFirstChild(name)
94
	if not j then j = char.HumanoidRootPart:FindFirstChild(name) end
95
	if j then
96
		if true then
97
			local already = j.Parent:FindFirstChild(j.Name.." Replacement")
98
			local new = Instance.new("Weld")
99
			local c0 = j.C0
100
			local c1 = j.C1
101
			new.Part0 = j.Part0
102
			j.Part0 = nil
103
			new.Name = j.Name.." Replacement"
104
			if already then c0 = already.C0 c1 = already.C1 already:Destroy() end
105
			new.Parent = j.Parent
106
			new.Part1 = j.Part1
107
			new.C0 = c0
108
			new.C1 = c1
109
			return new
110
		end
111
	end
112
end
113
function removejoint(name, fast)
114
	local j = torso:FindFirstChild(name.." Replacement")
115
	if not j then j = char.HumanoidRootPart:FindFirstChild(name.." Replacement") end
116
	if j then
117
		local p0 = j.Part0
118
		if p0 ~= nil then
119
		local c0 = j.C0
120
		local c1 = j.C1
121
		j:Destroy()
122
		local new = p0:FindFirstChild(name)
123
		local ac0 = new.C0
124
		local ac1 = new.C1
125
		new.Part0 = p0
126
		new.C0 = c0
127
		new.C1 = c1
128
		spawn(function()
129
			if name ~= "RootJoint" then
130
			if not fast then
131
			for i = 0, 0.6, 0.1 do
132
				new.C0 = new.C0:Lerp(ac0, 0.5)
133
				new.C1 = new.C1:lerp(ac1, 0.5)
134
				swait()
135
			end
136
			else
137
				new.C0 = new.C0:Lerp(ac0, 1)
138
				new.C1 = new.C1:lerp(ac1, 1)
139
			end
140
			end
141
		end)
142
		end
143
	end
144
end
145
function fixalljoints(fast)
146
	for i,v in pairs({"Right Shoulder", "Left Shoulder", "Right Hip", "Left Hip",  "Neck", "RootJoint"}) do
147
		removejoint(v, fast)
148
	end
149
end
150
function getnewjoints()
151
	local rs = replacejoint("Right Shoulder")
152
	local ls = replacejoint("Left Shoulder")
153
	local rh = replacejoint("Right Hip")
154
	local lh = replacejoint("Left Hip")
155
	local neck = replacejoint("Neck")
156
	local rj = replacejoint("RootJoint")
157
	return rs,ls,rh,lh,neck,rj
158
end
159
function knockback(hit, force)
160
	local bv = Instance.new("BodyVelocity")
161
	bv.MaxForce = huge
162
	bv.Velocity = force
163
	bv.Parent = hit
164
	game:GetService('Debris'):AddItem(bv, 0.15)
165
end
166
function soundeffect(id, volume, speed, parent, forcewait)
167
	local func = function()
168
		local s = LoadLibrary("RbxUtility").Create("Sound")()
169
		s.Name = "SoundEffect"
170
		s.Volume = volume
171
		s.PlaybackSpeed = speed
172
		s.SoundId = id
173
		s.Name = "dont"
174
		s.Looped = false
175
		s.Parent = parent
176
		s:Play()
177
		repeat wait() until not s.Playing
178
		s:Destroy()
179
	end
180
	if forcewait then
181
		func()
182
	else
183
		spawn(func)
184
	end
185
end
186
function getascendants(obj)
187
	local par = obj
188
	local ret = {}
189
	pcall(function()
190
		repeat
191
			par = par.Parent
192
			if par ~= nil then
193
				table.insert(ret, par)
194
			end
195
		until par == nil
196
	end)
197
	return ret
198
end
199
function findascendant(obj, class)
200
	local par = obj
201
	local ret = nil
202
	pcall(function()
203
		repeat 
204
			par = par.Parent
205
			if par:IsA(class) then
206
				ret = par
207
				break
208
			end
209
		until par == nil
210
	end)
211
	return ret
212
end
213
function hurt(hit, dmg)
214
	--pcall(function()
215
		local hum = hit.Parent:FindFirstChildOfClass("Humanoid")
216
		if hum then
217
			if hum.Parent ~= char then
218
				hum.Health = hum.Health - dmg
219
				hum.Health = hum.Health - dmg
220
				soundeffect(soundlist.Headshot, 1.5, 1, workspace.CurrentCamera)
221
				return true
222
			end
223
		end
224
	--end)
225
end
226
	--[[ Actual script :OOOOOOOOOO ]]--
227
addattack(Enum.KeyCode.G, function()
228
	if not timeslow and not timefast and not reversing then
229
		local p = Instance.new("Part")
230
		p.Anchored = true
231
		p.Material = "Glass"
232
		p.Size = Vector3.new(0.1,0.1,0.1)
233
		p.BrickColor = BrickColor.new("Toothpaste")
234
		p.CanCollide = false
235
		p.CFrame = char.HumanoidRootPart.CFrame
236
		local m = Instance.new("SpecialMesh")
237
		m.MeshType = "Sphere"
238
		m.Parent = p
239
		p.Parent = char
240
		spawn(function()
241
		for i = 1, 50 do
242
			p.Transparency = i/50
243
			p.Size = p.Size:Lerp(Vector3.new(40,40,40),0.1)
244
			p.CFrame = char.HumanoidRootPart.CFrame
245
			swait()
246
		end
247
		p:Destroy()
248
		end)
249
		if not timestop then
250
			local s = Instance.new("Sound")
251
			s.Volume = 3
252
			s.Name = "dont"
253
			s.SoundId = soundlist.TimeStop
254
			s.Parent = char
255
			s:Play()
256
			dcon = workspace.DescendantAdded:connect(function(obj)
257
			pcall(function()
258
				swait()
259
				local ok = true
260
				for i,v in pairs(getascendants(obj)) do
261
					if v.Name:lower():find("ignoremodel") then
262
						ok = false
263
					end
264
				end
265
				if obj:IsA("BasePart") and ok and not findascendant(obj, "Tool") and not findascendant(obj, "HopperBin") and not findascendant(obj, "Camera") then
266
					if not obj.Anchored and obj.Name ~= "HumanoidRootPart" then
267
						table.insert(unfreeze, obj)
268
						obj.Anchored = true
269
					end
270
				end
271
				if obj:IsA("Sound") and obj.Name ~= "dont" then
272
					if obj.Playing then
273
					obj:Pause()
274
					table.insert(unfreeze, obj)
275
					end
276
				end
277
				if obj:IsA("Humanoid") then
278
					local last = obj.Health
279
					local always = last
280
					local con = obj.HealthChanged:connect(function(health)
281
						if last-health > 0 then
282
						table.insert(healthstuff, {hum = obj, change = last-health})
283
						end
284
						last = health
285
						obj.Health = always
286
					end)
287
					table.insert(connections, con)
288
				end
289
			end)
290
		end)
291
		for i,v in pairs(workspace:GetDescendants()) do
292
			pcall(function()
293
				if v:IsA("BasePart") then
294
				local ok = true
295
				for i,e in pairs(getascendants(v)) do
296
					if e.Name:lower():find("ignore_model") then
297
						ok = false
298
					end
299
					if e:IsA("Camera") then
300
						ok = false
301
					end
302
				end
303
				if not v.Anchored and ok and v.Parent ~= char and not findascendant(v, "Camera") and not findascendant(v, "Tool") and not findascendant(v, "HopperBin") then
304
					local ok = true
305
					if v.Parent:IsA("Accessory") then ok = false end
306
					if ok and v.Name ~= "HumanoidRootPart" then
307
					v.Anchored = true
308
					table.insert(unfreeze, v)
309
					end
310
				end
311
				end
312
			end)
313
			pcall(function()
314
				if v:IsA("Sound") and v.Name ~= "dont" then
315
					if v.Playing then
316
					v:Pause()
317
					table.insert(unfreeze, v)
318
					end
319
				end
320
			end)
321
			pcall(function()
322
				if v:IsA("Humanoid") then
323
					local last = v.Health
324
					local always = last
325
					local con = v.HealthChanged:connect(function(health)
326
						if last-health > 0 then
327
						table.insert(healthstuff, {hum = v, change = last-health})
328
						end
329
						last = health
330
						v.Health = always
331
					end)
332
					table.insert(connections, con)
333
				end
334
			end)
335
		end
336
		timestop = true
337
		local cor = Instance.new("ColorCorrectionEffect")
338
		cor.Name = "tstopef"
339
		cor.Parent = game:GetService('Lighting')
340
		for i = 1, 50 do
341
			cor.Saturation = Vector3.new(cor.Saturation,0,0):Lerp(Vector3.new(-5,0,0), 0.05).X
342
			swait()
343
		end
344
		game.Debris:AddItem(s, 2)
345
	else
346
		local s = Instance.new("Sound")
347
		s.Volume = 7
348
		s.Name = "dont"
349
		s.SoundId = soundlist.TimeResume
350
		s.Parent = char
351
		s:Play()
352
		local cor = game:GetService('Lighting'):FindFirstChild("tstopef")
353
		if cor then
354
		for i = 1, 50 do
355
			cor.Saturation = Vector3.new(cor.Saturation,0,0):Lerp(Vector3.new(0,0,0), 0.05).X
356
			swait()
357
		end
358
		cor:Destroy()
359
		end
360
		game.Debris:AddItem(s, 2)
361
		timestop = false
362
		for i,v in pairs(unfreeze) do
363
			pcall(function()
364
				v.Anchored = false
365
			end)
366
			pcall(function()
367
				v:Resume()
368
			end)
369
		end
370
		for i,v in pairs(connections) do
371
			pcall(function()
372
				v:disconnect()
373
			end)
374
		end
375
		for i,v in pairs(healthstuff) do
376
			pcall(function()
377
				local hum = v.hum
378
				hum.Health = hum.Health - v.change
379
				if hum.Parent:FindFirstChild("Health") then
380
					pcall(function()
381
						hum.Parent.Health.Disabled = false
382
					end)
383
				end
384
			end)
385
		end
386
		pcall(function()
387
			dcon:disconnect()
388
		end)
389
                healthstuff = {}
390
		unfreeze = {}
391
		end
392
	end
393
end)
394
local humanoiddata = {}
395
local bodymoverdata = {}
396
local dcon2
397
local connectionsdata = {}
398
addattack(Enum.KeyCode.H, function()
399
	if not timeslow and not timestop and not reversing then
400
		local p = Instance.new("Part")
401
		p.Anchored = true
402
		p.Material = "Glass"
403
		p.Size = Vector3.new(0.1,0.1,0.1)
404
		p.BrickColor = BrickColor.new("Toothpaste")
405
		p.CanCollide = false
406
		p.CFrame = char.HumanoidRootPart.CFrame
407
		local m = Instance.new("SpecialMesh")
408
		m.MeshType = "Sphere"
409
		m.Parent = p
410
		p.Parent = char
411
		spawn(function()
412
		for i = 1, 50 do
413
			p.Transparency = i/50
414
			p.Size = p.Size:Lerp(Vector3.new(40,40,40),0.1)
415
			p.CFrame = char.HumanoidRootPart.CFrame
416
			swait()
417
		end
418
		p:Destroy()
419
		end)
420
		if not timefast then
421
			timefast = true
422
			soundeffect(soundlist.TimeFast, 1.5, 1, char)
423
			for i,v in pairs(workspace:GetDescendants()) do
424
				if v:IsA("Humanoid") then
425
					table.insert(humanoiddata, {Hum = v, WS = v.WalkSpeed, JP = v.JumpPower})
426
					for _,track in pairs(v:GetPlayingAnimationTracks()) do
427
					end
428
					local con = v.AnimationPlayed:connect(function(track)
429
					end)
430
					table.insert(connections, con)
431
				end
432
				if v:IsA("BodyVelocity") then
433
					table.insert(bodymoverdata, {Mover = v, Vel = v.Velocity})
434
				end
435
				if v:IsA("BodyPosition") then
436
					table.insert(bodymoverdata, {Mover = v, Vel = v.P})
437
				end
438
				if v.Name == "HumanoidRootPart" and v:IsA("BasePart") then
439
				end
440
				if v:IsA("Sound") and v.Name ~= "dont" then
441
					table.insert(sounddata, {Sound = v, Speed = v.PlaybackSpeed})
442
				end
443
			end
444
			dcon2 = workspace.DescendantAdded:connect(function(v)
445
				swait(2)
446
				if v:IsA("Humanoid") then
447
					table.insert(humanoiddata, {Hum = v, WS = v.WalkSpeed, JP = v.JumpPower})
448
					for _,track in pairs(v:GetPlayingAnimationTracks()) do
449
						track:AdjustSpeed(1.4)
450
					end
451
					local con = v.AnimationPlayed:connect(function(track)
452
						track:AdjustSpeed(1.4)
453
					end)
454
					table.insert(connections, con)
455
				end
456
				if v:IsA("BodyVelocity") then
457
					table.insert(bodymoverdata, {Mover = v, Vel = v.Velocity})
458
				end
459
				if v:IsA("BodyPosition") then
460
					table.insert(bodymoverdata, {Mover = v, Vel = v.P})
461
				end
462
				if v.Name == "HumanoidRootPart" and v:IsA("BasePart") then
463
				end
464
				if v:IsA("Sound") and v.Name ~= "dont" then
465
					table.insert(sounddata, {Sound = v, Speed = v.PlaybackSpeed})
466
				end
467
			end)
468
		else
469
			timefast = false
470
			soundeffect(soundlist.TimeResume, 1.5, 1, char)
471
			for i,v in pairs(humanoiddata) do
472
				pcall(function()
473
					v["Hum"].WalkSpeed = v["WS"]
474
					v["Hum"].JumpPower = v["JP"]
475
				end)
476
			end
477
			for i,v in pairs(bodymoverdata) do
478
				pcall(function()
479
					if v["Mover"]:IsA("BodyVelocity") then
480
						v["Mover"].Velocity = v["Vel"]
481
					end
482
					if v["Mover"]:IsA("BodyPosition") then
483
						v["Mover"].P = v["Vel"]
484
					end
485
				end)
486
			end
487
			for i,v in pairs(sounddata) do
488
				pcall(function()
489
					v["Sound"].PlaybackSpeed = v["Speed"]
490
				end)
491
			end
492
			for i,v in pairs(connections) do
493
				pcall(function()
494
					v:disconnect()
495
				end)
496
			end
497
			connections = {}
498
			pcall(function()
499
				dcon2:disconnect()
500
			end)
501
			humanoiddata = {}
502
		end
503
	end
504
end)
505
local reversedata = {}
506
local saved = false
507
addattack(Enum.KeyCode.C, function()
508
	if not timestop and not timeslow and not timefast then
509
	if not saved then
510
		saved = true
511
		for i,v in pairs(workspace:GetDescendants()) do
512
			end
513
	else
514
		reversing = true
515
		saved = false
516
		soundeffect(soundlist.TimeReverse, 2, 1, workspace)
517
		for i = 1, 10 do
518
			for _,v in pairs(reversedata) do
519
				local obj = v.obj
520
				local cf = v.cf					obj.Anchored = true
521
				end
522
			end
523
			swait()
524
		end
525
		char.HumanoidRootPart.Velocity = Vector3.new(0,0,0)
526
		reversedata = {}
527
		reversing = false
528
	end
529
	end)