View difference between Paste ID: T9PDr61j and Y1dVjxQq
SHOW: | | - or go back to the newest paste.
1
2
3
--//====================================================\\--
4
--||               ONLY 90s KIDS REMEMBER
5
--||              ABYSS EYE BY SHACKLUSTER
6
--\\====================================================//--
7
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
8
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
9
do
10
	print("FE Compatibility code by Mokiros")
11
	script.Parent = Player.Character
12
13
	--RemoteEvent for communicating
14
	local Event = Instance.new("RemoteEvent")
15
	Event.Name = "UserInput_Event"
16
17
	--Fake event to make stuff like Mouse.KeyDown work
18
	local function fakeEvent()
19
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
20
		t.connect = t.Connect
21
		return t
22
	end
23
24
	--Creating fake input objects with fake variables
25
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
26
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
27
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
28
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
29
	end}
30
	--Merged 2 functions into one by checking amount of arguments
31
	CAS.UnbindAction = CAS.BindAction
32
33
	--This function will trigger the events that have been :Connect()'ed
34
	local function te(self,ev,...)
35
		local t = m[ev]
36
		if t and t._fakeEvent and t.Function then
37
			t.Function(...)
38
		end
39
	end
40
	m.TrigEvent = te
41
	UIS.TrigEvent = te
42
43
	Event.OnServerEvent:Connect(function(plr,io)
44
	    if plr~=Player then return end
45
		if io.isMouse then
46
			m.Target = io.Target
47
			m.Hit = io.Hit
48
		else
49
			local b = io.UserInputState == Enum.UserInputState.Begin
50
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
51
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
52
			end
53
			for _,t in pairs(CAS.Actions) do
54
				for _,k in pairs(t.Keys) do
55
					if k==io.KeyCode then
56
						t.Function(t.Name,io.UserInputState,io)
57
					end
58
				end
59
			end
60
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
61
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
62
	    end
63
	end)
64
	Event.Parent = NLS([==[
65
	local Player = game:GetService("Players").LocalPlayer
66
	local Event = script:WaitForChild("UserInput_Event")
67
68
	local UIS = game:GetService("UserInputService")
69
	local input = function(io,a)
70
		if a then return end
71
		--Since InputObject is a client-side instance, we create and pass table instead
72
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
73
	end
74
	UIS.InputBegan:Connect(input)
75
	UIS.InputEnded:Connect(input)
76
77
	local Mouse = Player:GetMouse()
78
	local h,t
79
	--Give the server mouse data 30 times every second, but only if the values changed
80
	--If player is not moving their mouse, client won't fire events
81
	while wait(1/30) do
82
		if h~=Mouse.Hit or t~=Mouse.Target then
83
			h,t=Mouse.Hit,Mouse.Target
84
			Event:FireServer({isMouse=true,Target=t,Hit=h})
85
		end
86
	end]==],Player.Character)
87
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
88
end
89
90
wait(0.2)
91
92
print("Edit by Oof#0397 and idk.#0151")
93
warn("______________________________")
94
95
blue = false
96
red = true
97
green = false
98
Player = owner
99
PlayerGui = Player.PlayerGui
100
Cam = workspace.CurrentCamera
101
Backpack = Player.Backpack
102
Character = Player.Character
103
Humanoid = Character.Humanoid
104
RootPart = Character["HumanoidRootPart"]
105
Torso = Character["Torso"]
106
Head = Character["Head"]
107
RightArm = Character["Right Arm"]
108
LeftArm = Character["Left Arm"]
109
RightLeg = Character["Right Leg"]
110
LeftLeg = Character["Left Leg"]
111
RootJoint = RootPart["RootJoint"]
112
Neck = Torso["Neck"]
113
RightShoulder = Torso["Right Shoulder"]
114
LeftShoulder = Torso["Left Shoulder"]
115
RightHip = Torso["Right Hip"]
116
LeftHip = Torso["Left Hip"]
117
soundIsPlaying = false
118
removeuseless = game:GetService("Debris")
119
120
IT = Instance.new
121
CF = CFrame.new
122
VT = Vector3.new
123
RAD = math.rad
124
C3 = Color3.new
125
UD2 = UDim2.new
126
BRICKC = BrickColor.new
127
ANGLES = CFrame.Angles
128
EULER = CFrame.fromEulerAnglesXYZ
129
COS = math.cos
130
ACOS = math.acos
131
SIN = math.sin
132
ASIN = math.asin
133
ABS = math.abs
134
MRANDOM = math.random
135
FLOOR = math.floor
136
137
--//=================================\\
138
--|| 	      USEFUL VALUES
139
--\\=================================//
140
141
Animation_Speed = 3
142
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
143
local Speed = 25
144
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
145
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
146
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
147
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
148
local DAMAGEMULTIPLIER = 69
149
local ANIM = "Idle"
150
local ATTACK = false
151
local EQUIPPED = false
152
local HOLD = false
153
local COMBO = 1
154
local Rooted = false
155
local SINE = 0
156
local KEYHOLD = false
157
local CHANGE = 2 / Animation_Speed
158
local WALKINGANIM = false
159
local VALUE1 = false
160
local VALUE2 = false
161
local ROBLOXIDLEANIMATION = IT("Animation")
162
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
163
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
164
--ROBLOXIDLEANIMATION.Parent = Humanoid
165
local WEAPONGUI = IT("ScreenGui", PlayerGui)
166
WEAPONGUI.Name = "Weapon GUI"
167
local Effects = IT("Folder", Character)
168
Effects.Name = "Effects"
169
local ANIMATOR = Humanoid.Animator
170
local ANIMATE = Character.Animate
171
local UNANCHOR = true
172
local FADERS = false
173
174
--//=================================\\
175
--\\=================================//
176
177
178
--//=================================\\
179
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
180
--\\=================================//
181
182
ArtificialHB = Instance.new("BindableEvent", script)
183
ArtificialHB.Name = "ArtificialHB"
184
185
script:WaitForChild("ArtificialHB")
186
187
frame = Frame_Speed
188
tf = 0
189
allowframeloss = false
190
tossremainder = false
191
lastframe = tick()
192
script.ArtificialHB:Fire()
193
194
game:GetService("RunService").Heartbeat:connect(function(s, p)
195
	tf = tf + s
196
	if tf >= frame then
197
		if allowframeloss then
198
			ArtificialHB:Fire()
199
			lastframe = tick()
200
		else
201
			for i = 1, math.floor(tf / frame) do
202
				ArtificialHB:Fire()
203
			end
204
			lastframe = tick()
205
		end
206
		if tossremainder then
207
			tf = 0
208
		else
209
			tf = tf - frame * math.floor(tf / frame)
210
		end
211
	end
212
end)
213
214
--//=================================\\
215
--\\=================================//
216
217
--//=================================\\
218
--|| 	      SOME FUNCTIONS
219
--\\=================================//
220
221
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
222
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
223
end
224
225
function PositiveAngle(NUMBER)
226
	if NUMBER >= 0 then
227
		NUMBER = 0
228
	end
229
	return NUMBER
230
end
231
232
function NegativeAngle(NUMBER)
233
	if NUMBER <= 0 then
234
		NUMBER = 0
235
	end
236
	return NUMBER
237
end
238
239
function Swait(NUMBER)
240
	if NUMBER == 0 or NUMBER == nil then
241
		ArtificialHB.Event:wait()
242
	else
243
		for i = 1, NUMBER do
244
			ArtificialHB.Event:wait()
245
		end
246
	end
247
end
248
249
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
250
	local NEWMESH = IT(MESH)
251
	if MESH == "SpecialMesh" then
252
		NEWMESH.MeshType = MESHTYPE
253
		if MESHID ~= "nil" and MESHID ~= "" then
254
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
255
		end
256
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
257
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
258
		end
259
	end
260
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
261
	NEWMESH.Scale = SCALE
262
	NEWMESH.Parent = PARENT
263
	return NEWMESH
264
end
265
266
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
267
	local NEWPART = IT("Part")
268
	NEWPART.formFactor = FORMFACTOR
269
	NEWPART.Reflectance = REFLECTANCE
270
	NEWPART.Transparency = TRANSPARENCY
271
	NEWPART.CanCollide = false
272
	NEWPART.Locked = true
273
	NEWPART.Anchored = true
274
	if ANCHOR == false then
275
		NEWPART.Anchored = false
276
	end
277
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
278
	NEWPART.Name = NAME
279
	NEWPART.Size = SIZE
280
	NEWPART.Position = Torso.Position
281
	NEWPART.Material = MATERIAL
282
	NEWPART:BreakJoints()
283
	NEWPART.Parent = PARENT
284
	return NEWPART
285
end
286
287
	local function weldBetween(a, b)
288
	    local weldd = Instance.new("ManualWeld")
289
	    weldd.Part0 = a
290
	    weldd.Part1 = b
