View difference between Paste ID: aCy32EjM and LnVXRS7h
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
----------------------------------
25
local LocalPlayer = game:GetService("Players").LocalPlayer
26
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:wait()
27
28
Character.Head.Transparency = 1
29
 
30
local Orb = Instance.new("Part", Character)
31
Orb.Name = "Orb"
32
33
Orb.CanCollide = false
34
Orb.BrickColor = BrickColor.new("Really black")
35
Orb.Transparency = 0
36
Orb.Material = "Plastic"
37
Orb.Size = Vector3.new(1, 1, 1)
38
39
40
local M = Instance.new("SpecialMesh")
41
M.Parent = Orb
42
M.MeshId = "http://www.roblox.com/asset/?id=83499032"
43
M.Scale = Vector3.new(1,1,1)
44
45
 
46
local Weld = Instance.new("Weld", Orb)
47
Weld.Part0 = Character.Head
48
Weld.Part1 = Orb
49
Weld.C1 = CFrame.new(0, -0.1, 0)
50
----------------------------------
51
local Orbd = Instance.new("Part", Character)
52
Orbd.Name = "Orbd"
53
Orbd.Shape = Enum.PartType.Ball
54
Orbd.CanCollide = false
55
	Orbd.BrickColor = BrickColor.new("Really red")
56
Orbd.Transparency = 0
57
Orbd.Material = "Neon"
58
Orbd.Size = Vector3.new(0.1, 0.1, 0.1)
59
Orbd.TopSurface = Enum.SurfaceType.Smooth
60
Orbd.BottomSurface = Enum.SurfaceType.Smooth
61
62
local Weld = Instance.new("Weld", Orbd)
63
Weld.Part0 = Character.Head
64
Weld.Part1 = Orbd
65
Weld.C1 = CFrame.new(-0.2, -0.2, 0.5)
66
----------------------------------
67
local p = game.Players.LocalPlayer
68
local char = p.Character
69
local mouse = p:GetMouse()
70
local larm = char["Left Arm"]
71
local rarm = char["Right Arm"]
72
local lleg = char["Left Leg"]
73
local rleg = char["Right Leg"]
74
local hed = char.Head
75
local torso = char.Torso
76
local hum = char.Humanoid
77
local cam = game.Workspace.CurrentCamera
78
local root = char.HumanoidRootPart
79
local rj = root.RootJoint
80
local deb = false
81
local shot = 0
82
local stanceToggle = "Idle1"
83
local l = game:GetService("Lighting")
84
local rs = game:GetService("RunService").RenderStepped
85
local hb = game:GetService("RunService").Heartbeat
86
local Stepped = game:GetService("RunService").Stepped
87
hum.JumpPower = 100
88
hed.face:Remove()
89
char["Body Colors"].HeadColor = BrickColor.new("Really black")
90
fat = Instance.new("BindableEvent", script)
91
fat.Name = "Heartbeat"
92
script:WaitForChild("Heartbeat")
93
frame = 0.033333333333333
94
tf = 0
95
allowframeloss = false
96
tossremainder = false
97
lastframe = tick()
98
script.Heartbeat:Fire()
99
game:GetService("RunService").Heartbeat:connect(function(s, p)
100
	
101
	tf = tf + s
102
	if frame <= tf then
103
		if allowframeloss then
104
			script.Heartbeat:Fire()
105
			lastframe = tick()
106
		else
107
			for i = 1, math.floor(tf / frame) do
108
				script.Heartbeat:Fire()
109
			end
110
			lastframe = tick()
111
		end
112
		if tossremainder then
113
			tf = 0
114
		else
115
			tf = tf - frame * math.floor(tf / frame)
116
		end
117
	end
118
end
119
)
120
for i,v in pairs(hed:GetChildren()) do
121
	if v:IsA("Sound") then
122
		v:Destroy()
123
	end
124
end
125
Debounces = {CanAttack = true, CanJoke = true, NoIdl = false, RPunch = false, RPunched = false, LPunch = false, LPunched = false, Slashing = false, Slashed = false, ks = false, ks2 = false}
126
weld5 = function(part0, part1, c0, c1)
127
	
128
	weeld = Instance.new("Weld", part0)
129
	weeld.Part0 = part0
130
	weeld.Part1 = part1
131
	weeld.C0 = c0
132
	weeld.C1 = c1
133
	return weeld
134
end
135
136
NewPart = function(prnt, siz, cf, trans, anc, mat, col)
137
	
138
	local prt = Instance.new("Part")
139
	prt.Parent = prnt
140
	prt.Name = "Part"
141
	prt.Size = siz
142
	prt.CanCollide = false
143
	prt.Anchored = anc
144
	prt.Locked = true
145
	prt.Transparency = trans
146
	prt.TopSurface = 10
147
	prt.BottomSurface = 10
148
	prt.FrontSurface = 10
149
	prt.BackSurface = 10
150
	prt.LeftSurface = 10
151
	prt.RightSurface = 10
152
	prt:BreakJoints()
153
	if not cf then
154
		prt.CFrame = CFrame.new(30, 10, 30)
155
		prt.Material = mat
156
		prt.BrickColor = BrickColor.new(col)
157
		m = Instance.new("SpecialMesh", prt)
158
		m.MeshType = 6
159
		return prt
160
	end
161
end
162
163
lerp = function(a, b, t)
164
	
165
	return a + (b - a) * t
166
end
167
168
slerp = function(a, b, t)
169
	
170
	dot = a:Dot(b)
171
	if t > 0.5 or not a then
172
		do return dot <= 0.99999 and dot >= -0.99999 or b end
173
		r = math.acos(dot)
174
		do return (a * math.sin((1 - t) * r) + b * math.sin(t * r)) / math.sin(r) end
175
	end
176
end
177
178
matrixInterpolate = function(a, b, t)
179
	
180
	local ax, ay, az, a00, a01, a02, a10, a11, a12, a20, a21, a22 = a:components()
181
	local bx, by, bz, b00, b01, b02, b10, b11, b12, b20, b21, b22 = b:components()
182
	local v0 = lerp(Vector3.new(ax, ay, az), Vector3.new(bx, by, bz), t)
183
	local v1 = slerp(Vector3.new(a00, a01, a02), Vector3.new(b00, b01, b02), t)
184
	local v2 = slerp(Vector3.new(a10, a11, a12), Vector3.new(b10, b11, b12), t)
185
	local v3 = slerp(Vector3.new(a20, a21, a22), Vector3.new(b20, b21, b22), t)
186
	local t = v1:Dot(v2)
187
	if t >= 0 and t ~= 0 and t <= 0 then
188
		return CFrame.new()
189
	end
190
	return CFrame.new(v0.x, v0.y, v0.z, v1.x, v1.y, v1.z, v2.x, v2.y, v2.z, v3.x, v3.y, v3.z)
191
end
192
193
genWeld = function(a, b)
194
	
195
	local w = Instance.new("Weld", a)
196
	w.Part0 = a
197
	w.Part1 = b
198
	return w
199
end
200
201
weld = function(a, b)
202
	
203
	local weld = Instance.new("Weld")
204
	weld.Name = "W"
205
	weld.Part0 = a
206
	weld.Part1 = b
207
	weld.C0 = a.CFrame:inverse() * b.CFrame
208
	weld.Parent = a
209
	return weld
210
end
211
212
Lerp = function(c1, c2, al)
213
	
214
	local com1 = {c1.X, c1.Y, c1.Z, c1:toEulerAnglesXYZ()}
215
	local com2 = {c2.X, c2.Y, c2.Z, c2:toEulerAnglesXYZ()}
216
	for i,v in pairs(com1) do
217
		com1[i] = v + (com2[i] - v) * al
218
	end
219
	return CFrame.new(com1[1], com1[2], com1[3]) * CFrame.Angles(select(4, unpack(com1)))
220
end
221
222
newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
223
	
224
	local wld = Instance.new("Weld", wp1)
225
	wld.Part0 = wp0
226
	wld.Part1 = wp1
227
	wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
228
end
229
230
newWeld(torso, larm, -1.5, 0.5, 0)
231
larm.Weld.C1 = CFrame.new(0, 0.5, 0)
232
newWeld(torso, rarm, 1.5, 0.5, 0)
233
rarm.Weld.C1 = CFrame.new(0, 0.5, 0)
234
newWeld(torso, hed, 0, 1.5, 0)
235
newWeld(torso, lleg, -0.5, -1, 0)
236
lleg.Weld.C1 = CFrame.new(0, 1, 0)
237
newWeld(torso, rleg, 0.5, -1, 0)
238
rleg.Weld.C1 = CFrame.new(0, 1, 0)
239
newWeld(root, torso, 0, -1, 0)
240
torso.Weld.C1 = CFrame.new(0, -1, 0)
241
z = Instance.new("Sound", char)
242
z.SoundId = "rbxassetid://511394713"
243
z.Looped = true
244
z.Pitch = 0.98
245
z.Volume = 1
246
wait(0.1)
247
z:Play()
248
New = function(Object, Parent, Name, Data)
249
	
