View difference between Paste ID: LhskYjxf and W88kq1Ke
SHOW: | | - or go back to the newest paste.
1
local FEService = loadstring(game:HttpGetAsync("https://raw.githubusercontent.com/WhyGitHubb/FEService/main/main.lua"))() FEService:FullNetwork() print(game.Players.LocalPlayer.SimulationRadius) loadstring(game:HttpGet("https://pastebin.com/raw/Kc5Wpt9s"))() lol = getcustomasset or getsynasset getgenv().LoadLibrary = function(lib) return loadstring(game:HttpGet("https://raw.githubusercontent.com/Roblox/Core-Scripts/master/CoreScriptsRoot/Libraries/" .. lib .. ".lua"))() end
2-
--|| CREATED BY SHACKLUSTER and uberified by VictoriaChristophe bakayaro konoyaro
2+
3-
--\\====================================================//--
3+
4
PlayerGui = Player.PlayerGui
5
Cam = workspace.CurrentCamera
6
Backpack = Player.Backpack
7-
wait(0.2)
7+
8
Humanoid = Character.Humanoid
9
Humanoid.JumpPower = 1000
10
Mouse = Player:GetMouse()
11
RootPart = Character["HumanoidRootPart"]
12
Torso = Character["Torso"]
13
Head = Character["Head"]
14
RightArm = Character["Right Arm"]
15
LeftArm = Character["Left Arm"]
16
RightLeg = Character["Right Leg"]
17
LeftLeg = Character["Left Leg"]
18
RootJoint = RootPart["RootJoint"]
19
Neck = Torso["Neck"]
20
RightShoulder = Torso["Right Shoulder"]
21
LeftShoulder = Torso["Left Shoulder"]
22
RightHip = Torso["Right Hip"]
23
LeftHip = Torso["Left Hip"]
24
local sick = Instance.new("Sound",Character)
25
sick.SoundId = "rbxassetid://1007872698"
26
sick.Looped = true
27
sick.Pitch = 1
28
sick.Volume = 99
29
sick:Play()
30
31
IT = Instance.new
32
CF = CFrame.new
33
VT = Vector3.new
34
RAD = math.rad
35
C3 = Color3.new
36
UD2 = UDim2.new
37
BRICKC = BrickColor.new
38
ANGLES = CFrame.Angles
39
EULER = CFrame.fromEulerAnglesXYZ
40
COS = math.cos
41
ACOS = math.acos
42
SIN = math.sin
43
ASIN = math.asin
44
ABS = math.abs
45
MRANDOM = math.random
46
FLOOR = math.floor
47
48
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
49
	local NEWMESH = IT(MESH)
50
	if MESH == "SpecialMesh" then
51
		NEWMESH.MeshType = MESHTYPE
52
		if MESHID ~= "nil" and MESHID ~= "" then
53
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
54
		end
55
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
56
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
57
		end
58
	end
59
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
60
	NEWMESH.Scale = SCALE
61
	NEWMESH.Parent = PARENT
62
	return NEWMESH
63
end
64
65
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
66
	local NEWPART = IT("Part")
67
	NEWPART.formFactor = FORMFACTOR
68
	NEWPART.Reflectance = REFLECTANCE
69
	NEWPART.Transparency = TRANSPARENCY
70
	NEWPART.CanCollide = false
71
	NEWPART.Locked = true
72
	NEWPART.Anchored = true
73
	if ANCHOR == false then
74
		NEWPART.Anchored = false
75
	end
76
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
77
	NEWPART.Name = NAME
78
	NEWPART.Size = SIZE
79
	NEWPART.Position = Torso.Position
80
	NEWPART.Material = MATERIAL
81
	NEWPART:BreakJoints()
82
	NEWPART.Parent = PARENT
83
	return NEWPART
84
end
85
86
87
function CreatePart1(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, NAME, SIZE, ANCHOR)
88
	local NEWPART = IT("Part")
89
	NEWPART.formFactor = FORMFACTOR
90
	NEWPART.Reflectance = REFLECTANCE
91
	NEWPART.Transparency = TRANSPARENCY
92
	NEWPART.CanCollide = false
93
	NEWPART.Locked = true
94
	NEWPART.Anchored = true
95
	if ANCHOR == false then
96
		NEWPART.Anchored = false
97
	end
98
	NEWPART.Name = NAME
99
	NEWPART.Size = SIZE
100
	NEWPART.Position = Torso.Position
101
	NEWPART.Material = MATERIAL
102
	NEWPART:BreakJoints()
103
	NEWPART.Parent = PARENT
104
	return NEWPART
105
end
106
--//=================================\\
107
--||		  CUSTOMIZATION
108
--\\=================================//
109
110
Player_Size = 1 --Size of the player.
111
Animation_Speed = 7
112
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
113
114
local Speed = 15
115
local Effects2 = {}
116
117
--//=================================\\
118
--|| 	  END OF CUSTOMIZATION
119
--\\=================================//
120
121
	local function weldBetween(a, b)
122
	    local weldd = Instance.new("ManualWeld")