291
	    weldd.C0 = CFrame.new()
292
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
293
	    weldd.Parent = a
294
	    return weldd
295
	end
296
297
298
function QuaternionFromCFrame(cf)
299
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
300
	local trace = m00 + m11 + m22
301
	if trace > 0 then 
302
		local s = math.sqrt(1 + trace)
303
		local recip = 0.5 / s
304
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
305
	else
306
		local i = 0
307
		if m11 > m00 then
308
			i = 1
309
		end
310
		if m22 > (i == 0 and m00 or m11) then
311
			i = 2
312
		end
313
		if i == 0 then
314
			local s = math.sqrt(m00 - m11 - m22 + 1)
315
			local recip = 0.5 / s
316
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
317
		elseif i == 1 then
318
			local s = math.sqrt(m11 - m22 - m00 + 1)
319
			local recip = 0.5 / s
320
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
321
		elseif i == 2 then
322
			local s = math.sqrt(m22 - m00 - m11 + 1)
323
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
324
		end
325
	end
326
end
327
 
328
function QuaternionToCFrame(px, py, pz, x, y, z, w)
329
	local xs, ys, zs = x + x, y + y, z + z
330
	local wx, wy, wz = w * xs, w * ys, w * zs
331
	local xx = x * xs
332
	local xy = x * ys
333
	local xz = x * zs
334
	local yy = y * ys
335
	local yz = y * zs
336
	local zz = z * zs
337
	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))
338
end
339
 
340
function QuaternionSlerp(a, b, t)
341
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
342
	local startInterp, finishInterp;
343
	if cosTheta >= 0.0001 then
344
		if (1 - cosTheta) > 0.0001 then
345
			local theta = ACOS(cosTheta)
346
			local invSinTheta = 1 / SIN(theta)
347
			startInterp = SIN((1 - t) * theta) * invSinTheta
348
			finishInterp = SIN(t * theta) * invSinTheta
349
		else
350
			startInterp = 1 - t
351
			finishInterp = t
352
		end
353
	else
354
		if (1 + cosTheta) > 0.0001 then
355
			local theta = ACOS(-cosTheta)
356
			local invSinTheta = 1 / SIN(theta)
357
			startInterp = SIN((t - 1) * theta) * invSinTheta
358
			finishInterp = SIN(t * theta) * invSinTheta
359
		else
360
			startInterp = t - 1
361
			finishInterp = t
362
		end
363
	end
364
	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
365
end
366
367
function Clerp(a, b, t)
368
	local qa = {QuaternionFromCFrame(a)}
369
	local qb = {QuaternionFromCFrame(b)}
370
	local ax, ay, az = a.x, a.y, a.z
371
	local bx, by, bz = b.x, b.y, b.z
372
	local _t = 1 - t
373
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
374
end
375
376
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
377
	local frame = IT("Frame")
378
	frame.BackgroundTransparency = TRANSPARENCY
379
	frame.BorderSizePixel = BORDERSIZEPIXEL
380
	frame.Position = POSITION
381
	frame.Size = SIZE
382
	frame.BackgroundColor3 = COLOR
383
	frame.BorderColor3 = BORDERCOLOR
384
	frame.Name = NAME
385
	frame.Parent = PARENT
386
	return frame
387
end
388
389
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
390
	local label = IT("TextLabel")
391
	label.BackgroundTransparency = 1
392
	label.Size = UD2(1, 0, 1, 0)
393
	label.Position = UD2(0, 0, 0, 0)
394
	label.TextColor3 = TEXTCOLOR
395
	label.TextStrokeTransparency = STROKETRANSPARENCY
396
	label.TextTransparency = TRANSPARENCY
397
	label.FontSize = TEXTFONTSIZE
398
	label.Font = TEXTFONT
399
	label.BorderSizePixel = BORDERSIZEPIXEL
400
	label.TextScaled = false
401
	label.Text = TEXT
402
	label.Name = NAME
403
	label.Parent = PARENT
404
	return label
405
end
406
407
function NoOutlines(PART)
408
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
409
end
410
411
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
412
	local NEWWELD = IT(TYPE)
413
	NEWWELD.Part0 = PART0
414
	NEWWELD.Part1 = PART1
415
	NEWWELD.C0 = C0
416
	NEWWELD.C1 = C1
417
	NEWWELD.Parent = PARENT
418
	return NEWWELD
419
end
420
421
local soundisnotplaying = Character.sid.Volume = 0
422
423
screenGui = Instance.new("ScreenGui")
424
screenGui.Parent = script.Parent
425
 
426
frame = Instance.new("Frame")
427
frame.Parent = screenGui
428
frame.Position = UDim2.new(0, 8, 0, 225)
429
frame.Size = UDim2.new(0, 250, 0, 200)
430
frame.BackgroundColor3 = BrickColor.new("White").Color
431
frame.BackgroundTransparency = .5
432
 
433
textButton = Instance.new("TextButton")
434
textButton.Parent = screenGui
435
textButton.Position = UDim2.new(0, 12, 0, 400)
436
textButton.Size = UDim2.new(0, 50, 0, 10)
437
textButton.BackgroundColor3 = BrickColor.new("Really red").Color
438
textButton.Text = "Red"
439
 
440
textButton.MouseButton1Down:connect(function()
441
red = true
442
green = false
443
blue = false
444
rainbow = false
445
smooth = false
446
end)
447
 
448
coroutine.wrap(function()
449
while wait() do
450
sid = textBox.Text
451
end
452
end)()
453
454
455
textButton2 = Instance.new("TextButton")
456
textButton2.Parent = screenGui
457
textButton2.Position = UDim2.new(0, 75, 0, 400)
458
textButton2.Size = UDim2.new(0, 50, 0, 10)
459
textButton2.BackgroundColor3 = BrickColor.new("Really blue").Color
460
textButton2.Text = "Blue"
461
 
462
textButton2.MouseButton1Down:connect(function()
463
red = false
464
green = false
465
blue = true
466
rainbow = false
467
smooth = false
468
end)
469
470
godmode = coroutine.wrap(function()---- so you don't get killed by fucking random things
471
while true do
472
hum.MaxHealth = math.huge
473
wait(0.0000001)
474
hum.Health = math.huge
475
wait()
476
end
477
end)
478
godmode()
479
ff = Instance.new("ForceField", Character)
480
ff.Visible = false
481
 
482
textButton3 = Instance.new("TextButton")
483
textButton3.Parent = screenGui
484
textButton3.Position = UDim2.new(0, 138, 0, 400)
485
textButton3.Size = UDim2.new(0, 50, 0, 10)
486
textButton3.BackgroundColor3 = BrickColor.new("Lime green").Color
487
textButton3.Text = "Green"
488
 
489
textButton3.MouseButton1Down:connect(function()
490
red = false
491
green = true
492
blue = false
493
rainbow = false
494
smooth = false
495
end)
496
 
497
textButton4 = Instance.new("TextButton")
498
textButton4.Parent = screenGui
499
textButton4.Position = UDim2.new(0, 201, 0, 400)
500
textButton4.Size = UDim2.new(0, 50, 0, 10)
501
coroutine.wrap(function()
502
while true do
503
textButton4.BackgroundColor3 = BrickColor.Random().Color
504
wait(.05)
505
end
506
end)()
507
textButton4.Text = "Rainbow"
508
 
509
textButton4.MouseButton1Down:connect(function()
510
red = false
511
green = false
512
blue = false
513
rainbow = true
514
smooth = false
515
end)
516
 
517
textBox = Instance.new("TextBox")
518
textBox.Parent = screenGui
519
textBox.Position = UDim2.new(0, 58, 0, 280)
520
textBox.Size = UDim2.new(0, 150, 0, 20)
521
textBox.BackgroundColor3 = BrickColor.new("White").Color
522
textBox.Text = "Type Sound Id here"
523
 
524
form = Instance.new("TextButton")
525
form.Parent = screenGui
526
form.TextScaled = true
527
form.Position = UDim2.new(0, 114, 0, 305)
528
form.Size = UDim2.new(0, 40, 0, 20)
529
form.BackgroundColor3 = BrickColor.new("White").Color
530
form.Text = "Up"
531
 
532
form.MouseButton1Down:connect(function()
533
if standingg then
534
standingg = false
535
flatt = true
536
form.Text = "Flat"
537
elseif flatt then
538
flatt = false
539
standingg = true
540
form.Text = "Up"
541
end
542
end)
543
 
544
playbutton = Instance.new("TextButton")
545
playbutton.Parent = screenGui
546
playbutton.Position = UDim2.new(0, 58, 0, 305)
547
playbutton.Size = UDim2.new(0, 50, 0, 20)
548
playbutton.BackgroundColor3 = BrickColor.new("White").Color
549
playbutton.Text = "Play"
550
 