250
	local Object = Instance.new(Object)
251
	if not Data then
252
		for Index,Value in pairs({}) do
253
			Object[Index] = Value
254
		end
255
		Object.Parent = Parent
256
		Object.Name = Name
257
		return Object
258
	end
259
end
260
261
part1 = Instance.new("Part", rarm)
262
part1.Name = "Arbiter"
263
part1.BrickColor = BrickColor.new("Really black")
264
part1.CFrame = rarm.CFrame
265
part1.Material = "Metal"
266
part1.Anchored = false
267
part1.CanCollide = false
268
part1.Locked = true
269
part1.Size = Vector3.new(0.25, 1.05, 5.9)
270
mesh1 = Instance.new("SpecialMesh", part1)
271
mesh1.MeshType = Enum.MeshType.FileMesh
272
mesh1.MeshId = "rbxassetid://489918296"
273
mesh1.Scale = Vector3.new(0.015, 0.015, 0.015)
274
local cor = Instance.new("Part", rarm)
275
cor.Name = "Thingy"
276
cor.Locked = true
277
cor.TopSurface = 0
278
cor.BottomSurface = 0
279
cor.CanCollide = false
280
cor.Size = Vector3.new(0.2, 0.2, 0.2)
281
cor.Transparency = 1
282
corw = Instance.new("Weld", cor)
283
corw.Part0 = rarm
284
corw.Part1 = cor
285
corw.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
286
corw.C1 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
287
weld1 = Instance.new("Weld", cor)
288
weld1.Part0 = cor
289
weld1.Part1 = part1
290
weld1.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
291
weld1.C1 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(80), math.rad(90))
292
hitb = Instance.new("Part", cor)
293
hitb.Name = "Thingy2"
294
hitb.Locked = true
295
hitb.TopSurface = 0
296
hitb.BottomSurface = 0
297
hitb.CanCollide = false
298
hitb.Size = Vector3.new(4, 1, 3.5)
299
hitb.Transparency = 1
300
weld4 = Instance.new("Weld", cor)
301
weld4.Part0 = hitb
302
weld4.Part1 = cor
303
weld4.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
304
weld4.C1 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
305
local animpose = "Idle1"
306
local lastanimpose = "Idle1"
307
local grab = false
308
local Smooth = 1
309
local sine = 0
310
local change = 1
311
local val = 0
312
local ffing = false
313
mod4 = Instance.new("Model", char)
314
ptez = {0.7, 0.8, 0.9, 1}
315
FindNearestTorso = function(Position, Distance, SinglePlayer)
316
	
317
	if SinglePlayer.Torso.CFrame.p - Position.magnitude >= Distance then
318
		do return not SinglePlayer end
319
		do
320
			local List = {}
321
			for i,v in pairs(workspace:GetChildren()) do
322
				if v:IsA("Model") and v:findFirstChild("Torso") and v ~= char and v.Torso.Position - Position.magnitude <= Distance then
323
					table.insert(List, v)
324
				end
325
			end
326
			do return List end
327
			-- DECOMPILER ERROR: 3 unprocessed JMP targets
328
		end
329
	end
330
end
331
332
Slam = function()
333
	
334
	local part = Instance.new("Part", mod4)
335
	part.Anchored = true
336
	part.CanCollide = false
337
	part.FormFactor = "Custom"
338
	part.Size = Vector3.new(0.2, 0.2, 0.2)
339
	part.CFrame = root.CFrame * CFrame.new(0, -2.8, -1.4) * CFrame.Angles(math.rad(90), 0, 0)
340
	part.Transparency = 0.7
341
	part.BrickColor = BrickColor.new("Really black")
342
	mesh = Instance.new("SpecialMesh", part)
343
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
344
	mesh.Scale = Vector3.new(3, 3, 3)
345
	local part2 = Instance.new("Part", mod4)
346
	part2.Anchored = true
347
	part2.CanCollide = false
348
	part2.FormFactor = "Custom"
349
	part2.Size = Vector3.new(0.2, 0.2, 0.2)
350
	part2.CFrame = root.CFrame * CFrame.new(0, -2.4, -1.6)
351
	part2.Transparency = 0.7
352
	part2.BrickColor = BrickColor.new("Lime green")
353
	mesh2 = Instance.new("SpecialMesh", part2)
354
	mesh2.MeshId = "http://www.roblox.com/asset/?id=20329976"
355
	mesh2.Scale = Vector3.new(3, 1.5, 3)
356
	x = Instance.new("Sound", larm)
357
	x.SoundId = "http://www.roblox.com/asset/?id=142070127"