123
	    weldd.Part0 = a
124
	    weldd.Part1 = b
125
	    weldd.C0 = CFrame.new()
126
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
127
	    weldd.Parent = a
128
	    return weldd
129
	end
130
131
--//=================================\\
132
--|| 	      USEFUL VALUES
133
--\\=================================//
134
135
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
136
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
137
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
138
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
139
local CHANGEDEFENSE = 0
140
local CHANGEDAMAGE = 0
141
local CHANGEMOVEMENT = 0
142
local ANIM = "Idle"
143
local ATTACK = false
144
local EQUIPPED = false
145
local HOLD = false
146
local COMBO = 1
147
local Rooted = false
148
local SINE = 0
149
local KEYHOLD = false
150
local CHANGE = 2 / Animation_Speed
151
local WALKINGANIM = false
152
local WALK = 0
153
local VALUE1 = false
154
local VALUE2 = false
155
local ROBLOXIDLEANIMATION = IT("Animation")
156
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
157
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
158
--ROBLOXIDLEANIMATION.Parent = Humanoid
159
local WEAPONGUI = IT("ScreenGui", PlayerGui)
160
WEAPONGUI.Name = "Weapon GUI"
161
local Weapon = IT("Model")
162
Weapon.Name = "Adds"
163
local HITFLOOR = nil
164
local Effects = IT("Folder", Weapon)
165
Effects.Name = "Effects"
166
local ANIMATOR = Humanoid.Animator
167
local ANIMATE = Character.Animate
168
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
169
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
170
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
171
local HITBLOCKSOUNDS = {"199148933", "199148947"}
172
local UNANCHOR = true
173
174
local SKILLTEXTCOLOR = BRICKC("Maroon").Color
175
176
--//=================================\\
177
--\\=================================//
178
179
180
181
182
--//=================================\\
183
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
184
--\\=================================//
185
186
ArtificialHB = Instance.new("BindableEvent", script)
187
ArtificialHB.Name = "ArtificialHB"
188
189
script:WaitForChild("ArtificialHB")
190
191
frame = Frame_Speed
192
tf = 0
193
allowframeloss = false
194
tossremainder = false
195
lastframe = tick()
196
script.ArtificialHB:Fire()
197
198
game:GetService("RunService").Heartbeat:connect(function(s, p)
199
	tf = tf + s
200
	if tf >= frame then
201
		if allowframeloss then
202
			script.ArtificialHB:Fire()
203
			lastframe = tick()
204
		else
205
			for i = 1, math.floor(tf / frame) do
206
				script.ArtificialHB:Fire()
207
			end
208
		lastframe = tick()
209
		end
210
		if tossremainder then
211
			tf = 0
212
		else
213
			tf = tf - frame * math.floor(tf / frame)
214
		end
215
	end
216
end)
217
218
--//=================================\\
219
--\\=================================//
220
221
222
223
224
225
--//=================================\\
226
--|| 	      SOME FUNCTIONS
227
--\\=================================//
228
229
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
230
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
231
end
232
233
function PositiveAngle(NUMBER)
234
	if NUMBER >= 0 then
235
		NUMBER = 0
236
	end
237
	return NUMBER
238
end
239
240
function NegativeAngle(NUMBER)
241
	if NUMBER <= 0 then
242
		NUMBER = 0
243
	end
244
	return NUMBER
245
end
246
247
function Swait(NUMBER)
248
	if NUMBER == 0 or NUMBER == nil then
249
		ArtificialHB.Event:wait()
250
	else
251
		for i = 1, NUMBER do
252
			ArtificialHB.Event:wait()
253
		end
254
	end
255
end
256
257
function QuaternionFromCFrame(cf)
258
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
259
	local trace = m00 + m11 + m22
260
	if trace > 0 then 
261
		local s = math.sqrt(1 + trace)
262
		local recip = 0.5 / s
263
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
264
	else
265
		local i = 0
266
		if m11 > m00 then
267
			i = 1
268
		end
269
		if m22 > (i == 0 and m00 or m11) then
270
			i = 2
271
		end
272
		if i == 0 then
273
			local s = math.sqrt(m00 - m11 - m22 + 1)
274
			local recip = 0.5 / s
275
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
276
		elseif i == 1 then
277
			local s = math.sqrt(m11 - m22 - m00 + 1)
278
			local recip = 0.5 / s
279
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
280
		elseif i == 2 then
281
			local s = math.sqrt(m22 - m00 - m11 + 1)
282
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
283
		end
284
	end
285
end
286
 
287
function QuaternionToCFrame(px, py, pz, x, y, z, w)
288
	local xs, ys, zs = x + x, y + y, z + z
289
	local wx, wy, wz = w * xs, w * ys, w * zs
290
	local xx = x * xs
291
	local xy = x * ys
292
	local xz = x * zs
293
	local yy = y * ys
294
	local yz = y * zs
295
	local zz = z * zs
296
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
297
end
298
 
299
function QuaternionSlerp(a, b, t)
300
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
301
	local startInterp, finishInterp;