551
playbutton.MouseButton1Down:connect(function()
552
if not s then return end
553
if soundIsPlaying then
554
sound1:Remove()
555
sound1 = Instance.new("Sound", Character)
556
sound1.Looped = true
557
sound1.SoundId = "http://www.roblox.com/asset/?id=" .. sid
558
sound1:Play()
559
else
560
soundIsPlaying = true
561
vol.Text = 1
562
pitch.Text = 1
563
sound1 = Instance.new("Sound", Character)
564
coroutine.wrap(function()
565
while soundIsPlaying do
566
wait()
567
sound1.Volume = svol
568
end
569
end)()
570
sound1.Looped = true
571
coroutine.wrap(function()
572
while soundIsPlaying do
573
sound1.Pitch = pitchh
574
wait()
575
end
576
end)()
577
sound1.SoundId = "http://www.roblox.com/asset/?id=" .. sid
578
sound1:Play()
579
coroutine.wrap(function()
580
while sound1.IsPlaying and soundIsPlaying do
581
for i,v in pairs(tab) do
582
v.Enabled = true
583
v.Brightness = sound1.PlaybackLoudness/19
584
v.Range = sound1.PlaybackLoudness/15
585
if red then
586
v.Color = Color3.new(sound1.PlaybackLoudness/200, 0,0)
587
elseif blue then
588
v.Color = Color3.new(0, 0,sound1.PlaybackLoudness/200)
589
elseif green then
590
v.Color = Color3.new(0, sound1.PlaybackLoudness/200,0)
591
elseif rainbow then
592
v.Color = brick.BrickColor.Color
593
end
594
end
595
wait()
596
end
597
end)()
598
while sound1.IsPlaying and soundIsPlaying do
599
workspace.CurrentCamera.FieldOfView = 70 - sound1.PlaybackLoudness/100
600
bcol = brick.BrickColor
601
for _,v in pairs(tab2) do
602
if standingg then
603
v.Size = Vector3.new(1, sound1.PlaybackLoudness/math.random(10,25), 1)
604
elseif flatt then
605
v.Size = Vector3.new(sound1.PlaybackLoudness/math.random(10,25), 1, 1)
606
end
607
if red then
608
v.BrickColor = BrickColor.new(Color3.new(sound1.PlaybackLoudness/200, 0,0))
609
elseif blue then
610
v.BrickColor = BrickColor.new(Color3.new(0,0,sound1.PlaybackLoudness/200))
611-
	BOTTOMTEXTURE.Color3 = C3(0,0,0)
611+
elseif green then
612-
	TOPTEXTURE.Color3 = C3(0,0,0)
612+
v.BrickColor = BrickColor.new(Color3.new(0,sound1.PlaybackLoudness/200,0))
613
elseif rainbow then
614
v.BrickColor = BrickColor.Random()
615
end
616
end
617
wait()
618
end
619
end
620
end)
621
 
622
local stopbutton = Instance.new("TextButton")
623
stopbutton.Parent = screenGui
624
stopbutton.Position = UDim2.new(0, 158, 0, 305)
625
stopbutton.Size = UDim2.new(0, 50, 0, 20)
626
stopbutton.BackgroundColor3 = BrickColor.new("White").Color
627
stopbutton.Text = "Stop"
628
 
629
vol = Instance.new("TextBox")
630
vol.Parent = screenGui
631
vol.Position = UDim2.new(0, 58, 0, 330)
632
vol.Size = UDim2.new(0, 50, 0, 20)
633
vol.BackgroundColor3 = BrickColor.new("White").Color
634
vol.Text = "Volume"
635
 
636
coroutine.wrap(function()
637
while wait() do
638
svol = vol.Text
639
end
640
end)()
641
 
642
local remove = Instance.new("TextButton")
643
remove.Parent = screenGui
644
remove.Position = UDim2.new(0, 108, 0, 370)
645
remove.Size = UDim2.new(0, 50, 0, 20)
646
remove.BackgroundColor3 = BrickColor.new("White").Color
647
remove.Text = "Clean"
648
 
649
pitch = Instance.new("TextBox")
650
pitch.Parent = screenGui
651
pitch.Position = UDim2.new(0, 158, 0, 330)
652
pitch.Size = UDim2.new(0, 50, 0, 20)
653
pitch.BackgroundColor3 = BrickColor.new("White").Color
654
pitch.Text = "Pitch"
655
 
656
coroutine.wrap(function()
657
while wait() do
658
pitchh = pitch.Text
659
end
660
end)()
661
 
662
pitchup = Instance.new("ImageButton")
663
pitchup.Parent = screenGui
664
pitchup.Position = UDim2.new(0, 131, 0, 327)
665
pitchup.BackgroundTransparency = 1
666
pitchup.Size = UDim2.new(0, 25, 0, 25)
667
pitchup.Image = "rbxassetid://29563813"
668
 
669
pitchup.MouseButton1Down:connect(function()
670
if soundIsPlaying then
671
pitch.Text = pitch.Text + .1
672
end
673
end)
674
 
675
pitchdown = Instance.new("ImageButton")
676
pitchdown.Parent = screenGui
677
pitchdown.Rotation = 180
678
pitchdown.Position = UDim2.new(0, 211, 0, 327)
679
pitchdown.BackgroundTransparency = 1
680
pitchdown.Size = UDim2.new(0, 25, 0, 25)
681
pitchdown.Image = "rbxassetid://29563813"
682
 
683
pitchdown.MouseButton1Down:connect(function()
684
if soundIsPlaying then
685
pitch.Text = pitch.Text - .1
686
end
687
end)
688
 
689
remove.MouseButton1Down:connect(function()
690
if soundIsPlaying then
691
soundIsPlaying = false
692
workspace.CurrentCamera.FieldOfView = 70
693
woosh = Instance.new("Sound",Character)
694
woosh.Volume = 2
695
woosh.SoundId = "rbxasstid://215402014"
696
woosh:Play()
697
sound1:Stop()
698
pitch.Text = "Pitch"
699
vol.Text = "Volume"
700
removeuseless:AddItem(woosh,2)
701
for _,v in pairs(tab2) do
702
v:Remove()
703
end
704
elseif not soundIsPlaying then
705
soundIsPlaying = false
706
woosh = Instance.new("Sound",Character)
707
woosh.Volume = 2
708
woosh.SoundId = "rbxasstid://215402014"
709
woosh:Play()
710
for _,v in pairs(tab2) do
711
v:Remove()
712
end
713
end
714
end
715
end)
716
 
717
local day = Instance.new("TextButton")
718
day.Parent = screenGui
719
day.Position = UDim2.new(0, 50, 0, 370)
720
day.Size = UDim2.new(0, 50, 0, 20)
721
day.BackgroundColor3 = BrickColor.new("Bright yellow").Color
722
day.Text = "Day"
723
 
724
day.MouseButton1Down:connect(function()
725
daytime = true
726
nighttime = false
727
turnon = Instance.new("Sound",Character)
728
turnon.SoundId = "rbxassetid://858896518"
729
turnon.Volume = 1
730
turnon.Pitch = 1.05
731
turnon:Play()
732
removeuseless:AddItem(turnon,2)
733
coroutine.wrap(function()
734
while daytime do
735
game.Lighting.TimeOfDay = 12
736
game.Lighting.GlobalShadows = true
737
game.Lighting.Ambient = Color3.fromRGB(10,10,10)
738
game.Lighting.Brightness = 1
739
wait()
740
end
741
end)()
742
end)
743
 
744
local night = Instance.new("TextButton")
745
night.Parent = screenGui
746
night.Position = UDim2.new(0, 165, 0, 370)
747
night.Size = UDim2.new(0, 50, 0, 20)
748
night.BackgroundColor3 = BrickColor.new("Really black").Color
749
night.TextColor = BrickColor.new("White")
750
night.Text = "Night"
751
 
752
night.MouseButton1Down:connect(function()
753
daytime = false
754
nighttime = true
755
turnoff = Instance.new("Sound",Character)
756
turnoff.SoundId = "rbxassetid://858896518"
757
turnoff.Volume = 1
758
turnoff.Pitch = .9
759
turnoff:Play()
760
removeuseless:AddItem(turnoff,2)
761
coroutine.wrap(function()
762
while nighttime do
763
game.Lighting.TimeOfDay = 0
764
game.Lighting.GlobalShadows = false
765
game.Lighting.Ambient = Color3.new(0,0,0)
766
game.Lighting.Brightness = 0
767
wait()
768
end
769
end)()
770
end)
771
 
772
volumeup = Instance.new("ImageButton")
773
volumeup.Parent = screenGui
774
volumeup.Position = UDim2.new(0, 29, 0, 327)
775
volumeup.BackgroundTransparency = 1
776
volumeup.Size = UDim2.new(0, 25, 0, 25)
777
volumeup.Image = "rbxassetid://29563813"
778
 