358
	x.Pitch = ptez[math.random(1, #ptez)]
359
	x.Volume = 1
360
	x1 = Instance.new("Sound", larm)
361
	x1.SoundId = "http://www.roblox.com/asset/?id=206082327"
362
	x1.Pitch = ptez[math.random(1, #ptez)]
363
	x1.Volume = 1
364
	x:Play()
365
	x1:Play()
366
	for i,v in pairs(FindNearestTorso(torso.CFrame.p, 4)) do
367
		if v:FindFirstChild("Humanoid") then
368
			v.Humanoid:TakeDamage(math.random(30, 45))
369
		end
370
	end
371
	coroutine.resume(coroutine.create(function()
372
		
373
		for i = 0, 0.62, 0.13 do
374
			fat.Event:wait()
375
			part.CFrame = part.CFrame
376
			part.Transparency = i
377
			mesh.Scale = mesh.Scale + Vector3.new(0.4, 0.4, 0.4)
378
			part2.CFrame = part2.CFrame
379
			part2.Transparency = i
380
			mesh2.Scale = mesh2.Scale + Vector3.new(0.4, 0.2, 0.4)
381
		end
382
		part.Parent = nil
383
		part2.Parent = nil
384
		x:Destroy()
385
	end
386
))
387
end
388
389
wPart = function(x, y, z, color, tr, cc, an, parent)
390
	
391
	local wp = Instance.new("WedgePart", parent or Weapon)
392
	wp.formFactor = "Custom"
393
	wp.Size = Vector3.new(x, y, z)
394
	wp.BrickColor = BrickColor.new(color)
395
	wp.CanCollide = cc
396
	wp.Transparency = tr
397
	wp.Anchored = an
398
	wp.TopSurface = 0
399
	return wp
400
end
401
402
Mesh = function(par, num, x, y, z)
403
	
404
	local msh = _
405
	if num == 1 then
406
		msh = Instance.new("CylinderMesh", par)
407
	else
408
		if num == 2 then
409
			msh = Instance.new("SpecialMesh", par)
410
			msh.MeshType = 3
411
		else
412
			if num == 3 then
413
				msh = Instance.new("BlockMesh", par)
414
			else
415
				if num == 4 then
416
					msh = Instance.new("SpecialMesh", par)
417
					msh.MeshType = "Torso"
418
				else
419
					if type(num) == "string" then
420
						msh = Instance.new("SpecialMesh", par)
421
						msh.MeshId = num
422
					end
423
				end
424
			end
425
		end
426
	end
427
	msh.Scale = Vector3.new(x, y, z)
428
	return msh
429
end
430
431
local CFrameFromTopBack = function(at, top, back)
432
	
433
	local right = top:Cross(back)
434
	return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
435
end
436
437
Triangle = function(a, b, c)
438
	
439
	local edg1 = c - a:Dot(b - a.unit)
440
	local edg2 = a - b:Dot(c - b.unit)
441
	local edg3 = b - c:Dot(a - c.unit)
442
	if edg1 <= b - a.magnitude and edg1 >= 0 then
443
		a = a
444
	else
445
		-- DECOMPILER ERROR at PC35: Overwrote pending register: R1 in 'AssignReg'
446
447
		if edg2 <= c - b.magnitude and edg2 >= 0 then
448
			a = b
449
		else
450
			-- DECOMPILER ERROR at PC46: Overwrote pending register: R2 in 'AssignReg'
451
452
			-- DECOMPILER ERROR at PC47: Overwrote pending register: R1 in 'AssignReg'
453
454
			if edg3 <= a - c.magnitude and edg3 >= 0 then
455
				a = c
456
			else
457
				print("unreachable")
458
			end
459
		end
460
	end
461
	local len1 = c - a:Dot(b - a.unit)
462
	local len2 = b - a.magnitude - len1
463
	local width = a + b - a.unit * len1 - c.magnitude
464
	local maincf = CFrameFromTopBack(a, b - a:Cross(c - b).unit, -b - a.unit)
465
	local list = {}
466
	if len1 > 0.01 then
467
		local w1 = wPart(0, 0, 0, "Lime green", 0.5, false, true, char)
468
		do
469
			local sz = Vector3.new(0.2, width, len1)
470
			w1.Size = sz
471
			local sp = Mesh(w1, 2, 0, 0, 0)
472
			sp.MeshType = "Wedge"
473
			sp.Scale = Vector3.new(0, 1, 1) * sz / w1.Size
474
			w1:BreakJoints()
475
			w1.Anchored = true
476
			w1.Transparency = 0.7
477
			Spawn(function()
478
		
479
		for i = 0, 1, 0.1 do
480
			fat.Event:wait()
481
			w1.Transparency = w1.Transparency + 0.03
482
		end
483
	end
484
)
485
			w1.CFrame = maincf * CFrame.Angles(math.pi, 0, math.pi / 2) * CFrame.new(0, width / 2, len1 / 2)
486
			table.insert(list, w1)
487
		end
488
	end
489
	do
490
		if len2 > 0.01 then
491
			local w2 = wPart(0, 0, 0, "Lime green", 0.5, false, true, char)
492
			local sz = Vector3.new(0.2, width, len2)
493
			w2.Size = sz
494
			local sp = Mesh(w2, 2, 0, 0, 0)
495
			sp.MeshType = "Wedge"
496
			sp.Scale = Vector3.new(0, 1, 1) * sz / w2.Size
497
			w2:BreakJoints()
498
			w2.Anchored = true
499
			w2.Transparency = 0.7
500
			Spawn(function()
501
		
502
		for i = 0, 1, 0.1 do
503
			fat.Event:wait()
504
			w2.Transparency = w2.Transparency + 0.03
505
		end
506
	end
507
)
508
			w2.CFrame = maincf * CFrame.Angles(math.pi, math.pi, -math.pi / 2) * CFrame.new(0, width / 2, -len1 - len2 / 2)
509
			table.insert(list, w2)
510
		end
511
		do
512
			return unpack(list)
513
		end
514
	end
515
end
516
517
trail = function(p, t, h)
518
	
519
	Spawn(function()
520
		
521
		local blcf = p.CFrame
522
		local scfr = blcf
523
		for i = 1, t do
524
			local blcf = p.CFrame
525
			if scfr and p.Position - scfr.p.magnitude > 0.1 then
526
				local a, b = Triangle(scfr * CFrame.new(0, h / 2, 0).p, scfr * CFrame.new(0, -h / 2, 0).p, blcf * CFrame.new(0, h / 2, 0).p)
527
				if a then
528
					game.Debris:AddItem(a, 1)
529
				end
530
				if b then
531
					game.Debris:AddItem(b, 1)
532
				end
533
				local a, b = Triangle(blcf * CFrame.new(0, h / 2, 0).p, blcf * CFrame.new(0, -h / 2, 0).p, scfr * CFrame.new(0, -h / 2, 0).p)
534
				if a then
535
					game.Debris:AddItem(a, 1)
536
				end
537
				if b then
538
					game.Debris:AddItem(b, 1)
539
				end
540
				scfr = blcf
541
			else
542
				do
543
					do
544
						if not scfr then
545
							scfr = blcf
546
						end
547
						fat.Event:wait()
548
						-- DECOMPILER ERROR at PC120: LeaveBlock: unexpected jumping out DO_STMT
549
550
						-- DECOMPILER ERROR at PC120: LeaveBlock: unexpected jumping out IF_ELSE_STMT
551
552
						-- DECOMPILER ERROR at PC120: LeaveBlock: unexpected jumping out IF_STMT
553
554
					end
555
				end
556
			end
557
		end
558
		scfr = nil
559
	end
560
)
561
end
562
563
rarm.Touched:connect(function(ht)
564
	
565
	hit = ht.Parent
566
	if ht and hit:IsA("Model") and hit:FindFirstChild("Humanoid") and hit.Name ~= p.Name and Debounces.RPunch == true and Debounces.RPunched == false then
567
		Debounces.RPunched = true
568
		hit:FindFirstChild("Humanoid"):TakeDamage(math.random(5, 8))
569
		if Debounces.ks == true then
570
			z = Instance.new("Sound", hed)
571
			z.SoundId = "rbxassetid://169380525"
572
			z.Pitch = ptz[math.random(1, #ptz)]
573
			z.Volume = 1
574
			z:Play()
575
		end
576
		wait(0.4)
577
		Debounces.RPunched = false
578
	end
579
	if ht and hit:IsA("Hat") and hit.Parent.Name ~= p.Name and hit.Parent:FindFirstChild("Humanoid") and Debounces.RPunch == true and Debounces.RPunched == false then
580
		Debounces.RPunched = true
581
		hit.Parent:FindFirstChild("Humanoid"):TakeDamage(math.random(5, 8))
582
		if Debounces.ks == true then
583
			z = Instance.new("Sound", hed)
584
			z.SoundId = "rbxassetid://169380525"
585
			z.Pitch = ptz[math.random(1, #ptz)]
586
			z.Volume = 1
587
			z:Play()
588
		end
589
		wait(0.4)
590
		Debounces.RPunched = false
591
	end
592
end
593
)
594
larm.Touched:connect(function(ht)
595
	
596
	hit = ht.Parent
597
	if ht and hit:IsA("Model") and hit:FindFirstChild("Humanoid") and hit.Name ~= p.Name and Debounces.LPunch == true and Debounces.LPunched == false then
598
		Debounces.LPunched = true
599
		hit:FindFirstChild("Humanoid"):TakeDamage(math.random(4, 8))
600
		hit:FindFirstChild("Torso").Velocity = hit:FindFirstChild("Torso").CFrame.lookVector * -160
601
		if Debounces.ks2 == true then
602
			z = Instance.new("Sound", hed)
603
			z.SoundId = "rbxassetid://169380525"
604
			z.Pitch = ptz[math.random(1, #ptz)]
605
			z.Volume = 1
606
			z:Play()
607
		end
608
		wait(0.4)
609
		Debounces.LPunched = false
610
	end
611
	if ht and hit:IsA("Hat") and hit.Parent.Name ~= p.Name and hit.Parent:FindFirstChild("Humanoid") and Debounces.LPunch == true and Debounces.LPunched == false then
612
		Debounces.LPunched = true
613
		hit.Parent:FindFirstChild("Humanoid"):TakeDamage(math.random(4, 8))
614
		if Debounces.ks2 == true then
615
			z = Instance.new("Sound", hed)
616
			z.SoundId = "rbxassetid://169380525"
617
			z.Pitch = ptz[math.random(1, #ptz)]
618
			z.Volume = 1
619
			z:Play()
620
		end
621
		wait(0.4)
622
		Debounces.LPunched = false
623
	end
624
end
625
)
626
local acos = math.acos
627
local sqrt = math.sqrt
628
local Vec3 = Vector3.new
629
local fromAxisAngle = CFrame.fromAxisAngle
630
local toAxisAngle = function(CFr)
631
	
632
	local X, Y, Z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = CFr:components()
633
	local Angle = math.acos((R00 + R11 + R22 - 1) / 2)
634
	local A = R21 - R12 ^ 2 + R02 - R20 ^ 2 + R10 - R01 ^ 2
635
	if A ~= 0 or not 1e-05 then
636
		local B = R21 - R12 ^ 2 + R02 - R20 ^ 2 + R10 - R01 ^ 2
637
		if B ~= 0 or not 1e-05 then
638
			local C = R21 - R12 ^ 2 + R02 - R20 ^ 2 + R10 - R01 ^ 2
639
			if C ~= 0 or not 1e-05 then
640
				local x = (R21 - R12) / sqrt(A)
641
				local y = (R02 - R20) / sqrt(B)
642
				local z = (R10 - R01) / sqrt(C)
643
				return Vec3(x, y, z), Angle
644
			end
645
		end
646
	end
647
end
648
649
ApplyTrig = function(Num, Func)
650
	
651
	local Min, Max = Func(0), Func(1)
652
	local i = Func(Num)
653
	return (i - Min) / (Max - Min)
654
end
655
656
LerpCFrame = function(CFrame1, CFrame2, Num)
657
	
658
	local Vec, Ang = toAxisAngle(CFrame1:inverse() * CFrame2)
659
	return CFrame1 * fromAxisAngle(Vec, Ang * Num) + (CFrame2.p - CFrame1.p) * Num
660
end
661
662
Crater = function(Torso, Radius)
663
	
664
	Spawn(function()
665
		
666
		local Ray = Ray.new(Torso.Position, Vector3.new(0, -1, 0) * 10)
667
		local Ignore = {}
668
		for i,v in pairs(game:GetService("Players"):GetPlayers()) do
669
			if v.Character ~= nil then
670
				Ignore[#Ignore + 1] = v.Character
671
			end
672
		end
673
		local Hit, Pos, SurfaceNorm = Workspace:FindPartOnRayWithIgnoreList(Ray, Ignore)
674
		if Hit == nil then
675
			return 
676
		end
677
		local Parts = {}
678
		for i = 1, 360, 10 do
679
			local P = Instance.new("Part", Torso.Parent)
680
			P.Anchored = true
681
			P.FormFactor = "Custom"
682
			P.BrickColor = Hit.BrickColor
683
			P.Material = Hit.Material
684
			P.TopSurface = "Smooth"
685
			P.BottomSurface = "Smooth"
686
			P.Size = Vector3.new(5, 10, 10) * (math.random(80, 100) / 100)
687
			P.CFrame = (CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 7, 0)) * CFrame.Angles(math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)))
688
			Parts[#Parts + 1] = {P, P.CFrame, (CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 1, 0)) * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, 0, -Radius) * CFrame.Angles(math.rad(math.random(-50, -20)), math.rad(math.random(-15, 15)), math.rad(math.random(-15, 15))), P.Size}
689
			if math.random(0, 5) == 0 then
690
				local P = Instance.new("Part", Torso.Parent)
691
				P.Anchored = true
692
				P.FormFactor = "Custom"
693
				P.BrickColor = Hit.BrickColor
694
				P.Material = Hit.Material
695
				P.TopSurface = "Smooth"
696
				P.BottomSurface = "Smooth"
697
				P.Size = Vector3.new(2, 2, 2) * (math.random(80, 100) / 100)
698
				P.CFrame = (CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 2.5, 0)) * CFrame.Angles(math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)))
699
				Parts[#Parts + 1] = {P, P.CFrame, CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, 0, -Radius - 8) * CFrame.Angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90))), P.Size}
700
			end
701
		end
702
		for i = 0, 1, 0.05 do
703
			for i2,v in pairs(Parts) do
704
				v[1].CFrame = LerpCFrame(v[2], v[3], ApplyTrig(i, math.cos))
705
			end
706
			wait(0.02)
707
		end
708
		for i,v in pairs(Parts) do
709
			if v[1].Size.X > 2.1 then
710
				v[1].CFrame = v[1].CFrame + Vector3.new(0, 2, 0)
711
			end
712
			v[1].Anchored = false
713
		end
714
		for i = 0, 1, 0.05 do
715
			for i2,v in pairs(Parts) do
716
				v[1].Transparency = i
717
				if i == 1 then
718
					v[1]:Destroy()
719
				else
720
					if i >= 0.25 then
721
						v[1].CanCollide = false
722
					end
723
				end
724
			end
725
			wait(0.02)
726
		end
727
		Parts = nil
728
	end
729
)
730
end
731
732
function Dmg()
733
	local partofdeath = hitb
734
	local function CreateRegion3FromLocAndSize(Position, Size)
735
		local SizeOffset = Size/2
736
		local Point1 = Position - SizeOffset
737
		local Point2 = Position + SizeOffset
738
		return Region3.new(Point1, Point2)
739
	end
740
	local reg = CreateRegion3FromLocAndSize(partofdeath.Position, partofdeath.Size)
741
	for i, v in pairs(game.Workspace:FindPartsInRegion3WithIgnoreList(reg, char:GetChildren(), 100)) do
742
		Spawn(function()
743
			if Debounces.Slashing == true and Debounces.Slashed == false then
744
				Debounces.Slashed = true
745
				ypcall(function()
746
					local humanoid = v.Parent:FindFirstChild("Humanoid") or v.Parent.Parent:FindFirstChild("Humanoid")
747
					humanoid:TakeDamage(math.random(10,18))
748
				end)
749
				wait(.4)
750
				Debounces.Slashed = false
751
			end
752
		end)
753
	end
754
end
755
756
pts = {0.8, 0.85, 0.9, 0.95, 1, 1.05, 1.1}
757
ptz = {0.7, 0.8, 0.9, 1, 1.1}
758
attackone = function()
759
	
760
	for i = 1, 10 do
761
		corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
762
		corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(-24)), 0.4)
763
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.3, 0.5, -0.4) * CFrame.Angles(math.rad(70), math.rad(0), math.rad(-10)), 0.5)
764
		rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(-80), math.rad(0)), 0.5)
765
		larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(-24), math.rad(0), math.rad(-20)), 0.3)
766
		larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(20), math.rad(0)), 0.3)