302
	if cosTheta >= 0.0001 then
303
		if (1 - cosTheta) > 0.0001 then
304
			local theta = ACOS(cosTheta)
305
			local invSinTheta = 1 / SIN(theta)
306
			startInterp = SIN((1 - t) * theta) * invSinTheta
307
			finishInterp = SIN(t * theta) * invSinTheta
308
		else
309
			startInterp = 1 - t
310
			finishInterp = t
311
		end
312
	else
313
		if (1 + cosTheta) > 0.0001 then
314
			local theta = ACOS(-cosTheta)
315
			local invSinTheta = 1 / SIN(theta)
316
			startInterp = SIN((t - 1) * theta) * invSinTheta
317
			finishInterp = SIN(t * theta) * invSinTheta
318
		else
319
			startInterp = t - 1
320
			finishInterp = t
321
		end
322
	end
323
	return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
324
end
325
326
function Clerp(a, b, t)
327
	local qa = {QuaternionFromCFrame(a)}
328
	local qb = {QuaternionFromCFrame(b)}
329
	local ax, ay, az = a.x, a.y, a.z
330
	local bx, by, bz = b.x, b.y, b.z
331
	local _t = 1 - t
332
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
333
end
334
335
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
336
	local frame = IT("Frame")
337
	frame.BackgroundTransparency = TRANSPARENCY
338
	frame.BorderSizePixel = BORDERSIZEPIXEL
339
	frame.Position = POSITION
340
	frame.Size = SIZE
341
	frame.BackgroundColor3 = COLOR
342
	frame.BorderColor3 = BORDERCOLOR
343
	frame.Name = NAME
344
	frame.Parent = PARENT
345
	return frame
346
end
347
348
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
349
	local label = IT("TextLabel")
350
	label.BackgroundTransparency = 1
351
	label.Size = UD2(1, 0, 1, 0)
352
	label.Position = UD2(0, 0, 0, 0)
353
	label.TextColor3 = TEXTCOLOR
354
	label.TextStrokeTransparency = STROKETRANSPARENCY
355
	label.TextTransparency = TRANSPARENCY
356
	label.FontSize = TEXTFONTSIZE
357
	label.Font = TEXTFONT
358
	label.BorderSizePixel = BORDERSIZEPIXEL
359
	label.TextScaled = false
360
	label.Text = TEXT
361
	label.Name = NAME
362
	label.Parent = PARENT
363
	return label
364
end
365
366
function NoOutlines(PART)
367
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
368
end
369
370
371
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
372
	local NEWWELD = IT(TYPE)
373
	NEWWELD.Part0 = PART0
374
	NEWWELD.Part1 = PART1
375
	NEWWELD.C0 = C0
376
	NEWWELD.C1 = C1
377
	NEWWELD.Parent = PARENT
378
	return NEWWELD
379
end
380
381
function CreateSound(ID, PARENT, VOLUME, PITCH)
382
	local NEWSOUND = nil
383
	coroutine.resume(coroutine.create(function()
384
		NEWSOUND = IT("Sound", PARENT)
385
		NEWSOUND.Volume = VOLUME
386
		NEWSOUND.Pitch = PITCH
387
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
388
		Swait()
389
		NEWSOUND:play()
390
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
391
	end))
392
	return NEWSOUND
393
end
394
395
function CFrameFromTopBack(at, top, back)
396
	local right = top:Cross(back)
397
	return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
398
end
399
400
function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
401
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
402
	local mesh = IT("SpecialMesh",wave)
403
	mesh.MeshType = "FileMesh"
404
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
405
	mesh.Scale = SIZE
406
	mesh.Offset = VT(0,0,-SIZE.X/8)
407
	wave.CFrame = CFRAME
408
	coroutine.resume(coroutine.create(function(PART)
409
		for i = 1, WAIT do
410
			Swait()
411
			mesh.Scale = mesh.Scale + GROW
412
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
413
			if DOESROT == true then
414
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
415
			end
416
			wave.Transparency = wave.Transparency + (0.5/WAIT)
417
			if wave.Transparency > 0.99 then
418
				wave:remove()
419
			end
420
		end
421
	end))
422
end
423
424
function CreateWave2(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
425
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
426
	local mesh = IT("SpecialMesh",wave)
427
	mesh.MeshType = "FileMesh"
428
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
429
	mesh.Scale = SIZE
430
	--mesh.Offset = VT(0,0,-SIZE.X/8)
431
	wave.CFrame = CFRAME
432
	coroutine.resume(coroutine.create(function(PART)
433
		for i = 1, WAIT do
434
			Swait()
435
			mesh.Scale = mesh.Scale + GROW
436
			--mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
437
			if DOESROT == true then
438
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
439
			end
440
			wave.Transparency = wave.Transparency + (0.5/WAIT)
441
			if wave.Transparency > 0.99 then
442
				wave:remove()
443
			end
444
		end
445
	end))
446
end
447
448
function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
449
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
450
	local mesh = IT("SpecialMesh",wave)
451
	mesh.MeshType = "FileMesh"
452
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
453
	mesh.Scale = SIZE
454
	wave.CFrame = CFRAME
455
	coroutine.resume(coroutine.create(function(PART)
456
		for i = 1, WAIT do
457
			Swait()
458
			mesh.Scale = mesh.Scale + GROW
459
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
460
			if DOESROT == true then
461
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
462
			end
463
			wave.Transparency = wave.Transparency + (0.5/WAIT)
464
			if wave.Transparency > 0.99 then
465
				wave:remove()
466
			end
467
		end
468
	end))
469
end
470
471
472
function Slice(SIZE,WAIT,CFRAME,COLOR,GROW)
473
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(1,1,1), true)
474
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
475
	wave.CFrame = CFRAME