779
volumeup.MouseButton1Down:connect(function()
780
if soundIsPlaying then
781
vol.Text = vol.Text + 1
782
end
783
end)
784
 
785
volumedown = Instance.new("ImageButton")
786
volumedown.Parent = screenGui
787
volumedown.Rotation = 180
788
volumedown.Position = UDim2.new(0, 111, 0, 327)
789
volumedown.BackgroundTransparency = 1
790
volumedown.Size = UDim2.new(0, 25, 0, 25)
791
volumedown.Image = "rbxassetid://29563813"
792
 
793
 
794
volumedown.MouseButton1Down:connect(function()
795
if soundIsPlaying then
796
vol.Text = vol.Text - 1
797
end
798
end)
799
 
800
stopbutton.MouseButton1Down:connect(function()
801
if soundisnotplaying then
802
if soundIsPlaying then
803
sound1:Remove()
804
soundIsPlaying = false
805
workspace.CurrentCamera.FieldOfView = 70
806
pitch.Text = "Pitch"
807
vol.Text = "Volume"
808
for i,v in pairs(tab) do
809
v.Enabled = false
810
end
811
for i = 1, 10 do
812
for _,v in pairs(tab2) do
813
v.BrickColor = BrickColor.new("Really black")
814
v.Size = v.Size - Vector3.new(0,15,0)
815
end
816
wait()
817
end
818
end
819
end
820
end)
821
822
823
local S = IT("Sound")
824
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
825
	local NEWSOUND = nil
826
	coroutine.resume(coroutine.create(function()
827
		NEWSOUND = S:Clone()
828
		NEWSOUND.Parent = PARENT
829
		NEWSOUND.Volume = VOLUME
830
		NEWSOUND.Pitch = PITCH
831
		NEWSOUND.SoundId = "rbxassetid://"..ID
832
		NEWSOUND:play()
833
		if DOESLOOP == true then
834
			NEWSOUND.Looped = true
835
		else
836
			repeat wait(1) until NEWSOUND.Playing == false
837
			NEWSOUND:remove()
838
		end
839
	end))
840
	return NEWSOUND
841
end
842
843
function CFrameFromTopBack(at, top, back)
844
	local right = top:Cross(back)
845
	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)
846
end
847
848
function R_RANDOM(CFRAME,DIST)
849
	return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
850
end
851
852
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
853
function WACKYEFFECT(Table)
854
	local TYPE = (Table.EffectType or "Sphere")
855
	local SIZE = (Table.Size or VT(1,1,1))
856
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
857
	local TRANSPARENCY = (Table.Transparency or 0)
858
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
859
	local CFRAME = (Table.CFrame or Torso.CFrame)
860
	local MOVEDIRECTION = (Table.MoveToPos or nil)
861
	local ROTATION1 = (Table.RotationX or 0)
862
	local ROTATION2 = (Table.RotationY or 0)
863
	local ROTATION3 = (Table.RotationZ or 0)
864
	local MATERIAL = (Table.Material or "Neon")
865
	local COLOR = (Table.Color or C3(1,1,1))
866
	local TIME = (Table.Time or 45)
867
	local SOUNDID = (Table.SoundID or nil)
868
	local SOUNDPITCH = (Table.SoundPitch or nil)
869
	local SOUNDVOLUME = (Table.SoundVolume or nil)
870
	local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
871
	local BOOMERANG = (Table.Boomerang or 0)
872
	local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
873
	coroutine.resume(coroutine.create(function()
874
		local PLAYSSOUND = false
875
		local SOUND = nil
876
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
877
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
878
			PLAYSSOUND = true
879
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
880
		end
881
		EFFECT.Color = COLOR
882
		local MSH = nil
883
		if TYPE == "Sphere" then
884
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
885
		elseif TYPE == "Block" or TYPE == "Box" then
886
			MSH = IT("BlockMesh",EFFECT)
887
			MSH.Scale = SIZE
888
		elseif TYPE == "Wave" then
889
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
890
		elseif TYPE == "Ring" then
891
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
892
		elseif TYPE == "Slash" then
893
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
894
		elseif TYPE == "Round Slash" then
895
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
896
		elseif TYPE == "Swirl" then
897
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
898
		elseif TYPE == "Skull" then
899
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
900
		elseif TYPE == "Crystal" then
901
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
902
		end
903
		if MSH ~= nil then
904
			local BOOMR1 = 1+BOOMERANG/50
905
			local BOOMR2 = 1+SIZEBOOMERANG/50
906
			local MOVESPEED = nil
907
			if MOVEDIRECTION ~= nil then
908
				if USEBOOMERANGMATH == true then
909
					MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
910
				else
911
					MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
912
				end
913
			end
914
			local GROWTH = nil
915
			if USEBOOMERANGMATH == true then
916
				GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
917
			else
918
				GROWTH = (SIZE - ENDSIZE)
919
			end
920
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
921
			if TYPE == "Block" then
922
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
923
			else
924
				EFFECT.CFrame = CFRAME
925
			end
926
			if USEBOOMERANGMATH == true then
927
				for LOOP = 1, TIME+1 do
928
					Swait()
929
					MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
930
					if TYPE == "Wave" then
931
						MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
932
					end
933
					EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
934
					if TYPE == "Block" then
935
						EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
936
					else
937
						EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
938
					end
939
					if MOVEDIRECTION ~= nil then
940
						local ORI = EFFECT.Orientation
941
						EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
942
						EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
943
					end
944
				end
945
			else
946
				for LOOP = 1, TIME+1 do
947
					Swait()
948
					MSH.Scale = MSH.Scale - GROWTH/TIME
949
					if TYPE == "Wave" then
950
						MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
951
					end
952
					EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
953
					if TYPE == "Block" then
954
						EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
955
					else
956
						EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
957
					end
958
					if MOVEDIRECTION ~= nil then
959
						local ORI = EFFECT.Orientation
960
						EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
961
						EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
962
					end
963
				end
964
			end
965
			EFFECT.Transparency = 1
966
			if PLAYSSOUND == false then
967
				EFFECT:remove()
968
			else
969
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
970
				EFFECT:remove()
971
			end
972
		else
973
			if PLAYSSOUND == false then
974
				EFFECT:remove()
975
			else
976
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
977
				EFFECT:remove()
978
			end
979
		end
980
	end))
981
end
982
983
function MakeForm(PART,TYPE)
984
	if TYPE == "Cyl" then
985
		local MSH = IT("CylinderMesh",PART)
986
	elseif TYPE == "Ball" then
987
		local MSH = IT("SpecialMesh",PART)
988
		MSH.MeshType = "Sphere"
989
	elseif TYPE == "Wedge" then
990
		local MSH = IT("SpecialMesh",PART)
991
		MSH.MeshType = "Wedge"
992
	end
993
end
994
995
Debris = game:GetService("Debris")
996
997
function CastProperRay(StartPos, EndPos, Distance, Ignore)
998
	local DIRECTION = CF(StartPos,EndPos).lookVector
999
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
1000
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, DIRECTION * Distance), Ignore)
1001
end
1002
1003
local DECAL = IT("Decal")
1004
function MagicRing()
1005
	local RING = CreatePart(3, Effects, "Granite", 0, 1, "Maroon", "MagicRing", VT(0,0,0),true)
1006
	local MESH = IT("BlockMesh",RING)
1007
	local BOTTOMTEXTURE = DECAL:Clone()
1008
	BOTTOMTEXTURE.Parent = RING
1009
	BOTTOMTEXTURE.Face = "Bottom"
1010
	BOTTOMTEXTURE.Name = "BottomTexture"
1011
	local TOPTEXTURE = DECAL:Clone()
1012
	TOPTEXTURE.Parent = RING
1013
	TOPTEXTURE.Face = "Top"
1014
	TOPTEXTURE.Name = "TopTexture"
1015
	BOTTOMTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
1016
	TOPTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
1017
    while true do
1018
	BOTTOMTEXTURE.Color3 = C3(255,0,0)
1019
    wait(0.1)
1020
    BOTTOMTEXTURE.Color3 = C3(0,255,0)
1021
    wait(0.1)
1022
    BOTTOMTEXTURE.Color3 = C3(0,0,255)
1023
    wait(0.1)
1024
    end
1025
    while true do
1026
	TOPTEXTURE.Color3 = C3(255,0,0)
1027
    wait(0.1)
1028
    TOPTEXTURE.Color3 = C3(0,255,0)
1029
    wait(0.1)
1030
    TOPTEXTURE.Color3 = C3(0,0,255)
1031
    wait(0.1)
1032
	return RING,MESH,TOPTEXTURE,BOTTOMTEXTURE