767
		hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), math.rad(-30), 0), 0.7)
768
		hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.7)
769
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.7)
770
		torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(-30), math.rad(0)), 0.7)
771
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0.2) * CFrame.Angles(math.rad(-11), math.rad(0), math.rad(-14)), 0.5)
772
		lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
773
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.7, -1, -0.3) * CFrame.Angles(math.rad(20), math.rad(-30), math.rad(16)), 0.5)
774
		rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
775
		if Debounces.on == false then
776
			break
777
		end
778
		fat.Event:wait()
779
	end
780
end
781
782
attacktwo = function()
783
	
784
	Debounces.Slashing = true
785
	z = Instance.new("Sound", hed)
786
	z.SoundId = "rbxassetid://227194094"
787
	z.Pitch = ptz[math.random(1, #ptz)]
788
	z.Volume = 0.4
789
	wait(0.01)
790
	z:Play()
791
	for i = 1, 14 do
792
		Dmg()
793
		corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
794
		corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(28)), 0.4)
795
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.5, 0.4) * CFrame.Angles(math.rad(70), math.rad(0), math.rad(100)), 0.4)
796
		rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(-90), math.rad(0)), 0.4)
797
		larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(36), math.rad(0), math.rad(-20)), 0.3)
798
		larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(20), math.rad(0)), 0.3)
799
		hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.36)
800
		hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(10), math.rad(-40), math.rad(0)), 0.36)
801
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, -1) * CFrame.Angles(math.rad(0), math.rad(-40), 0), 0.4)
802
		torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
803
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.72, -1, -0.3) * CFrame.Angles(math.rad(14), math.rad(50), math.rad(-15)), 0.5)
804
		lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
805
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0.2) * CFrame.Angles(math.rad(-12), math.rad(-30), math.rad(16)), 0.5)
806
		rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
807
		if Debounces.on == false then
808
			break
809
		end
810
		fat.Event:wait()
811
	end
812
	do
813
		Debounces.Slashing = false
814
	end
815
end
816
817
attackthree = function()
818
	
819
	for i = 1, 10 do
820
		corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
821
		corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(-24)), 0.4)
822
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.5, 0.4) * CFrame.Angles(math.rad(70), math.rad(0), math.rad(100)), 0.4)
823
		rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
824
		larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(48), math.rad(0), math.rad(-20)), 0.4)
825
		larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(20), math.rad(0)), 0.4)
826
		hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.5)
827
		hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.5)
828
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, -1.3) * CFrame.Angles(math.rad(0), math.rad(-50), 0), 0.5)
829
		torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
830
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.72, -1, -0.4) * CFrame.Angles(math.rad(-10), math.rad(50), math.rad(-10)), 0.5)
831
		lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
832
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.6, -1, 0) * CFrame.Angles(math.rad(-12), math.rad(-30), math.rad(16)), 0.5)
833
		rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
834
		if Debounces.on == false then
835
			break
836
		end
837
		fat.Event:wait()
838
	end
839
end
840
841
attackfour = function()
842
	
843
	Debounces.Slashing = true
844
	z = Instance.new("Sound", hed)
845
	z.SoundId = "rbxassetid://227194094"
846
	z.Pitch = ptz[math.random(1, #ptz)]
847
	z.Volume = 0.4
848
	wait(0.01)
849
	z:Play()
850
	for i = 1, 14 do
851
		Dmg()
852
		corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
853
		corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(28)), 0.4)
854
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.2, 0.5, -0.4) * CFrame.Angles(math.rad(70), math.rad(0), math.rad(-60)), 0.4)
855
		rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(60), math.rad(0)), 0.4)
856
		larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(-20), math.rad(10), math.rad(-10)), 0.3)
857
		larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(20), math.rad(0)), 0.3)
858
		hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.36)
859
		hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(10), math.rad(50), math.rad(0)), 0.36)
860
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, -1.6) * CFrame.Angles(math.rad(0), math.rad(50), 0), 0.36)
861
		torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.36)
862
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.6, -1, 0.2) * CFrame.Angles(math.rad(-10), math.rad(-20), math.rad(-16)), 0.5)
863
		lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
864
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.72, -1, -0.4) * CFrame.Angles(math.rad(14), math.rad(-50), math.rad(14)), 0.5)
865
		rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
866
		if Debounces.on == false then
867
			break
868
		end
869
		fat.Event:wait()
870
	end
871
	do
872
		Debounces.Slashing = false
873
	end
874
end
875
876
attackfive = function()
877
	
878
	z = Instance.new("Sound", hed)
879
	z.SoundId = "rbxassetid://"
880
	z.Pitch = 1
881
	z.Volume = 0.8
882
	wait(0.01)
883
	z:Play()
884
	for i = 1, 18 do
885
		corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.5)
886
		corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-50), math.rad(0), math.rad(0)), 0.5)
887
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.2, 0.7, 0) * CFrame.Angles(math.rad(140), math.rad(0), math.rad(-40)), 0.4)
888
		rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
889
		larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.2, 0.7, 0) * CFrame.Angles(math.rad(140), math.rad(0), math.rad(40)), 0.4)
890
		larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
891
		hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.4, 0.15) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.5)
892
		hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(0)), 0.25)
893
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 2, -1.6) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.5)
894
		torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(0)), 0.5)
895
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-15), math.rad(20), math.rad(-15)), 0.5)
896
		lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