476
	coroutine.resume(coroutine.create(function(PART)
477
		for i = 1, WAIT do
478
			Swait()
479
			mesh.Scale = mesh.Scale * GROW
480
			wave.Transparency = wave.Transparency + (0.5/WAIT)
481
			if wave.Transparency > 0.99 then
482
				wave:remove()
483
			end
484
		end
485
	end))
486
end
487
488
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
489
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Maroon"), "Effect", VT(1,1,1), true)
490
	local mesh = IT("SpecialMesh",wave)
491
	mesh.MeshType = "Sphere"
492
	mesh.Scale = SIZE
493
	mesh.Offset = VT(0,0,0)
494
	wave.CFrame = CFRAME
495
	coroutine.resume(coroutine.create(function(PART)
496
		for i = 1, WAIT do
497
			Swait()
498
			mesh.Scale = mesh.Scale + GROW
499
			wave.Transparency = wave.Transparency + (1/WAIT)
500
			if wave.Transparency > 0.99 then
501
				wave:remove()
502
			end
503
		end
504
	end))
505
end
506
507
function MakeForm(PART,TYPE)
508
	if TYPE == "Cyl" then
509
		local MSH = IT("CylinderMesh",PART)
510
	elseif TYPE == "Ball" then
511
		local MSH = IT("SpecialMesh",PART)
512
		MSH.MeshType = "Sphere"
513
	elseif TYPE == "Wedge" then
514
		local MSH = IT("SpecialMesh",PART)
515
		MSH.MeshType = "Wedge"
516
	end
517
end
518
519
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
520
	if FLOOR ~= nil then
521
		coroutine.resume(coroutine.create(function()
522
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
523
			PART.CFrame = CF(POSITION)
524
			for i = 1, 45 do
525
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
526
				RingPiece.Material = FLOOR.Material
527
				RingPiece.Color = FLOOR.Color
528
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE*4, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
529
				Debris:AddItem(RingPiece,SWAIT/100)
530
			end
531
			PART:remove()
532
		end))
533
	end
534
end
535
536
function CheckTableForString(Table, String)
537
	for i, v in pairs(Table) do
538
		if string.find(string.lower(String), string.lower(v)) then
539
			return true
540
		end
541
	end
542
	return false
543
end
544
545
function CheckIntangible(Hit)
546
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
547
	if Hit and Hit.Parent then
548
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
549
			return true
550
		end
551
	end
552
	return false
553
end
554
555
Debris = game:GetService("Debris")
556
557
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
558
	local Direction = CFrame.new(StartPos, Vec).lookVector
559
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
560
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
561
	if RayHit and CheckIntangible(RayHit) then
562
		if DelayIfHit then
563
			wait()
564
		end
565
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
566
	end
567
	return RayHit, RayPos, RayNormal
568
end
569
570
function turnto(position)
571
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
572
end
573
574
--//=================================\\
575
--||	     WEAPON CREATION
576
--\\=================================//
577
local FIST = CreatePart1(3, Weapon, "Neon", 0, 0, "Neon Gauntlet Part1", VT(1.01*Player_Size,1.4*Player_Size,1.01*Player_Size),false)
578
Light = Instance.new("PointLight",FIST)
579
Light.Brightness = 0.85
580
touchCounter = 0
581
local cR=255
582
local cG=0
583
local cB=0
584
local flg5=1 local omgidk=1
585
local add=7.5
586
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
587
	if omgidk>10000 then omgidk=0 end
588
	omgidk=omgidk+1
589
	if cR>=255 then flg5=1 end
590
	if cG>=255 then flg5=2 end
591
	if cB>=255 then flg5=3 end
592
	if flg5==1 then cR=cR-add cG=cG+add end
593
	if flg5==2 then cG=cG-add cB=cB+add end
594
	if flg5==3 then cB=cB-add cR=cR+add end
595
	color=Color3.fromRGB(cR,cG,cB)
596
	Light.Color = color