1033
end
1034
1035
function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
1036
	coroutine.resume(coroutine.create(function()
1037
		local FADE = IT("Model",Effects)
1038
		if PARENT ~= nil then
1039
			FADE.Parent = PARENT
1040
		end
1041
		FADE.Name = "FadingEffect"
1042
		for _, c in pairs(Character:GetChildren()) do
1043
			if c.ClassName == "Part" then
1044
				c.CanCollide = false
1045
				local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Crimson"), c.Name, c.Size, true)
1046
				FADER.CFrame = c.CFrame
1047
				FADER.Color = COLOR
1048
				if FADER.Name == "Head" then
1049
					Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
1050
				elseif FADER.Name == "HumanoidRootPart" then
1051
					FADE.PrimaryPart = FADER
1052
					FADER.Transparency = 1
1053
				end
1054
			end
1055
		end
1056
		local TRANS = 0.25/TIMER
1057
		local DIST = nil
1058
		if MOVEDIRECTION ~= nil then
1059
			DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
1060
		end
1061
		for i = 1, TIMER do
1062
			Swait()
1063
			for _, c in pairs(FADE:GetChildren()) do
1064
				if c.ClassName == "Part" then
1065
					c.Transparency = c.Transparency + TRANS
1066
				end
1067
			end
1068
			if MOVEDIRECTION ~= nil then
1069
				local ORI = FADE.PrimaryPart.Orientation
1070
				FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
1071
			end
1072
		end
1073
		FADE:remove()
1074
	end))
1075
end
1076
1077
--//=================================\\
1078
--||	    GUIS AND MISC
1079
--\\=================================//
1080
1081
local EYE = CreatePart(3, Character, "Neon", 0, 0, BRICKC("Crimson"), "TheEye", VT(0.16,0.16,0.16), true)
1082
MakeForm(EYE,"Ball")
1083
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(-0.15, 0.2, -0.57) * ANGLES(RAD(0), RAD(15), RAD(0)) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1084
local BLADE = CreatePart(3, Effects, "Fabric", 0, 0, BRICKC("Really black"), "Abyssal_Sword", VT(1, 7.6, 1), true)
1085
CreateMesh("SpecialMesh", BLADE, "FileMesh", "93117521", "1015990846", VT(1,1,1), VT(0,0,0))
1086
BLADE.CFrame = RootPart.CFrame * CF(0.4,1,4) * ANGLES(RAD(195), RAD(15), RAD(15))
1087
1088
local SKILLTEXTCOLOR = C3(0,0,0)
1089
local SKILLFONT = "Fantasy"
1090
local SKILLTEXTSIZE = 4
1091
local SKILLTEXTSIZE2 = 12
1092
1093
local ATTACKS = {"Abyssal Reee - Z","Abyssal Zoom - X","Shadow Poof - C","Black Blast - V","Super S I P - Q"}
1094
1095
for i = 1, #ATTACKS do
1096
	local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.74, 0, 0.97-(0.04*i), 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill Frame")
1097
	local SKILLTEXT = CreateLabel(SKILLFRAME, "["..ATTACKS[i].."]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Skill text")
1098
	SKILLTEXT.TextXAlignment = "Right"
1099
	SKILLTEXT.Rotation = i*3
1100
end
1101
1102
local BMUSIC = IT("Sound",RootPart)
1103
local VOLUME = 5
1104
local PITCH = 1
1105
local SONGID = 1074563286
1106
local A = IT("Attachment",Torso)
1107
1108
coroutine.resume(coroutine.create(function()
1109
	while wait(1) do
1110
		if FADERS == true then
1111
			coroutine.resume(coroutine.create(function()
1112
				local R,M,T,B = MagicRing()
1113
				R.Anchored = false
1114
				CreateWeldOrSnapOrMotor("Weld", EYE, EYE, R, CF(0,0,0), CF(0, 0, 0))
1115
				local R2,M2,T2,B2 = MagicRing()
1116
				R2.Anchored = false
1117
				CreateWeldOrSnapOrMotor("Weld", EYE, EYE, R2, CF(0,0,0), CF(0, 0, 0))
1118
				for i = 1, 35 do
1119
					Swait()
1120
					M.Scale = M.Scale + VT(1,0,1)*1.2
1121
					T.Transparency = i/35
1122
					B.Transparency = i/35
1123
					M2.Scale = M2.Scale + VT(1,0,1)*0.6
1124
					T2.Transparency = i/35
1125
					B2.Transparency = i/35
1126
				end
1127
				R:Remove()
1128
				R2:Remove()
1129
			end))
1130
		end
1131
	end
1132
end))
1133
1134
--//=================================\\
1135
--||			DAMAGING
1136
--\\=================================//
1137
1138
function ApplyDamage(Humanoid,Damage)
1139
	Damage = Damage * DAMAGEMULTIPLIER
1140
	if Humanoid.Health < 2000 then
1141
		if Humanoid.Health - Damage > 0 then
1142
			Humanoid.Health = Humanoid.Health - Damage
1143
		else
1144
			Humanoid.Parent:BreakJoints()
1145
		end
1146
	else
1147
		Humanoid.Parent:BreakJoints()
1148
	end
1149
end
1150
1151
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1152
	for index, CHILD in pairs(workspace:GetDescendants()) do
1153
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1154
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1155
			if HUM then
1156
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1157
				if TORSO then
1158
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1159
						if INSTAKILL == true then
1160
							CHILD:BreakJoints()
1161
						else
1162
							local DMG = MRANDOM(MINDMG,MAXDMG)
1163
							ApplyDamage(HUM,DMG)
1164
						end
1165
						if FLING > 0 then
1166
							for _, c in pairs(CHILD:GetChildren()) do
1167
								if c:IsA("BasePart") then
1168
									local bv = Instance.new("BodyVelocity") 
1169
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1170
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1171
									bv.Parent = c
1172
									Debris:AddItem(bv,0.05)
1173
								end
1174
							end
1175
						end
1176
					end
1177
				end
1178
			end
1179
		end
1180
	end
1181
end
1182
1183
--//=================================\\
1184
--||	ATTACK FUNCTIONS AND STUFF
1185
--\\=================================//
1186
1187
function Melee()
1188
	ATTACK = true
1189
	BLADE.CanCollide = true
1190
	Rooted = false
1191
	EQUIPPED = true
1192
	local HIT = function()
1193
		local HITS = {}
1194
		local TOUCH = BLADE.Touched:Connect(function(hit)
1195
			if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
1196
				local HUM = hit.Parent:FindFirstChildOfClass("Humanoid")
1197
				local TORSO = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
1198
				if TORSO and HUM.Health > 0 then
1199
					local PASS = true
1200
					for i = 1, #HITS do
1201
						if HITS[i] == hit.Parent then
1202
							PASS = false
1203
						end
1204
					end
1205
					table.insert(HITS,hit.Parent)
1206
						if PASS == true then
1207
						ApplyDamage(HUM,MRANDOM(15,25))
1208
					end
1209
				end
1210
			end
1211
		end)
1212
		return TOUCH
1213
	end
1214
	if COMBO == 1 then
1215
		for i=0, 0.35, 0.1 / Animation_Speed do
1216
			Swait()
1217
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
1218
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
1219
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1220
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1221
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1222
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1223
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1224
		end
1225
		CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
1226
		local TOUCHED = HIT()
1227
		for i=0, 0.5, 0.1 / Animation_Speed do
1228
			Swait()
1229
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1 / Animation_Speed)
1230
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 0.9 / Animation_Speed)
1231
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.8, 0.5, -0.7) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(15), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
1232
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1233
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1234
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1235
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1236
		end
1237
		TOUCHED:Disconnect()
1238
		COMBO = 2
1239
	elseif COMBO == 2 then
1240
		for i=0, 0.35, 0.1 / Animation_Speed do
1241
			Swait()
1242
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1243
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1244
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(160), RAD(0), RAD(-5)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1245
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1246
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1247
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1248
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1249
		end
1250
		CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
1251
		local TOUCHED = HIT()
1252
		for i=0, 0.35, 0.1 / Animation_Speed do
1253
			Swait()
1254
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
1255
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
1256
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1257
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1258
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1259
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1260
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1261
		end
1262
		TOUCHED:Disconnect()
1263
		for i=0, 0.2, 0.1 / Animation_Speed do
1264
			Swait()
1265
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
1266
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
1267
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1268
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1269
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1270
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1271
			BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame*CF(4,0.3,0) * ANGLES(RAD(195), RAD(-25), RAD(15)),0.4)
1272
		end
1273
		COMBO = 1
1274
	end
1275
	coroutine.resume(coroutine.create(function()
1276
		for i = 1, 50 do
1277
			Swait()
1278
			if ATTACK == true then
1279
				break
1280
			end
1281
		end
1282
		if ATTACK == false then
1283
			COMBO = 1
1284
		end
1285
	end))
1286
	BLADE.CanCollide = false
1287
	ATTACK = false
1288
	Rooted = false
1289
	EQUIPPED = false
1290
end
1291
function AbyssalShriek()
1292
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1293
		ATTACK = true
1294
		Rooted = true