897
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(-15), math.rad(-20), math.rad(15)), 0.5)
898
		rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
899
		if Debounces.on == false then
900
			break
901
		end
902
		fat.Event:wait()
903
	end
904
	do
905
		z = Instance.new("Sound", hed)
906
		z.SoundId = "rbxassetid://227194094"
907
		z.Pitch = 0.6
908
		z.Volume = 1
909
		wait(0.01)
910
		z:Play()
911
		Debounces.Slashing = true
912
		for i = 1, 18 do
913
			Dmg()
914
			corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-40)), 0.5)
915
			corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-20), math.rad(-50), math.rad(0)), 0.5)
916
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.2, 0.4, -0.4) * CFrame.Angles(math.rad(30), math.rad(0), math.rad(-40)), 0.5)
917
			rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
918
			larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.2, 0.4, -0.4) * CFrame.Angles(math.rad(30), math.rad(0), math.rad(40)), 0.5)
919
			larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
920
			hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.4, -0.15) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.5)
921
			hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(20), math.rad(0), math.rad(0)), 0.5)
922
			torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -2, -2) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.3)
923
			torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
924
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.6, -0.2, -0.48) * CFrame.Angles(math.rad(10), math.rad(0), math.rad(-10)), 0.3)
925
			lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
926
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.6, -0.9, 0.2) * CFrame.Angles(math.rad(-70), math.rad(0), math.rad(10)), 0.3)
927
			rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
928
			if Debounces.on == false then
929
				break
930
			end
931
			fat.Event:wait()
932
		end
933
		do
934
			Debounces.Slashing = false
935
		end
936
	end
937
end
938
939
ComboNum = 0
940
mouse.Button1Down:connect(function()
941
	
942
	if Debounces.CanAttack == true then
943
		Debounces.CanAttack = false
944
		Debounces.NoIdl = true
945
		Debounces.on = true
946
		if ComboNum == 0 then
947
			attackone()
948
		else
949
			if ComboNum == 1 then
950
				attacktwo()
951
			else
952
				if ComboNum == 2 then
953
					attackthree()
954
				else
955
					if ComboNum == 3 then
956
						attackfour()
957
					else
958
						if ComboNum == 4 then
959
							attackfive()
960
						end
961
					end
962
				end
963
			end
964
		end
965
		ComboNum = ComboNum + 1
966
		Debounces.CanAttack = true
967
		Debounces.on = false
968
		wait(0.2)
969
		if Debounces.CanAttack == true then
970
			ComboNum = 0
971
			Debounces.NoIdl = false
972
		end
973
	end
974
end
975
)
976
mouse.KeyDown:connect(function(key)
977
	
978
	if string.byte(key) == 52 then
979
		Swing = 2
980
		char.Humanoid.WalkSpeed = 28
981
	end
982
end
983
)
984
mouse.KeyUp:connect(function(key)
985
	
986
	if string.byte(key) == 52 then
987
		Swing = 1
988
		char.Humanoid.WalkSpeed = 16
989
	end
990
end
991
)
992
jump = false
993
rs:connect(function()
994
	
995
	if char.Humanoid.Jump == true then
996
		jump = true
997
	else
998
		jump = false
999
	end
1000
	char.Humanoid.FreeFalling:connect(function(f)
1001
		
1002
		if f then
1003
			ffing = true
1004
		else
1005
			ffing = false
1006
		end
1007
	end
1008
)
1009
	sine = sine + change
1010
	if jump == true then
1011
		animpose = "Jumping"
1012
	else
1013
		if ffing == true then
1014
			animpose = "Freefalling"
1015
		else
1016
			if (torso.Velocity * Vector3.new(1, 0, 1)).magnitude < 2 then
1017
				animpose = "Idle"
1018
			else
1019
				if (torso.Velocity * Vector3.new(1, 0, 1)).magnitude < 20 then
1020
					animpose = "Walking"
1021
				else
1022
					if (torso.Velocity * Vector3.new(1, 0, 1)).magnitude > 20 then
1023
						animpose = "Running"
1024
					end
1025
				end
1026
			end
1027
		end
1028
	end
1029
	RightLeg = CFrame.new(0.5, -1, 0)
1030
	LeftLeg = CFrame.new(-0.5, -1, 0)
1031
	lefth = (torso.CFrame*LeftLeg)
1032
	righth = (torso.CFrame*RightLeg)
1033
1034
	speed = Vector3.new(torso.Velocity.X,0,torso.Velocity.Z)
1035
1036
	TiltOnAxis = (torso.CFrame-torso.CFrame.p):vectorToObjectSpace(speed/100)
1037
1038
	local AngleThetaR = (righth-righth.p):vectorToObjectSpace(speed/100)
1039
	local AngleThetaL = (lefth-lefth.p):vectorToObjectSpace(speed/100)
1040
	if animpose ~= lastanimpose then
1041
		sine = 0
1042
		if Debounces.NoIdl == false then
1043
			if stanceToggle == "Idle1" then
1044
				rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.6, 0.2) * CFrame.Angles(math.rad(-12 - 4 * math.cos(sine / 22)), math.rad(-12 - 2 * math.cos(sine / 22)), math.rad(12 + 2 * math.cos(sine / 22))), 0.3)
1045
				larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.6, -0.2) * CFrame.Angles(math.rad(20 + 4 * math.cos(sine / 22)), math.rad(-22 - 2 * math.cos(sine / 22)), math.rad(-15 - 2 * math.cos(sine / 22))), 0.3)
1046
				hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(-12 + 2.5 * math.cos(sine / 22)), math.rad(0), math.rad(0)), 0.2)
1047
				torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-2 + 2 * math.cos(sine / 22)), math.rad(0), 0), 0.2)
1048
				lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, -0.06) * CFrame.Angles(math.rad(0 - 2 * math.cos(sine / 22)), math.rad(5), math.rad(-5)), 0.2)
1049
				rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, -0.06) * CFrame.Angles(math.rad(0 - 2 * math.cos(sine / 22)), math.rad(-5), math.rad(5)), 0.2)
1050
			else
1051
				if stanceToggle == "Idle2" then
1052
					rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.6, 0.2) * CFrame.Angles(math.rad(-22 - 4 * math.cos(sine / 12)), math.rad(-40 - 2 * math.cos(sine / 12)), math.rad(24 + 2 * math.cos(sine / 12))), 0.3)
1053
					larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.2, 0.6, -0.6) * CFrame.Angles(math.rad(90 + 4 * math.cos(sine / 12)), math.rad(0), math.rad(50 - 2 * math.cos(sine / 12))), 0.3)
1054
					hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(-6 + 2.5 * math.cos(sine / 12)), math.rad(0), math.rad(0)), 0.2)
1055
					torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(-20 + 2 * math.cos(sine / 12)), math.rad(0), 0), 0.2)
1056
					lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -0.4, -1) * CFrame.Angles(math.rad(-7 - 2 * math.cos(sine / 12)), math.rad(7), math.rad(-5)), 0.2)
1057
					rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -0.8, -0.2) * CFrame.Angles(math.rad(-30 - 2 * math.cos(sine / 12)), math.rad(-9), math.rad(5)), 0.2)
1058
				end
1059
			end
1060
			fat.Event:wait()
1061
		end
1062
	end
1063
	lastanimpose = animpose
1064
	if Debounces.NoIdl == false then
1065
		if animpose == "Idle" then
1066
			change = 0.8
1067
			corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
1068
			corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(-26)), 0.4)
1069
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.5 + 0.05 * math.sin(sine / 10), 0) * CFrame.Angles(math.rad(30 + 2 * math.sin(sine / 10)), math.rad(-40 - 10 * math.cos(sine / 10)), math.rad(60)), 0.1)
1070
			rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(-60), math.rad(0)), 0.1)
1071
			larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5 + 0.05 * math.sin(sine / 10), 0.15) * CFrame.Angles(math.rad(70 - 2 * math.sin(sine / 10)), math.rad(0 + 10 * math.cos(sine / 10)), math.rad(-40)), 0.1)
1072
			larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.1)
1073
			hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), math.rad(40), math.rad(0)), 0.1)
1074
			hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0.15 - 0.05 * math.sin(sine / 10)) * CFrame.Angles(math.rad(15 - 3 * math.sin(sine / 10)), math.rad(0), math.rad(0)), 0.1)
1075
			torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-3 + 3 * math.cos(sine / 10)), math.rad(-40), 0), 0.1)
1076
			torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.1)
1077
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.6, -1 - 0.01 * math.cos(sine / 10), 0) * CFrame.Angles(math.rad(10 - 5 * math.cos(sine / 10)), math.rad(40), math.rad(-10 + 1.9 * math.cos(sine / 10))), 0.1)
1078
			lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0.3) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.1)
1079
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1 + 0.01 * math.cos(sine / 10), 0) * CFrame.Angles(math.rad(-10 - 3 * math.cos(sine / 10)), math.rad(-10), math.rad(12 + 1.9 * math.cos(sine / 10))), 0.1)
1080
			rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.1)