597
end)
598
local weld = CreateWeldOrSnapOrMotor("Weld", FIST, RightArm, FIST, CF(0 * Player_Size, -0.25 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
599
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.2*Player_Size,0.3*Player_Size,1.2*Player_Size),false)
600
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
601
602
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
603
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
604
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
605
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
606
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
607
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
608
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
609
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
610
611
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1.1*Player_Size),false)
612
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
613
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Maroon", "Neon Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1*Player_Size),false)
614
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.05 * Player_Size, -0.375 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
615
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
616
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
617
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
618
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
619
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
620
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, -0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
621
touchCounter = 0
622
local cR=255
623
local cG=0
624
local cB=0
625
local flg5=1 local omgidk=1
626
local add=7.5
627
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
628
	if omgidk>10000 then omgidk=0 end
629
	omgidk=omgidk+1
630
	if cR>=255 then flg5=1 end
631
	if cG>=255 then flg5=2 end
632
	if cB>=255 then flg5=3 end
633
	if flg5==1 then cR=cR-add cG=cG+add end
634
	if flg5==2 then cG=cG-add cB=cB+add end
635
	if flg5==3 then cB=cB-add cR=cR+add end
636
	color=Color3.fromRGB(cR,cG,cB)
637
	local d = Weapon:FindFirstChild("Neon Gauntlet Part")
638
	if d then
639
		d.Color = color
640
	end
641
	local d = Weapon:FindFirstChild("Neon Gauntlet Part1")
642
	if d then
643
		d.Color = color
644
	end
645
end)
646
for _, c in pairs(Weapon:GetChildren()) do
647
	if c.ClassName == "Part" then
648
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
649
	end
650
end
651
652
Weapon.Parent = Character
653
654
Humanoid.Died:connect(function()
655
	ATTACK = true
656
end)
657
658
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.13, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
659
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.60, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
660
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
661
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
662
663
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[E] Ultra Punch", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 1")
664
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[F] Punish", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 2")
665
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Dash", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 3")
666
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[Q] Ultimate Punch", SKILLTEXTCOLOR, 6, "SciFi", 0, 2, 1, "Text4")
667
668
--//=================================\\
669
--||	     DAMAGE FUNCTIONS
670
--\\=================================//
671
672
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
673
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
674
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
675
	local BODYGYRO = IT("BodyGyro", STATPART)
676
	local BODYPOSITION = IT("BodyPosition", STATPART)
677
	BODYPOSITION.P = 2000
678
	BODYPOSITION.D = 100
679
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
680
	BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
681
	game:GetService("Debris"):AddItem(STATPART ,5)
682
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
683
	BILLBOARDGUI.Adornee = STATPART
684
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
685
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
686
	BILLBOARDGUI.AlwaysOnTop = false
687
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
688
	TEXTLABEL.BackgroundTransparency = 1
689
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
690
	TEXTLABEL.Text = TEXT
691
	TEXTLABEL.Font = "SciFi"
692
	TEXTLABEL.FontSize="Size42"
693
	TEXTLABEL.TextColor3 = COLOR
694
	TEXTLABEL.TextStrokeTransparency = 1
695
	TEXTLABEL.TextScaled = true
696
	TEXTLABEL.TextWrapped = true
697
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
698
		if LABELTYPE == "Normal" then
699
			for i = 1, 30 do
700
				Swait()
701
				STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
702
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
703
			end
704
		elseif LABELTYPE == "Debuff" then
705
			for i = 1, 30 do
706
				Swait()
707
				STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
708
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
709
			end
710
		elseif LABELTYPE == "Shock" then
711
			local ORIGIN = STATPART.Position
712
			for i = 1, 30 do
713
				Swait()
714
				STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
715
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
716
			end
717
		end
718
		THEPART.Parent = nil
719
	end),STATPART, BODYPOSITION, TEXTLABEL)
720
end
721
722
--//=================================\\
723
--||			DAMAGING
724
--\\=================================//
725
726
function killnearest(position,range,maxstrength,direction)
727
	for i,v in ipairs(workspace:GetChildren()) do
728
	local body = v:GetChildren()
729
		for part = 1, #body do
730
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
731
				if(body[part].Position - position).Magnitude < range then
732
					if v.ClassName == "Model" then
733
						--v:BreakJoints()
734
					end
735
					local POS = position
736
					coroutine.resume(coroutine.create(function()
737
						body[part].Anchored = true
738
						body[part].Parent = Effects
739
						body[part].CanCollide = true
740
						local SIZE = body[part].Size
741
						body[part].Material = "Neon"
742
						CreateSound("952306739", body[part], 2, MRANDOM(7, 12) / 10)
743
						for i = 1, 75 do
744
							Swait()
745
							body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
746
							body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
747
						end
748
						coroutine.resume(coroutine.create(function()
749
							while true do
750
								Swait()
751
								body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
752
								body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
753
							end
754
						end))
755
						body[part].Anchored = false
756
						body[part].Velocity = direction.lookVector*maxstrength
757
					end))
758
				end
759
			end
760
		end
761
		if v.ClassName == "Part" then
762
			if v.Anchored == false and (v.Position - position).Magnitude < range then
763
				local POS = position