1295
		for i=0, 0.2, 0.1 / Animation_Speed do
1296
			Swait()
1297
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1298
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1299
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1300
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1301
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
1302
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
1303
		end
1304
		coroutine.resume(coroutine.create(function()
1305
			repeat
1306
				Swait()
1307
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1308
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1309
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1310
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1311
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1312
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1313
			until ATTACK == false
1314
		end))
1315
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position+VT(0,1.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 15})
1316
		CreateSound(199978176,Head,5,1,false)
1317
		for i = 1, 60 do
1318
			Swait()
1319
			ApplyAoE(RootPart.Position,17,1,1,0,false)
1320
			local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
1321
			if HITFLOOR then
1322
				WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(20,1,20), Size2 = VT(25+MRANDOM(0,8),7,25+MRANDOM(0,8)), Transparency = 0.95, Transparency2 = 1, CFrame = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1323
			end
1324
			local SIZE = VT(1,3,1)
1325
			WACKYEFFECT({EffectType = "Sphere", Size = VT(0,0,0), Size2 = SIZE*MRANDOM(10,65)/10, Transparency = 0.5, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,MRANDOM(1,17),MRANDOM(0,12)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 5})
1326
		end
1327
		wait(0.2)
1328
		ATTACK = false
1329
		Rooted = false
1330
	end
1331
end
1332
function AbyssalDash()
1333
	ATTACK = true
1334
	Rooted = true
1335
	UNANCHOR = false
1336
	for i=0, 0.4, 0.1 / Animation_Speed do
1337
		Swait()
1338
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1339
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1340
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1341
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1342
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
1343
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
1344
	end
1345
	CreateSound(1177785010,Torso,2,1,false)
1346
	CreateSound(971125740,Torso,5,1,false)
1347
	WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1348
	for index, CHILD in pairs(Character:GetChildren()) do
1349
		if CHILD:IsA("BasePart") then
1350
			CHILD.Transparency = CHILD.Transparency + 1
1351
		elseif CHILD:IsA("Accessory") then
1352
			CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
1353
		end
1354
	end
1355
	local HITS = {}
1356
	for i=0, 1, 0.1 / Animation_Speed do
1357
		Swait()
1358
		for index, CHILD in pairs(workspace:GetDescendants()) do
1359
			if CHILD.ClassName == "Model" and CHILD ~= Character then
1360
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1361
				if HUM then
1362
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1363
					if TORSO then
1364
						if (TORSO.Position - RootPart.Position).Magnitude <= 25 then
1365
							local PASS = true
1366
							for E = 1, #HITS do
1367
								if HITS[E] == CHILD then
1368
									PASS = false
1369
								end
1370
							end
1371
							if PASS == true then
1372
								local DMG = MRANDOM(25,45)
1373
								ApplyDamage(HUM,DMG)
1374
								table.insert(HITS,CHILD)
1375
							end
1376
						end
1377
					end
1378
				end
1379
			end
1380
		end	
1381
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(25,0,25), Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,-6) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
1382
		for i = 1, 2 do
1383
			RootPart.CFrame = RootPart.CFrame*CF(0,0,-1)
1384
			CharacterFade(C3(151, 0, 0),25,R_RANDOM(Torso.CFrame,1.25).p)
1385
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(65), RAD(0), RAD(0)), 1 / Animation_Speed)
1386
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1387
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(-25), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1388
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(-25), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1389
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1390
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1391
		end
1392
	end
1393
	for index, CHILD in pairs(Character:GetChildren()) do
1394
		if CHILD:IsA("BasePart") then
1395
			CHILD.Transparency = CHILD.Transparency - 1
1396
		elseif CHILD:IsA("Accessory") then
1397
			CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
1398
		end
1399
	end
1400
	for i=1, 25 do
1401
		Swait()
1402
		RootPart.CFrame = RootPart.CFrame*CF(0,0,-((25-i)/25))
1403
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1404
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1405
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1406
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1407
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-45)), 1 / Animation_Speed)
1408
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-25), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1409
	end
1410
	UNANCHOR = true
1411
	ATTACK = false
1412
	Rooted = false
1413
end
1414
function ShadowCloak()
1415
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1416
		ATTACK = true
1417
		Rooted = false
1418
		UNANCHOR = false
1419
		FADERS = false
1420
		coroutine.resume(coroutine.create(function()
1421
			coroutine.resume(coroutine.create(function()
1422
				for i=1, 25 do
1423
					Swait()
1424
					RootPart.CFrame = RootPart.CFrame*CF(0,(25-i)/25,0)
1425
				end
1426
			end))
1427
			repeat
1428
				Swait()
1429
				BLADE.Transparency = Torso.Transparency
1430
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1431
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1432
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1433
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1434
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1435
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1436
			until ATTACK == false
1437
		end))
1438
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 0.6, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 12})
1439
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1440
		for i = 1, 50 do
1441
			Swait()
1442
			CharacterFade(C3(151, 0, 0),12,R_RANDOM(Torso.CFrame,1.25).p)
1443
			for index, CHILD in pairs(Character:GetChildren()) do
1444
				if CHILD:IsA("BasePart") then
1445
					CHILD.Transparency = CHILD.Transparency + 1/50
1446
				elseif CHILD:IsA("Accessory") then
1447
					CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1/50
1448
				end
1449
			end
1450
		end
1451
		for i = 1, 25 do
1452
			Swait()
1453
			CharacterFade(C3(151, 0, 0),12,R_RANDOM(Torso.CFrame,1.25).p)
1454
		end
1455
		RootPart.CFrame = CF(Mouse.Hit.p+VT(0,12,0)) * ANGLES(RAD(0), RAD(RootPart.Orientation.Y), RAD(0))
1456
		for i = 1, 5 do
1457
			WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1458
		end
1459
		ApplyAoE(Torso.Position,15,12,22,150,false)
1460
		CreateSound(331666014,Torso,5,1,false)
1461
		for i = 1, 12 do
1462
			Swait()
1463
			CharacterFade(C3(151, 0, 0),12,R_RANDOM(Torso.CFrame,1.25).p)
1464
		end
1465
		for i = 1, 50 do
1466
			Swait()
1467
			CharacterFade(C3(151, 0, 0),12,R_RANDOM(Torso.CFrame,1.25).p)
1468
			for index, CHILD in pairs(Character:GetChildren()) do
1469
				if CHILD:IsA("BasePart") then
1470
					CHILD.Transparency = CHILD.Transparency - 1/50
1471
				elseif CHILD:IsA("Accessory") then
1472
					CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1/50
1473
				end
1474
			end
1475
		end
1476
		UNANCHOR = true
1477
		ATTACK = false
1478
		Rooted = false
1479
		FADERS = true
1480
	end
1481
end
1482
function BlackBlast()
1483
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1484
		ATTACK = true
1485
		Rooted = true
1486
		local GYRO = IT("BodyGyro",RootPart)
1487
		GYRO.D = 25
1488
		GYRO.P = 20000
1489
		GYRO.MaxTorque = VT(0,4000000,0)
1490
		GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1491
		CreateSound(429459101,Torso,5,1.5,false)
1492
		local GYROING = true
1493
		coroutine.resume(coroutine.create(function()
1494
			repeat
1495
				Swait()
1496
				GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1497
			until GYROING == false
1498
			GYRO:Remove()
1499
		end))
1500
		for i=0, 1, 0.1 / Animation_Speed do
1501
			Swait()
1502
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1503
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1504
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1505
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1506
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
1507
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
1508
		end
1509
		for i = 1, 13 do
1510
			WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(i,0,i)*2, Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,7.5-i) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
1511
		end
1512
		CreateSound(1368637781,Torso,5,1.5,false)
1513
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(12,12,12), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1514
		for index, CHILD in pairs(Character:GetChildren()) do
1515
			if CHILD:IsA("BasePart") then
1516
				CHILD.Transparency = CHILD.Transparency + 1
1517
			elseif CHILD:IsA("Accessory") then
1518
				CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
1519
			end
1520
		end
1521
		GYROING = false
1522
		coroutine.resume(coroutine.create(function()
1523
			coroutine.resume(coroutine.create(function()
1524
				for i=1, 25 do
1525
					Swait()
1526
					RootPart.CFrame = RootPart.CFrame*CF(0,0,(25-i)/25)
1527
				end
1528
			end))
1529
			repeat
1530
				Swait()
1531
				CharacterFade(C3(151, 0, 0),12,R_RANDOM(Torso.CFrame,1.25).p)
1532
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1533
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1534
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1535
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1536
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1537
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1538
			until ATTACK == false
1539
		end))