1081
		else
1082
			if animpose == "Walking" then
1083
				change = 0.8
1084
				corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.62, 0) * CFrame.Angles(math.rad(70), math.rad(90), math.rad(-10)), 0.4)
1085
				corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)), 0.4)
1086
				rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90 + 2 * math.cos(sine / 7)), math.rad(0), math.rad(30)), 0.4)
1087
				rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.7)
1088
				larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.5 + 0.05 * math.cos(sine / 2), -math.sin(sine / 4) / 4) * CFrame.Angles(math.sin(sine / 4) / 2.8, -math.sin(sine / 4) / 3, math.rad(-10 - 7 * math.cos(sine / 2)) + root.RotVelocity.Y / 30), 0.4)
1089
				larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.7)
1090
				hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, -0.1 + 0.1 * math.cos(sine / 2)) * CFrame.Angles(math.rad(-10 + 4 * math.cos(sine / 2)), math.rad(0 - 8 * math.cos(sine / 4) / 2.3), math.rad(0)), 0.4)
1091
				hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0) - root.RotVelocity.Y / 10, math.rad(0)), 0.7)
1092
				torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 + 0.12 * math.cos(sine / 2), 0) * CFrame.Angles(math.rad(-4 + 2 * math.cos(sine / 2)), math.rad(0 + 10 * math.cos(sine / 4) / 2.3) + root.RotVelocity.Y / 30, math.rad(0) + root.RotVelocity.Y / 30), 0.4)
1093
				torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.8)
1094
				lleg.Weld.C0 = lleg.Weld.C0:lerp(CFrame.new(-0.5, -1 - math.cos(sine / 4) * 0.2, 0 + math.sin(sine / 4) * 0.1) * CFrame.Angles(math.sin(sine / 4) * 3 * AngleThetaL.Z, AngleThetaL.X, math.sin(sine / 4) * 3 * -AngleThetaL.X - root.RotVelocity.Y / 20), 0.8)
1095
				lleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.8)
1096
				rleg.Weld.C0 = rleg.Weld.C0:lerp(CFrame.new(0.5, -1 + math.cos(sine / 4) * 0.2, 0 - math.sin(sine / 4) * 0.1) * CFrame.Angles(math.sin(sine / 4) * 3 * -AngleThetaR.Z, AngleThetaR.X, math.sin(sine / 4) * 3 * AngleThetaR.X - root.RotVelocity.Y / 20), 0.8)
1097
				rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.8)
1098
			else
1099
				if animpose == "Running" then
1100
					change = 1.1
1101
					corw.C0 = Lerp(corw.C0, CFrame.new(0, -1.5, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.4)
1102
					corw.C1 = Lerp(corw.C1, CFrame.new(-2.4, 0, 0) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(-35)), 0.4)
1103
					rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.4, 0.54, 0) * CFrame.Angles(math.rad(-34), math.rad(-15), math.rad(26)), 0.2)
1104
					rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.36)
1105
					larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.24 + 0.6 * math.cos(sine / 4) / 1.4, 0.54, 0 - 0.8 * math.cos(sine / 4)) * CFrame.Angles(math.rad(6 + 140 * math.cos(sine / 4) / 1.2), math.rad(0), math.rad(20 + 70 * math.cos(sine / 4))), 0.2)
1106
					larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
1107
					hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, -0.2) * CFrame.Angles(math.rad(-8 + 12 * math.cos(sine / 2) / 1.5), math.rad(0 + 12 * math.cos(sine / 4)), math.rad(0)), 0.2)
1108
					hed.Weld.C1 = Lerp(hed.Weld.C1, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0) - root.RotVelocity.Y / 10, math.rad(0)), 0.5)
1109
					torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 + 0.2 * math.cos(sine / 2) / 1.7, 0) * CFrame.Angles(math.rad(-14 + 10 * math.cos(sine / 2) / 1.5), math.rad(0 - 12 * math.cos(sine / 4)) - root.RotVelocity.Y / 10, math.rad(0) + root.RotVelocity.Y / 20), 0.2)
1110
					torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.4)
1111
					lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -0.8 - 0.4 * math.cos(sine / 4) / 2, math.sin(sine / 4) / 2) * CFrame.Angles(math.rad(-10) + -math.sin(sine / 4) / 1.2, math.rad(0 + 12 * math.cos(sine / 4)) + root.RotVelocity.Y / 10, 0), 0.8)
1112
					lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1113
					rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -0.8 + 0.4 * math.cos(sine / 4) / 2, -math.sin(sine / 4) / 2) * CFrame.Angles(math.rad(-10) + math.sin(sine / 4) / 1.2, math.rad(0 + 12 * math.cos(sine / 4)) + root.RotVelocity.Y / 10, 0), 0.8)
1114
					rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1115
				else
1116
					if animpose == "Jumping" then
1117
						change = 1
1118
						rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.6, 0) * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(20)), 0.2)
1119
						rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.36)
1120
						larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.6, 0) * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.2)
1121
						larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
1122
						hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(30), math.rad(0), 0), 0.2)
1123
						torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-10), math.rad(0), 0), 0.2)
1124
						torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.4)
1125
						lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1.1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
1126
						lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1127
						rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1.1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
1128
						rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1129
					else
1130
						if animpose == "Freefalling" then
1131
							change = 1
1132
							rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5, 0.6, 0) * CFrame.Angles(math.rad(-40), math.rad(20), math.rad(50)), 0.2)
1133
							rarm.Weld.C1 = Lerp(rarm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.36)
1134
							larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5, 0.6, 0) * CFrame.Angles(math.rad(110), math.rad(-20), math.rad(-30)), 0.2)
1135
							larm.Weld.C1 = Lerp(larm.Weld.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.5)
1136
							hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(10), math.rad(0), 0), 0.2)
1137
							torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-30), math.rad(0), 0), 0.2)
1138
							torso.Weld.C1 = Lerp(torso.Weld.C1, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), 0), 0.4)
1139
							lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -0.5, -0.5) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(0)), 0.2)
1140
							lleg.Weld.C1 = Lerp(lleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1141
							rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, 0, 0.5) * CFrame.Angles(math.rad(30), math.rad(0), math.rad(0)), 0.2)
1142
							rleg.Weld.C1 = Lerp(rleg.Weld.C1, CFrame.new(0, 1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1143
						end
1144
					end
1145
				end
1146
			end
1147
		end
1148
	end
1149
end
1150
)
1151
-----------------------------
1152
mouse.KeyDown:connect(function(key)
1153
    if key == "1" then
1154
        if Debounces.CanAttack == true then
1155
        Debounces.CanAttack = false
1156
        Debounces.on = true
1157
        Debounces.NoIdl = true
1158
        for i = 1, 20 do
1159
	rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5,0.55,0)*CFrame.Angles(math.rad(110),math.rad(-6),math.rad(140)), 0.4)
1160
	larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.55,0)*CFrame.Angles(math.rad(80),math.rad(6),math.rad(-40)), 0.2)
1161
	hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,-.2)*CFrame.Angles(math.rad(0),math.rad(30),0), 0.2)
1162
	torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-30), math.rad(0)), 0.3)
1163
        lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(20), 0, math.rad(-14)), 0.2)
1164
	rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(-16), 0, math.rad(8)), 0.2)
1165
            if Debounces.on == false then break end
1166
            rs:wait(2.6)
1167
        end