764
				coroutine.resume(coroutine.create(function()
765
					v.Anchored = true
766
					v.Parent = Effects
767
					local SIZE = v.Size
768
					v.Material = "Neon"
769
					CreateSound("952306739", v, 2, MRANDOM(7, 12) / 10)
770
					for i = 1, 75 do
771
						Swait()
772
						v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
773
						v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
774
					end
775
					coroutine.resume(coroutine.create(function()
776
						while true do
777
							Swait()
778
							v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
779
							v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
780
						end
781
					end))
782
					v.Anchored = false
783
					v.Velocity = direction.lookVector*maxstrength
784
				end))
785
			end
786
		end
787
	end
788
end
789
790
--//=================================\\
791
--||	ATTACK FUNCTIONS AND STUFF
792
--\\=================================//
793
794
function AttackTemplate()
795
	ATTACK = true
796
	Rooted = false
797
	for i=0, 1, 0.1 / Animation_Speed do
798
		Swait()
799
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
800
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
801
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
802
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
803
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
804
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
805
	end
806
	ATTACK = false
807
	Rooted = false
808
end
809
810
function UltraPunch()
811
	ATTACK = true
812
	Rooted = false
813
	local SPEED = 15
814
	Speed = 10
815
	CreateSound("214876666", RightArm, 7.5, 0.8)
816
	for i=0, 0, 0.1 / Animation_Speed do
817
		Swait()
818
		turnto(Mouse.Hit.p)
819
		MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-1/15,-1/15,-1/15))
820
		MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-2/15,-2/15,-2/15))
821
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
822
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
823
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
824
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
825
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
826
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
827
	end
828
	for i=0, 0, 0.1 / Animation_Speed do
829
		Swait()
830
		turnto(Mouse.Hit.p)
831
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
832
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
833
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
834
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
835
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
836
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
837
	end
838
	local PART = CreatePart(3, Effects, "Neon", 0, 0.8, "Maroon", "Punch", VT(50,50,50),false)
839
	PART.CFrame = RootPart.CFrame * CF(0,0,-25)
840
	PART.Shape = "Ball"
841
	local bv = Instance.new("BodyVelocity") 
842
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
843
	bv.velocity = RootPart.CFrame.lookVector*600
844
	bv.Parent = PART
845
	bv.Name = "PROJECTILEVELOCITY"
846
	CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(2.5,0.2,2.5))
847
	CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Maroon",VT(3,0.2,3))
848
	CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(2,0.6,2))
849
	CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Maroon",VT(2.2,0.6,2.2))
850
	CreateSound("414517163", Effects, 3.5, MRANDOM(7, 12) / 10)
851
	coroutine.resume(coroutine.create(function()
852
		for i = 1, 11 do
853
			Swait()
854
			PART.Transparency = PART.Transparency + 0.2/10
855
			PART.Size = PART.Size + VT(5,5,5)
856
			killnearest(PART.Position,PART.Size.Y/2+15,100,RootPart.CFrame)
857
		end
858
		PART:Destroy()
859
	end))
860
	for i=0, 0, 0.1 / Animation_Speed do
861
		Swait()
862
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
863
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
864
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
865
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
866
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
867
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
868
	end
869
	Speed = SPEED
870
	ATTACK = false
871
	Rooted = false
872
end
873
874
function Punish()
875
	Animation_Speed = 20
876
	ATTACK = true
877
	Rooted = false
878
	local HASGRABBED = false
879
	local WELD = nil
880
	local TORS = nil
881
	local hitting = FIST.Touched:connect(function(hit) 
882
		if hit.Parent:FindFirstChild("Humanoid") then
883
			if hit.Parent.Humanoid.Health ~= 0 then
884
				UNANCHOR = false
885
				TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
886
				TORS.Anchored = true
887
				TORS.CFrame = RightArm.CFrame * CF(0,-1.15,0) * ANGLES(RAD(90), RAD(0), RAD(0))
888
           		WELD = weldBetween(RightArm,TORS)
889
				HASGRABBED = true
890
				Rooted = true
891
			end
892
		end
893
	end)
894
	for i=0, 2, 0.1 / Animation_Speed do
895
		Swait()
896
		if HASGRABBED == true then
897
			break
898
		end
899
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 2 / Animation_Speed)
900
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 2 / Animation_Speed)
901
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
902
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
903
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
904
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
905
	end
906
	hitting:disconnect()
907
	if HASGRABBED == true then
908
		TORS.Anchored = false
909
        RootPart.Anchored = true
910
		for i=0, 1.6, 0.1 / Animation_Speed do
911
			Swait()
912
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.2) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
913
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
914
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
915
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
916
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
917
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
918
		end
919
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.5,0.3,0.5))
920
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Pearl",VT(0.6,0.3,0.6))
921
		local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
922
		SOUNDPART.CFrame = RootPart.CFrame
923
		Debris:AddItem(SOUNDPART,5)
924
		CreateSound("357202073", SOUNDPART, 0, 1)
925
		for i = 1, 16 do
926
			Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(-180,180)), RAD(90)),"Pearl", 1 + MRANDOM(1,30)/15)
927
		end
928
		for i=0, 1.6, 0.1 / Animation_Speed do