1540
		coroutine.resume(coroutine.create(function()
1541
			local BULLETCFRAME = RootPart.CFrame
1542
			local EXPLODED = false
1543
			coroutine.resume(coroutine.create(function()
1544
				repeat
1545
					Swait()
1546
					WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(10,10,10), Transparency = 0.3, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1547
					WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(25,25,25), Transparency = 0.8, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1548
				until EXPLODED == true
1549
			end))
1550
			for i=1, 50 do
1551
				Swait()
1552
				BULLETCFRAME = BULLETCFRAME*CF(0,0,-((50-i)/15))
1553
				local RAY,HIT,NORM = Raycast(BULLETCFRAME.p,BULLETCFRAME.lookVector,7,Character)
1554
				if RAY then
1555
					ApplyAoE(BULLETCFRAME.p,25,12,54,350,false)
1556
					WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = CF(HIT,HIT+NORM) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 765590102, SoundPitch = MRANDOM(9,11)/10, SoundVolume = 10})
1557
					break
1558
				end
1559
			end
1560
			wait(0.5)
1561
			WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(75,75,75), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.7, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1562
			WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(50,50,50), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 1, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1563
			for E = 1, 3 do
1564
				for i = 1, 5 do
1565
					WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1566
				end
1567
			end
1568
			ApplyAoE(BULLETCFRAME.p,125,25,75,250,false)
1569
			EXPLODED = true
1570
			for i = 1, 15 do
1571
				Swait()
1572
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = BULLETCFRAME * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 1, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2})
1573
			end
1574
		end))
1575
		wait(0.5)
1576
		for index, CHILD in pairs(Character:GetChildren()) do
1577
			if CHILD:IsA("BasePart") then
1578
				CHILD.Transparency = CHILD.Transparency - 1
1579
			elseif CHILD:IsA("Accessory") then
1580
				CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
1581
			end
1582
		end
1583
		ATTACK = false
1584
		Rooted = false
1585
	end
1586
end
1587
function NightmareFall()
1588
	if ANIM ~= "Fall" and ANIM ~= "Jump" and DAMAGEMULTIPLIER == 1 then
1589
		ATTACK = true
1590
		Rooted = true
1591
		EQUIPPED = true
1592
		CreateSound(160740121,Head,10,1,false)
1593
		for i=0, 2, 0.1 / Animation_Speed do
1594
			Swait()
1595
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1596
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1597
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.4 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(120), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1598
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1599
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1600
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1601
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1602
		end
1603
		for i=0, 2, 0.1 / Animation_Speed do
1604
			Swait()
1605
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1606
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1607
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.15 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(140), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1608
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1609
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1610
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1611
			BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1612
		end
1613
		local SIZE = 0
1614
		local POS = RootPart.Position+VT(0,150,0)
1615
		local BLOWN = false
1616
		coroutine.resume(coroutine.create(function()
1617
			coroutine.resume(coroutine.create(function()
1618
				repeat
1619
					Swait()
1620
					if SIZE > 0 then
1621
						WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*2.5, Transparency = 0.3, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1622
						WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*3, Transparency = 0.8, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1623
					end
1624
				until BLOWN == true
1625
			end))
1626
			repeat
1627
				Swait()
1628
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(12), RAD(25)), 1 / Animation_Speed)
1629
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(-15)), 1 / Animation_Speed)
1630
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(180), RAD(15), RAD(17)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1631
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1632
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1633
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1634
				BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
1635
			until ATTACK == false
1636
		end))
1637
		wait(0.2)
1638
		for i = 1, 15 do
1639
			wait(MRANDOM(2,6)/45)
1640
			coroutine.resume(coroutine.create(function()
1641
				local CFRAME = CF(BLADE.Position,POS) * ANGLES(RAD(0), RAD(0), RAD(MRANDOM(-90,90)))
1642
				local HEIGHT = 45/5
1643
				local DISTANCE = (BLADE.Position - POS).Magnitude
1644
				for i = 1, 45 do
1645
					Swait()
1646
					CFRAME = CFRAME * CF(0,(HEIGHT-(i/2.575))/45,-DISTANCE/45)
1647
					WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0.3, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 0})
1648
				end
1649
				SIZE = SIZE + 1
1650
			end))
1651
		end
1652
		wait(2.5)
1653
		BLOWN = true
1654
		WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(150,50,150), Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.4, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1655
		for E = 1, 5 do
1656
			for i = 1, 5 do
1657
				WACKYEFFECT({Time = 50+(E*4), EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1658
			end
1659
		end
1660
		CreateSound(288641686,Effects,5,1,false)
1661
		CreateSound(592877506,Effects,5,1,false)
1662
		local HITS = {}
1663
		for index, CHILD in pairs(workspace:GetDescendants()) do
1664
			if CHILD.ClassName == "Model" and CHILD ~= Character then
1665
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1666
				if HUM then
1667
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1668
					if TORSO then
1669
						if (TORSO.Position - RootPart.Position).Magnitude <= 175 then
1670
							local PASS = true
1671
							for E = 1, #HITS do
1672
								if HITS[E] == CHILD then
1673
									PASS = false
1674
								end
1675
							end
1676
							if PASS == true then
1677
								table.insert(HITS,CHILD)
1678
							end
1679
						end
1680
					end
1681
				end
1682
			end
1683
		end	
1684
		if #HITS > 0 then
1685
			local DONE = false
1686
			local HUMS = {}
1687
			coroutine.resume(coroutine.create(function()
1688
				for E = 1, #HITS do
1689
					local HUM = HITS[E]:FindFirstChildOfClass("Humanoid")
1690
					table.insert(HUMS,HUM)
1691
					local TORSO = HITS[E]:FindFirstChild("Torso") or HITS[E]:FindFirstChild("UpperTorso")
1692
					local grav = Instance.new("BodyPosition",TORSO)
1693
					grav.D = 850
1694
					grav.P = 4000
1695
					grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1696
					grav.Position = TORSO.Position+VT(0,35,0)
1697
					CreateSound(592877506,TORSO,5,0.5,false)
1698
					if TORSO then
1699
						coroutine.resume(coroutine.create(function()
1700
							local B = IT("Attachment",TORSO)
1701
							local ChainLink = IT("Beam",Torso)
1702
							ChainLink.Texture = "rbxassetid://73042633"
1703
							ChainLink.Color = ColorSequence.new(C3(0,0,0))
1704
							ChainLink.TextureSpeed = -1
1705
							ChainLink.FaceCamera = true
1706
							ChainLink.Width0 = 3
1707
							ChainLink.Width1 = 3
1708
							ChainLink.TextureLength = 3
1709
							ChainLink.Attachment0 = A
1710
							ChainLink.Attachment1 = B
1711
							ChainLink.CurveSize0 = 0
1712
							ChainLink.CurveSize1 = 0
1713
							ChainLink.FaceCamera = true
1714
							ChainLink.TextureMode = "Static"
1715
							ChainLink.Transparency = NumberSequence.new(0)
1716
							repeat
1717
								Swait()
1718
								WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(0,0,0), Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 35})
1719
							until DONE == true or HUM.Health < 1
1720
							B:Remove()
1721
							ChainLink:Remove()
1722
							grav:Remove()
1723
							if HUM.Health < 1 then
1724
								for E = 1, 2 do
1725
									for i = 1, 3 do
1726
										WACKYEFFECT({Time = 15, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/6, Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1727
									end
1728
								end
1729
								WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(6,6,6)*TORSO.Size.Z, Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 160772554, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1730
								for _, c in pairs(HITS[E]:GetChildren()) do
1731
									if c:IsA("BasePart") or c:IsA("Accessory") then
1732
										c:remove()
1733
									end
1734
								end
1735
								local BONES = {
1736
								Skull = {MeshId = 36869983,Size = VT(0.7,0.7,0.7)},
1737
								Ribs = {MeshId = 546760032,Size = VT(2.18, 1.884, 1.105)}
1738
								}
1739
								local SELECTABLEBONES = {
1740
								{MeshId = 546760045,Size = VT(0.468, 1.12, 0.346)},
1741
								{MeshId = 546760042,Size = VT(0.366, 0.991, 0.365)},
1742
								{MeshId = 546760029,Size = VT(0.441, 0.799, 0.347)},
1743
								{MeshId = 546760030,Size = VT(0.605, 0.843, 0.4)}
1744
								}
1745
								for i = 1, 9 do
1746
									local CHOSENPIECE = nil
1747
									if i == 1 then
1748
										CHOSENPIECE = BONES.Skull
1749
									elseif i == 2 then
1750
										CHOSENPIECE = BONES.Ribs
1751
									else
1752
										CHOSENPIECE = SELECTABLEBONES[MRANDOM(1,#SELECTABLEBONES)]
1753
									end
1754
									local BONE = CreatePart(3, HITS[E], "Neon", 0, 0, BRICKC("Salmon"), "RIP", CHOSENPIECE.Size, false)
1755
									BONE.CanCollide = true
1756
									BONE.CFrame = TORSO.CFrame*CF(MRANDOM(-10,10)/30,MRANDOM(-10,10)/30,MRANDOM(-10,10)/30)
1757
									if CHOSENPIECE.MeshId == 36869983 then
1758
										CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1)/1.5, VT(0,0,0))
1759
									else
1760
										CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1), VT(0,0,0))
1761
									end
1762
								end
1763
							end
1764
						end))
1765
					end
1766
				end
1767
				wait(1)
1768
				for i = 1, 250 do
1769
					Swait()
1770
					for E = 1, #HUMS do
1771
						if HUMS[E] then
1772
							if HUMS[E].Health > 0 then
1773
								HUMS[E].Health = HUMS[E].Health - 0.3
1774
								DAMAGEMULTIPLIER = DAMAGEMULTIPLIER + 0.0025
1775
								WACKYEFFECT({Time = 10, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(1.5,0,1.5)/20, Transparency = 0.9, Transparency2 = 1, CFrame = CF(Torso.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1776
							end
1777
						end
1778
					end
1779
				end
1780
				local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0, 0, 0, 0), UD2(1, 0, 1, 0), C3(0,0,0), C3(0, 0, 0), "OWEXTRADAMAGE")
1781
				local SKILLTEXT = CreateLabel(SKILLFRAME, "!You have increased damage!", SKILLTEXTCOLOR, SKILLTEXTSIZE2, SKILLFONT, 1, 2, 1, "AAAA")
1782
				coroutine.resume(coroutine.create(function()
1783
					CreateSound(743521450,Cam,5,0.6,false)
1784
					for E = 1, 75 do
1785
						Swait()
1786
						SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency - 1/75
1787
					end
1788
					wait(4)
1789
					for E = 1, 25 do
1790
						Swait()
1791
						SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency + 1/25
1792
					end
1793
					SKILLFRAME:Remove()
1794
				end))
1795
				DONE = true
1796
				for i = 1, 50 do
1797
					wait(0.5)
1798
					for i = 1, 3 do
1799
						WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(DAMAGEMULTIPLIER-1,0.1,DAMAGEMULTIPLIER-1)*1.5, Transparency = 0.6, Transparency2 = 1, CFrame = CF(RootPart.CFrame*CF(0,-3.25,0).p) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 1, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 22})
1800
					end
1801
				end
1802
				DAMAGEMULTIPLIER = 1
1803
			end))