1168
        Spawn(function()
1169
            local Parts = {}
1170
            for Y = -5,5 do
1171
                local P = Instance.new("Part",char)
1172
                P.Anchored = true
1173
                P.FormFactor = "Custom"
1174
                P.CanCollide = false
1175
                P.Size = Vector3.new(2,4,2)
1176
                P.TopSurface = "SmoothNoOutlines"
1177
                P.BottomSurface = "SmoothNoOutlines"
1178
                P.Material = "Neon"
1179
                P.BrickColor = BrickColor.new("Really black")
1180
                P.Name = tostring(Y)
1181
                local i = (Y+5)/(10)
1182
                i = 1-math.cos(math.pi*i-(math.pi/2))
1183
                P.CFrame = char.HumanoidRootPart.CFrame*CFrame.new(0,Y,-15+(i*1.5))*CFrame.Angles(math.rad(Y*5),0,0)
1184
                --[[P.Touched:connect(function(ht)
1185
                    local hit = ht.Parent
1186
                    if hit:FindFirstChild("Humanoid") then
1187
                        hit.Humanoid:TakeDamage(math.random(20,50))
1188
                    end
1189
                end)]]--
1190
        s = Instance.new("Sound",P)
1191
        s.SoundId = "rbxassetid://228343271"
1192
        s.Volume = 1
1193
        s.Pitch = 0.9
1194
        s:Play()
1195
        sa = Instance.new("Sound",P)
1196
        sa.SoundId = "rbxassetid://419447292"
1197
        sa.Volume = 1
1198
        sa.Pitch = 1
1199
        sa:Play()
1200
P.Touched:connect(function(ht)
1201
        hit = ht.Parent
1202
        if ht and hit:IsA("Model") then
1203
                if hit:FindFirstChild("Humanoid") then
1204
                    if hit.Name ~= p.Name then
1205
                        --[[if Debounces.Slashing == true and Debounces.Slashed == false then
1206
                                Debounces.Slashed = true]]--
1207
                                    hit:FindFirstChild("Humanoid"):TakeDamage(math.random(1,3))
1208
                                    hit:FindFirstChild("Humanoid").PlatformStand = true
1209
                                wait(1)
1210
                                --Debounces.Slashed = false
1211
                        --end
1212
                end
1213
                end
1214
        elseif ht and hit:IsA("Hat") then
1215
            if hit.Parent.Name ~= p.Name then
1216
                if hit.Parent:FindFirstChild("Humanoid") then
1217
                        --[[if Debounces.Slashing == true and Debounces.Slashed == false then
1218
                                Debounces.Slashed = true]]--
1219
                                hit.Parent:FindFirstChild("Humanoid"):TakeDamage(math.random (1,3))
1220
                                hit:FindFirstChild("Humanoid").PlatformStand = true
1221
                                wait(1)
1222
                    --Debounces.Slashed = false
1223
                --end
1224
            end
1225
        end
1226
    end
1227
end)
1228
                Parts[#Parts+1] = P
1229
            end
1230
            local BREAKIT = false
1231
            local CParts = {}
1232
            local Rocks = {}
1233
            local LastPos = nil
1234
            for i = 1,70 do
1235
                for i2,v in pairs(Parts) do
1236
                    v.CFrame = v.CFrame*CFrame.new(0,0,-4)
1237
                    local cf = v.CFrame
1238
                    v.Size = v.Size+Vector3.new(0.4,0.35,0)
1239
                    v.CFrame = cf
1240
                    v.Transparency = v.Transparency+0.02
1241
                    if v.Transparency >= 0.975 then BREAKIT = true end
1242
                    if v.Name == "0" then
1243
                        local Ignore = {}
1244
                        for i,v in pairs(game:GetService("Players"):GetPlayers()) do
1245
                            if v.Character ~= nil then
1246
                                Ignore[#Ignore+1] = v.Character
1247
                            end
1248
                        end
1249
                        local ray = Ray.new(v.Position+Vector3.new(0,20,0),Vector3.new(0,-200,0))
1250
                        local Hit,Pos,SurfaceNorm = Workspace:FindPartOnRayWithIgnoreList(ray,Ignore)
1251
                        if Hit ~= nil then
1252
                            if #Rocks == 0 then
1253
                                for i = 1,5 do
1254
                                    local P = Instance.new("Part",char)
1255
                                    Rocks[#Rocks+1] = P
1256
                                    P.Anchored = true
1257
                                    P.FormFactor = "Custom"
1258
                                    P.BrickColor = Hit.BrickColor
1259
                                    P.Material = Hit.Material
1260
                                    P.TopSurface = "Smooth"
1261
                                    P.BottomSurface = "Smooth"
1262
                                    P.Size = Vector3.new(2,2,2)*(math.random(500,900)/100)
1263
                                end
1264
                            end
1265
                            for i,P in pairs(Rocks) do
1266
                                P.CFrame = ((CFrame.new(Pos)*(v.CFrame-v.Position))*CFrame.new(math.random(-math.ceil(v.Size.X/2),math.ceil(v.Size.X/2)),0,-math.random(5,8))-Vector3.new(0,0.25,0))*CFrame.Angles(math.rad(math.random(-50,50)),math.rad(math.random(-50,50)),math.rad(math.random(20,50)))
1267
                            end
1268
                            local P = Instance.new("Part",char)
1269
                            CParts[#CParts+1] = {P,tick()}
1270
                            P.Anchored = true
1271
                            P.FormFactor = "Custom"
1272
                            P.BrickColor = Hit.BrickColor
1273
                            P.Material = Hit.Material
1274
                            P.TopSurface = "Smooth"
1275
                            P.BottomSurface = "Smooth"
1276
                            P.Size = Vector3.new(2,2,2)*(math.random(100,300)/100)
1277
                            Pos = CFrame.new(Pos)*(v.CFrame-v.Position)*CFrame.new(v.Size.X/2,0,0)
1278
                            Pos = Pos.p
1279
                            P.CFrame = ((CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))-Vector3.new(0,0.25,0))*CFrame.Angles(math.rad(math.random(-50,50)),math.rad(math.random(-50,50)),math.rad(math.random(20,50)))
1280
                            local P = P:Clone()
1281
                            CParts[#CParts+1] = {P,tick()}
1282
                            P.Parent = char
1283
                            Pos = CFrame.new(Pos)*(v.CFrame-v.Position)*CFrame.new(-v.Size.X,0,0)
1284
                            Pos = Pos.p
1285
                            P.CFrame = ((CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))-Vector3.new(0,0.25,0))*CFrame.Angles(math.rad(math.random(-50,50)),math.rad(math.random(-50,50)),math.rad(math.random(-50,-20)))
1286
                            if LastPos ~= nil then
1287
                                local P = P:Clone()
1288
                                CParts[#CParts+1] = {P,tick()}
1289
                                P.Parent = char
1290
                                P.BrickColor = BrickColor.new("Black")
1291
                                P.Material = "Neon"
1292
                                Pos = CFrame.new(Pos)*(v.CFrame-v.Position)*CFrame.new(v.Size.X/2,0,0)
1293
                                Pos = Pos.p
1294
                                local CFr = (CFrame.new(Pos)*(v.CFrame-v.Position))-Vector3.new(0,0.4,0)
1295
                                P.Size = Vector3.new(v.Size.X-0.25,1,(CFr.p-LastPos.p).Magnitude+0.25)
1296
                                --P.Velocity = Vector3.new(0,-1000,0)
1297
                                P.CFrame = CFrame.new(CFr.p,LastPos.p)*CFrame.new(0,0,-((CFr.p-LastPos.p).Magnitude+0.25)/2)
1298
                            end
1299
                            LastPos = (CFrame.new(Pos)*(v.CFrame-v.Position))-Vector3.new(0,0.4,0)
1300
                        end
1301
                    end
1302
                end
1303
                if BREAKIT then break end
1304
                wait(0.002)
1305
            end
1306
            for i,v in pairs(Rocks) do
1307
                CParts[#CParts+1] = {v,tick()}
1308
            end
1309
            for i,v in pairs(Parts) do
1310
                v:Destroy()
1311
            end
1312
            Parts = nil
1313
            while true do
1314
                local t = tick()
1315
                local p = nil
1316
                for i,v in pairs(CParts) do
1317
                    if t-v[2] > 4 then
1318
                        v[1].Transparency = v[1].Transparency+0.05
1319
                        if v[1].Transparency >= 1 then
1320
                            v[1]:Destroy()
1321
                            CParts[i] = nil
1322
                        end
1323
                    end
1324
                    p = v
1325
                end
1326
                if p == nil then break end
1327
                wait(0.002)
1328
            end
1329
            for i,v in pairs(CParts) do
1330
                v:Destroy()
1331
            end
1332
            CParts = {}
1333
        end)
1334
        for i = 1, 20 do
1335
        rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5,0.55,0)*CFrame.Angles(math.rad(70),math.rad(-6),math.rad(-20)), 0.2)
1336
	larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.55,0)*CFrame.Angles(math.rad(-6),math.rad(6),math.rad(-8)), 0.2)
1337
	hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,-.2)*CFrame.Angles(math.rad(0),math.rad(0),0), 0.2)
1338
	torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(30), math.rad(0)), 0.4)
1339
	lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(10), 0, math.rad(-8)), 0.2)
1340
	rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(-6), 0, math.rad(8)), 0.2)
1341
        cor.Weld.C0 = Lerp(cor.Weld.C0, CFrame.new(1.4, -3.5, -7) * CFrame.Angles(math.rad(-90), math.rad(-142), math.rad(20)), 1)
1342
            if Debounces.on == false then break end
1343
            rs:wait(2)
1344
        end
1345
    if Debounces.CanAttack == false then
1346
        Debounces.CanAttack = true
1347
        Debounces.on = false
1348
        Debounces.NoIdl = false
1349
            end
1350
        end
1351
    end
1352
end)
1353
-----------------------------
1354
Charging = false
1355
mouse.KeyDown:connect(function(key)
1356
	if key == "2" then
1357
		if Charging == false then
1358
			Charging = true
1359
			if Debounces.CanAttack == true then
1360
				Debounces.CanAttack = false
1361
				Debounces.NoIdl = true
1362
				Debounces.on = true
1363
				for i = 1,20 do
1364
					rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.2,0.65,-.4)*CFrame.Angles(math.rad(130),math.rad(0),math.rad(-40)), 0.2)
1365
					larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.2,0.65,-.4)*CFrame.Angles(math.rad(130),math.rad(0),math.rad(40)), 0.2)