929
			Swait()
930
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 50000000) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
931
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
932
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
933
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
934
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
935
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
936
		end
937
		for i=0, 0.4, 0.1 / Animation_Speed do
938
			Swait()
939
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), 3 / Animation_Speed)
940
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
941
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
942
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 3 / Animation_Speed)
943
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
944
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
945
		end
946
		if HITFLOOR ~= nil then
947
			CreateDebreeRing(HITFLOOR,CF(RootPart.Position)*CF(0,-3,0).p,15,VT(7,7,7),85)
948
		end
949
		CreateSound("414517163", Effects, 3.5, MRANDOM(7, 12) / 10)
950
		WELD:remove()
951
		for i = 1, 26 do
952
			Swait()
953
			killnearest(RootPart.Position,45,100,Torso.CFrame)
954
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Pearl",VT(0.3,3,0.3))
955
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Maroon",VT(1,0.4,1))
956
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Maroon",VT(2.3,0.3,2.3))
957
			Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
958
			Slice(0.1,65,CF(RightArm.CFrame*CF(0,-1,0).p) * ANGLES(RAD(MRANDOM(-20,20)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-20,20))),"Maroon", 1 + MRANDOM(1,30)/15)
959
		end
960
	end
961
	UNANCHOR = true
962
	ATTACK = false
963
	Rooted = false
964
	Animation_Speed = 20
965
end
966
967
function Dash()
968
	local ORIGIN = RootPart.Position
969
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
970
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
971
	local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
972
	SOUNDPART.CFrame = RootPart.CFrame
973
	Debris:AddItem(SOUNDPART,5)
974
	CreateSound("357202032", SOUNDPART, 0, 1)
975
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,3,0),VT(ORIGIN.X,Mouse.Hit.p.Y,ORIGIN.Z))
976
	Swait()
977
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
978
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
979
	local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
980
	SOUNDPART.CFrame = RootPart.CFrame
981
	Debris:AddItem(SOUNDPART,5)
982
	CreateSound("1295446488", SOUNDPART, 2.5, 1)
983
		for i=0, 0.5, 0.1 / Animation_Speed do
984
			Swait()
985
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
986
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
987
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(190), RAD(-175)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
988
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
989
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
990
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
991
		end
992
		ATTACK = false
993
		Rooted = false
994
	end
995
function Begoner9000()
996
	ATTACK = true
997
	Rooted = true
998
	CreateSound("255679384", RightArm, 8, 1)
999
	for i=0, 0, 0.1 / Animation_Speed do
1000
		Swait()
1001
		turnto(Mouse.Hit.p)
1002
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Maroon",VT(0.2,0,0.2))
1003
		Slice(0.1,65,RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Maroon", 1.1)
1004
		MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"New Yeller",VT(0.001,0.001,1),0)
1005
		MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"Maroon",VT(0.001,0.001,2),0)
1006
		MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-1/15,-1/15,-1/15))
1007
		MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-2/15,-2/15,-2/15))
1008
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
1009
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
1010
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1011
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1012
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1013
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1014
	end
1015
	for i=0, 0, 0.1 / Animation_Speed do
1016
		Swait()
1017
		turnto(Mouse.Hit.p)
1018
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
1019
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
1020
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1021
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1022
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1023
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1024
	end
1025
	MagicSphere(VT(4,4,4),100,RootPart.CFrame * CF(0,0,-6),"Maroon",VT(-0.04,-0.04,-0.04))
1026
	MagicSphere(VT(3.5,3.5,3.5),100,RootPart.CFrame * CF(0,0,-6),"Really black",VT(-0.035,-0.035,-0.035))
1027
	coroutine.resume(coroutine.create(function()
1028
		Swait(0.01)
1029
		for i = 1, 2 do
1030
			MagicSphere(VT(150,150,150),75,RootPart.CFrame * CF(0,0,-72*i),"Maroon",VT(-150/(150-(15*i)),-150/(150-(15*i)),-150/(150-(15*i))))
1031
			CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(4.5*i,0.2,4.5*i))
1032
			CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(4*i,0.6,4*i))
1033
		end
1034
		killnearest(RootPart.CFrame * CF(0,0,-500).p,500,1000,RootPart.CFrame)
1035
		for i = 1, 3 do
1036
			CreateSound("414517163", Effects, 3.5, 0.8)
1037
			CreateSound("414517163", Effects, 3.5, 0.8)
1038
		end
1039
		coroutine.resume(coroutine.create(function()
1040
			for i = 1, 3 do
1041
				Swait()
1042
				for i = 1, 1 do
1043
					Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
1044
				end
1045
				for i = 1, 2 do
1046
					Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Maroon", 1 + MRANDOM(1,30)/3)
1047
				end
1048
			end
1049
		end))
1050
	end))
1051
	for i=0, 0, 0.1 / Animation_Speed do
1052
		Swait()
1053
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
1054
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
1055
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1056
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1057
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
1058
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
1059
	end
1060
	ATTACK = false
1061
	Rooted = false