1804
			wait(0.2)
1805
		end
1806
		wait(0.4)
1807
		EQUIPPED = false
1808
		ATTACK = false
1809
		Rooted = false
1810
	end
1811
end
1812
function Laugh()
1813
	ATTACK = true
1814
	Rooted = true
1815
	CreateSound(160740121,Head,10,1,false)
1816
	for i=0, 0.5, 0.1 / Animation_Speed do
1817
		Swait()
1818
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1819
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.8 / Animation_Speed)
1820
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.6 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1821
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.45 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1822
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1823
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1824
	end
1825
	for i=1, 185 do
1826
		Swait()
1827
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1828
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1 + 0.05 * SIN(SINE/2)) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1829
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.55 + 0.15 * SIN(SINE/2), -0.7) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1830
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.4 + 0.15 * SIN(SINE/2), -0.6) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1831
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1832
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1833
	end
1834
	ATTACK = false
1835
	Rooted = false
1836
end
1837
1838
--//=================================\\
1839
--||	  ASSIGN THINGS TO KEYS
1840
--\\=================================//
1841
1842
function MouseDown(Mouse)
1843
	if ATTACK == false then
1844
		Melee()
1845
	end
1846
end
1847
1848
function MouseUp(Mouse)
1849
HOLD = false
1850
end
1851
1852
function KeyDown(Key)
1853
	KEYHOLD = true
1854
	if Key == "z" and ATTACK == false then
1855
		AbyssalShriek()
1856
	end
1857
1858
	if Key == "x" and ATTACK == false then
1859
		AbyssalDash()
1860
	end
1861
1862
	if Key == "c" and ATTACK == false then
1863
		ShadowCloak()
1864
	end
1865
1866
	if Key == "v" and ATTACK == false then
1867
		BlackBlast()
1868
	end
1869
1870
	if Key == "q" and ATTACK == false then
1871
		NightmareFall()
1872
	end
1873
1874
	if Key == "t" and ATTACK == false then
1875
		Laugh()
1876
	end
1877
end
1878
1879
function KeyUp(Key)
1880
	KEYHOLD = false
1881
end
1882
1883
	Mouse.Button1Down:connect(function(NEWKEY)
1884
		MouseDown(NEWKEY)
1885
	end)
1886
	Mouse.Button1Up:connect(function(NEWKEY)
1887
		MouseUp(NEWKEY)
1888
	end)
1889
	Mouse.KeyDown:connect(function(NEWKEY)
1890
		KeyDown(NEWKEY)
1891
	end)
1892
	Mouse.KeyUp:connect(function(NEWKEY)
1893
		KeyUp(NEWKEY)
1894
	end)
1895
1896
--//=================================\\
1897
--\\=================================//
1898
1899
function unanchor()
1900
	for _, c in pairs(Character:GetChildren()) do
1901
		if c:IsA("BasePart") and c ~= RootPart then
1902
			c.Anchored = false
1903
		end
1904
	end
1905
	if UNANCHOR == true then
1906
		RootPart.Anchored = false
1907
	else
1908
		RootPart.Anchored = true
1909
	end
1910
end
1911
1912
--//=================================\\
1913
--||	WRAP THE WHOLE SCRIPT UP
1914
--\\=================================//
1915
1916
Humanoid.Changed:connect(function(Jump)
1917
	if Jump == "Jump" and (Disable_Jump == true) then
1918
		Humanoid.Jump = false
1919
	end
1920
end)
1921
1922
while true do
1923
	Swait()
1924
	script.Parent = WEAPONGUI
1925
	ANIMATE.Parent = nil
1926
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1927
	    v:Stop();
1928
	end
1929
	SINE = SINE + CHANGE
1930
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1931
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1932
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
1933
	local WALKSPEEDVALUE = 8 / (Humanoid.WalkSpeed / 16)
1934
	Humanoid.HipHeight = 1
1935
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1936
		ANIM = "Jump"
1937
		if ATTACK == false then
1938
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1939
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
1940
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(25 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1941
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-25 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1942
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
1943
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
1944
		end
1945
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1946
		ANIM = "Fall"
1947
		if ATTACK == false then
1948
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1949
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1950
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(45 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1951
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(-45 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1952
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
1953
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
1954
		end
1955
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1956
		ANIM = "Idle"
1957
		if ATTACK == false then
1958
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1959
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1960
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1961
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1962
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
1963
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1964
		end
1965
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1966
		ANIM = "Walk"
1967
		if ATTACK == false then
1968
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(10), RAD(0), RAD(0)), 1 / Animation_Speed)
1969
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-10 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1970
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1971
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1972
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-35)), 1 / Animation_Speed)
1973
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
1974
		end
1975
	end
1976
	if EQUIPPED == false then
1977
		if TORSOVELOCITY > 1 then
1978
			BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame * CF(0.2,1.5 + 0.15 * SIN(SINE / 12),4) * ANGLES(RAD(195), RAD(15), RAD(15)),0.04)
1979
		else
1980
			BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame * CF(1,1.5 + 0.15 * SIN(SINE / 12),4) * ANGLES(RAD(195), RAD(-25), RAD(15)),0.1)
1981
		end
1982
	end
1983
	if ANIM ~= "Walk" and FADERS == true then
1984
		if MRANDOM(1,7) == 1 then
1985
			CharacterFade(C3(151, 0, 0),65,R_RANDOM(Torso.CFrame,0.5).p)
1986
		end
1987
	end
1988
	unanchor()
1989
	if Rooted == false then
1990
		Disable_Jump = false
1991
		Humanoid.WalkSpeed = Speed+(DAMAGEMULTIPLIER/5)
1992
	elseif Rooted == true then
1993
		Disable_Jump = true
1994
		Humanoid.WalkSpeed = 0
1995
	end
1996
	BMUSIC.SoundId = "rbxassetid://"..SONGID
1997
	BMUSIC.Looped = true
1998
	BMUSIC.Pitch = PITCH
1999
	BMUSIC.Volume = VOLUME
2000
	BMUSIC.Playing = true
2001
	if BMUSIC.Parent ~= RootPart then
2002
		BMUSIC = IT("Sound",RootPart)
2003
	end
2004
	if Head:FindFirstChild("face") then
2005
		Head:FindFirstChild("face"):remove()
2006
	end
2007
	Humanoid.Name = "NONHUM"
2008
	Humanoid.MaxHealth = "inf"
2009
	Humanoid.Health = "inf"
2010
end
2011
2012
--//=================================\\
2013
--\\=================================//
2014
2015
refit()
2016
2017
2018
2019
--//====================================================\\--
2020
--||			  		 END OF SCRIPT
2021
--\\====================================================//--