1366
					hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,-.2)*CFrame.Angles(math.rad(-10),math.rad(0),0), 0.2)
1367
					torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-10), math.rad(0), 0), 0.2)
1368
					lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, .4, -0.8) * CFrame.Angles(math.rad(-6), math.rad(0), math.rad(0)), 0.2)
1369
					rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, .4, -0.8) * CFrame.Angles(math.rad(-6), math.rad(0), math.rad(0)), 0.2)
1370
					if Debounces.on == false then break end
1371
					rs:wait()
1372
				end
1373
				--[[for i = 1,20 do
1374
					rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5,0.65,0)*CFrame.Angles(math.rad(-20),math.rad(-20),math.rad(50)), 0.4)
1375
					larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.65,0)*CFrame.Angles(math.rad(-20),math.rad(20),math.rad(-50)), 0.4)
1376
					hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,.1)*CFrame.Angles(math.rad(34),math.rad(0),0), 0.4)
1377
					torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(15), math.rad(0), math.rad(0)), 0.4)
1378
					lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-10), 0, math.rad(-10)), 0.4)
1379
					rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(-10), 0, math.rad(10)), 0.4)
1380
					if Debounces.on == false then break end
1381
					rs:wait()
1382
				end]]--
1383
xay = Instance.new("Sound",char)
1384
xay.SoundId = "rbxassetid://632366760"
1385
xay.Pitch = 1
1386
xay.Volume = 2.5
1387
xay:Play()
1388
pt=Instance.new('Part',torso)
1389
pt.Anchored=true
1390
pt.CanCollide=false
1391
pt.Locked = true
1392
pt.FormFactor='Custom'
1393
pt.Size=Vector3.new(1,1,1)
1394
pt.CFrame=root.CFrame*CFrame.new(0,-1,0)
1395
pt.Transparency=.6
1396
pt.BrickColor=BrickColor.new('Really black')
1397
msh=Instance.new('SpecialMesh',pt)
1398
msh.MeshId='http://www.roblox.com/asset/?id=20329976'
1399
msh.Scale=Vector3.new(8,4,8)
1400
pt2=pt:clone()
1401
pt2.Parent = torso
1402
pt2.CFrame=root.CFrame*CFrame.new(0,-1,0)
1403
pt2.BrickColor=BrickColor.new("Really black")
1404
msh2=msh:clone()
1405
msh2.Parent=pt2
1406
msh2.Scale=Vector3.new(10,5,10)
1407
1408
custommath={25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,-25,-26,-27,-28,-29,-30,-31,-32,-33,-34,-35,-36,-37,-38,-39,-40,-41,-42,-43,-44,-45,-46,-47,-48,-49,-50,-51,-52,-53,-54,-55,-56,-57,-58,-59,-60,-61,-62,-63,-64,-65,-66,-67,-68,-69,-70,-71,-72,-73,-74,-75,-76,-77,-78,-79,-80,-81,-82,-83,-84,-85,-86,-87,-88,-89,-90,-91,-92,-93,-94,-95,-96,-97,-98,-99,-100}
1409
1410
bl = Instance.new("Part", char)
1411
bl.Locked = true
1412
bl.Name = "Shell"
1413
bl.BrickColor = BrickColor.new("Really black")
1414
bl.Anchored = true
1415
bl.CanCollide = false
1416
bl.Transparency = 0
1417
bl.Reflectance = 0
1418
bl.BottomSurface = 0
1419
bl.TopSurface = 0
1420
bl.Shape = 0
1421
blm = Instance.new("SpecialMesh",bl)
1422
blm.MeshType = "Sphere"
1423
blm.Scale = Vector3.new(1,1,1)
1424
blm.MeshId = "rbxassetid://9982590"
1425
1426
bl2 = Instance.new("Part", char)
1427
bl2.Locked = true
1428
bl2.Name = "Shella"
1429
bl2.BrickColor = BrickColor.new("Really black")
1430
bl2.Anchored = true
1431
bl2.CanCollide = false
1432
bl2.Transparency = 0
1433
bl2.Reflectance = 0
1434
bl2.BottomSurface = 0
1435
bl2.TopSurface = 0
1436
bl2.Shape = 0
1437
blm2 = Instance.new("SpecialMesh",bl2)
1438
blm2.MeshType = "Sphere"
1439
blm2.Scale = Vector3.new(1,1,1)
1440
blm2.MeshId = "rbxassetid://9982590"
1441
1442
	coroutine.resume(coroutine.create(function()
1443
        for i=1, math.huge, 4 do
1444
			if Charging == true then
1445
				rs:wait()
1446
				bl.CFrame = root.CFrame * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-i/10), math.rad(-i/10), math.rad(i/10))
1447
				blm.Scale = blm.Scale + Vector3.new(15, 15, 15)
1448
				bl.Transparency = bl.Transparency + 0.075
1449
				bl2.CFrame = root.CFrame * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-i/10), math.rad(-i/10), math.rad(i/10))
1450
				blm2.Scale = blm2.Scale + Vector3.new(5, 5, 5)
1451
				bl2.Transparency = bl2.Transparency + 0.025
1452
				pt.CFrame = root.CFrame*CFrame.new(0,-1,0) * CFrame.Angles(0,math.rad(i*2),0)
1453
				pt2.CFrame = root.CFrame*CFrame.new(0,-1,0) * CFrame.Angles(0,math.rad(-i*2),0)
1454
				msh.Scale = msh.Scale + Vector3.new(5,2.5,5)
1455
				msh2.Scale = msh2.Scale + Vector3.new(10,5,10)
1456
				elseif Charging == false then break
1457
			end
1458
		end
1459
    end))
1460
1461
repeat
1462
    local p = Instance.new('Part',torso)
1463
    p.formFactor = 'Custom'
1464
    p.Size = Vector3.new(1,1,1)
1465
    p.BrickColor = workspace.Base.BrickColor
1466
    p.CanCollide = false
1467
    p.Transparency = 0
1468
    p.Anchored = true
1469
    p.Locked=true
1470
    p.Material = workspace.Base.Material
1471
    s = math.random(1,40)/10
1472
    local m = Instance.new("BlockMesh",p)
1473
    m.Scale = Vector3.new(s,s,s)
1474
    p.CFrame = torso.CFrame*CFrame.new(custommath[math.random(1,#custommath)]/10,-math.random(5,7),custommath[math.random(1,#custommath)]/10)*CFrame.Angles(math.random(),math.random(),math.random())
1475
	--[[coroutine.wrap(function()
1476
		wait(2)
1477
		while Charging == true do
1478
		wait(2)
1479
		GroundWave1()
1480
		wait(2)
1481
		end
1482
	end)()]]--
1483
	Spawn(function()
1484
		while rs:wait() do
1485
			if Charging == true then
1486
				rarm.Weld.C0 = CFrame.new(1.5,0.65,0)*CFrame.Angles(math.rad(math.random(-36,-20)),math.rad(math.random(-30,-20)),math.rad(math.random(30,50)))
1487
				larm.Weld.C0 = CFrame.new(-1.5,0.65,0)*CFrame.Angles(math.rad(math.random(-36,-20)),math.rad(math.random(20,30)),math.rad(math.random(-50,-30)))
1488
				hed.Weld.C0 = CFrame.new(0,1.5,.1)*CFrame.Angles(math.rad(math.random(26,34)),math.rad(math.random(-5,5)),math.rad(0))
1489
				torso.Weld.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(10), math.rad(math.random(-4,4)), math.rad(0))
1490
				lleg.Weld.C0 = CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(math.random(-10,-6)), math.rad(math.random(10,20)), math.rad(math.random(-20,-10)))
1491
				rleg.Weld.C0 = CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(math.random(-10,-6)), math.rad(math.random(-20,-10)), math.rad(math.random(10,20)))
1492
			elseif Charging == false then break
1493
			end
1494
		end
1495
	end)
1496
	Spawn(function()
1497
        while rs:wait() do
1498
            if p.Transparency >= 1 then p:Destroy() break end
1499
            p.CFrame = p.CFrame*CFrame.Angles(math.rad(2),math.rad(2),math.rad(2))+Vector3.new(0,0.2,0)
1500
            p.Transparency = p.Transparency+0.01
1501
        end
1502
    end)
1503
    wait(.3)
1504
until Charging == false
1505
			end
1506
		end
1507
	end
1508
end)
1509
----------------------------------------------------
1510
mouse.KeyUp:connect(function(key)
1511
	if key == "2" then
1512
		if Charging == true then
1513
			Charging = false
1514
				pt:Destroy()
1515
				pt2:Destroy()
1516
				bl:Destroy()
1517
			if Debounces.CanAttack == false then
1518
				Debounces.CanAttack = true
1519
				Debounces.NoIdl = false
1520
				Debounces.on = false
1521
			end
1522
		end
1523
	end
1524
end)
1525
-----------------------------
1526
1527
-----------------------------
1528
hum.MaxHealth = 50000000
1529
wait(3)
1530
hum.Health = 50000000