1062
end
1063
1064
--//=================================\\
1065
--||	  ASSIGN THINGS TO KEYS
1066
--\\=================================//
1067
1068
function MouseDown(Mouse)
1069
	if ATTACK == false then
1070
	end
1071
end
1072
1073
function MouseUp(Mouse)
1074
HOLD = false
1075
end
1076
1077
function KeyDown(Key)
1078
	KEYHOLD = true
1079
	if Key == "e" and ATTACK == false then
1080
		UltraPunch()
1081
	end
1082
1083
	if Key == "f" and ATTACK == false then
1084
		Punish()
1085
	end
1086
1087
	if Key == "c" and ATTACK == false then
1088
		Dash()
1089
	end
1090
1091
	if Key == "q" and ATTACK == false then
1092
		Begoner9000()()
1093
	end
1094
1095
	if Key == "p" and ATTACK == false then
1096
		if Speed == 16 then
1097
			Speed = 150
1098
		elseif Speed == 150 then
1099
			Speed = 16
1100
		end
1101
	end
1102
end
1103
1104
function KeyUp(Key)
1105
	KEYHOLD = false
1106
end
1107
1108
	Mouse.Button1Down:connect(function(NEWKEY)
1109
		MouseDown(NEWKEY)
1110
	end)
1111
	Mouse.Button1Up:connect(function(NEWKEY)
1112
		MouseUp(NEWKEY)
1113
	end)
1114
	Mouse.KeyDown:connect(function(NEWKEY)
1115
		KeyDown(NEWKEY)
1116
	end)
1117
	Mouse.KeyUp:connect(function(NEWKEY)
1118
		KeyUp(NEWKEY)
1119
	end)
1120
1121
--//=================================\\
1122
--\\=================================//
1123
1124
1125
function unanchor()
1126
	if UNANCHOR == true then
1127
		g = Character:GetChildren()
1128
		for i = 1, #g do
1129
			if g[i].ClassName == "Part" then
1130
				g[i].Anchored = false
1131
			end
1132
		end
1133
	end
1134
end
1135
1136
1137
--//=================================\\
1138
--||	WRAP THE WHOLE SCRIPT UP
1139
--\\=================================//
1140
1141
Humanoid.Changed:connect(function(Jump)
1142
	if Jump == "Jump" and (Disable_Jump == true) then
1143
		Humanoid.Jump = false
1144
	end
1145
end)
1146
1147
while true do
1148
	Swait()
1149
	ANIMATE.Parent = nil
1150
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1151
	IDLEANIMATION:Play()
1152
	SINE = SINE + CHANGE
1153
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1154
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1155
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1156
	HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1157
	local WALKSPEEDVALUE = 0
1158
	if Speed < 35 then
1159
		WALKSPEEDVALUE = 48
1160
	else
1161
		WALKSPEEDVALUE = 48
1162
	end
1163
	if ANIM == "Walk" and TORSOVELOCITY > 1 and Rooted == false then
1164
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (1) / Animation_Speed)
1165
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1166
		if Speed < 35 then
1167
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1168
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1169
		else
1170
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1171
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1172
		end
1173
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or Rooted == true then
1174
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1175
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1176
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1177
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1178
	end
1179
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1180
		ANIM = "Jump"
1181
		if ATTACK == false then
1182
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1183
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1184
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1185
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1186
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1187
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1188
	    end
1189
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1190
		ANIM = "Fall"
1191
		if ATTACK == false then
1192
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1193
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1194
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1195
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1196
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1197
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1198
		end
1199
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1200
		ANIM = "Idle"
1201
		if ATTACK == false then
1202
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1203
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1204
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1205
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1206
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1207
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1208
		end
1209
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil and Rooted == false then
1210
		ANIM = "Walk"
1211
		WALK = WALK + 1 / Animation_Speed
1212
		if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1213
			WALK = 0
1214
			if WALKINGANIM == true then
1215
				WALKINGANIM = false
1216
			elseif WALKINGANIM == false then
1217
				WALKINGANIM = true
1218
			end
1219
		end
1220
		--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1221
		--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1222
		if ATTACK == false then
1223
			if Speed < 35 then
1224
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1225
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1226
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1227
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1228
				RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1229
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1230
			else
1231
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1232
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1233
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1234
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1235
				RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1236
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1237
			end
1238
		end
1239
	end
1240
	unanchor()
1241
	Humanoid.MaxHealth = "inf"
1242
	Humanoid.Health = "inf"
1243
	if Rooted == false then
1244
		Disable_Jump = false
1245
		Humanoid.WalkSpeed = Speed
1246
	elseif Rooted == true then
1247
		Disable_Jump = true
1248
		Humanoid.WalkSpeed = 0
1249
	end
1250
	local MATHS = {"0","1"}
1251
	Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
1252
	Humanoid.PlatformStand = false
1253
end
1254
1255
--//=================================\\
1256
--\\=================================//
1257
1258
1259
--//====================================================\\--
1260
--||			  		 END OF SCRIPT
1261
--\\====================================================//--