View difference between Paste ID: nMk9Gjs9 and DB6BA3q1
SHOW: | | - or go back to the newest paste.
1
2
-----( FE by Zach the Script Stealer )----- ( Original Well err i dont remember his name so Sorry!! )-----
3
4
if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
5
print("FE Compatibility: by WaverlyCole & Mokiros")
6
InternalData = {}
7
do
8
	script.Parent = owner.Character
9
	local Event = Instance.new("RemoteEvent")
10
	Event.Name = "UserInput"
11
	local function NewFakeEvent()
12
		local Fake = {fakeEvent=true,Connect=function(self,Func)self.Function=Func end}Fake.connect = Fake.Connect
13
		return Fake
14
	end
15
	local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
16
	local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
17
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
18
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
19
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
20
	local function TriggerEvent(self,Event,...)
21
		local Trigger = Mouse[Event]
22
		if Trigger and Trigger.fakeEvent and Trigger.Function then
23
			Trigger.Function(...)
24
		end
25
	end
26
	Mouse.TrigEvent = TriggerEvent
27
	UserInputService.TrigEvent = TriggerEvent
28
	Event.OnServerEvent:Connect(function(FiredBy,Input)
29
		if FiredBy.Name ~= owner.Name then end
30
		if Input.MouseEvent then
31
			Mouse.Target = Input.Target
32
			Mouse.Hit = Input.Hit
33
		else
34
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
35
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then
36
				return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up")
37
			end
38
			for _,Action in pairs(ContextActionService.Actions) do
39
				for _,Key in pairs(Action.Keys) do
40
					if Key==Input.KeyCode then
41
						Action.Function(Action.Name,Input.UserInputState,Input)
42
					end
43
				end
44
			end
45
			Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
46
			UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
47
		end
48
	end)
49
	InternalData["Mouse"] = Mouse
50
	InternalData["ContextActionService"] = ContextActionService
51
	InternalData["UserInputService"] = UserInputService
52
	Event.Parent = NLS([[
53
		local Player = owner
54
		local Event = script:WaitForChild("UserInput")
55
		local UserInputService = game:GetService("UserInputService")
56
		local Mouse = Player:GetMouse()
57
		local Input = function(Input,gameProcessedEvent)
58
			if gameProcessedEvent then return end
59
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
60
		end
61
		UserInputService.InputBegan:Connect(Input)
62
		UserInputService.InputEnded:Connect(Input)
63
		local Hit,Target
64
		while wait(1/30) do
65
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
66
				Hit,Target = Mouse.Hit,Mouse.Target
67
				Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
68
			end
69
		end
70
	]],owner.Character)
71
end
72
RealGame = game;game = setmetatable({},{
73
	__index = function (self,Index)
74
		local Sandbox = function (Thing)
75
			if Thing:IsA("Player") then
76
				local RealPlayer = Thing
77
				return setmetatable({},{
78
					__index = function (self,Index)
79
						local Type = type(RealPlayer[Index])
80
						if Type == "function" then
81
							if Index:lower() == "getmouse" or Index:lower() == "mouse" then
82
								return function (self)
83
									return InternalData["Mouse"]
84
								end
85
							end
86
							return function (self,...)
87
								return RealPlayer[Index](RealPlayer,...)
88
							end
89
						else
90
							if Index == "PlrObj" then
91
								return RealPlayer
92
							end
93
							return RealPlayer[Index]
94
						end
95
					end;
96
					__tostring = function(self)
97
						return RealPlayer.Name
98
					end
99
				})
100
			end
101
		end
102
		if RealGame[Index] then
103
			local Type = type(RealGame[Index])
104
			if Type == "function" then
105
				if Index:lower() == "getservice" or Index:lower() == "service" then
106
					return function (self,Service)
107
						if Service:lower() == "players" then
108
							return setmetatable({},{
109
								__index = function (self2,Index2)
110
									local RealService = RealGame:GetService(Service)
111
									local Type2 = type(Index2)
112
									if Type2 == "function" then
113
										return function (self,...)
114
											return RealService[Index2](RealService,...)
115
										end
116
									else
117
										if Index2:lower() == "localplayer" then
118
											return Sandbox(owner)
119
										end
120
										return RealService[Index2]
121
									end
122
								end;
123
								__tostring = function(self)
124
									return RealGame:GetService(Service).Name
125
								end
126
							})
127
						elseif Service:lower() == "contextactionservice" then
128
							return InternalData["ContextActionService"]
129
						elseif Service:lower() == "contextactionservice" then
130
							return InternalData["UserInputService"]
131
						elseif Service:lower() == "runservice" then
132
							return setmetatable({},{
133
								__index = function(self2,Index2)
134
									local RealService = RealGame:GetService(Service)
135
									local Type2 = type(Index2)
136
									if Type2 == "function" then
137
										return function (self,...)
138
											return RealService[Index2](RealService,...)
139
										end
140
									else
141
										if Index2:lower() == "bindtorenderstep" then
142
											return function (self,Name,Priority,Function)
143
												return RealGame:GetService("RunService").Stepped:Connect(Function)
144
											end
145
										end
146
										if Index2:lower() == "renderstepped" then
147
											return RealService["Stepped"]
148
										end
149
										return RealService[Index2]
150
									end
151
								end
152
							})
153
						else
154
							return RealGame:GetService(Service)
155
						end
156
					end
157
				end
158
				return function (self,...)
159
					return RealGame[Index](RealGame,...)
160
				end
161
			else
162
				if game:GetService(Index) then
163
					return game:GetService(Index)
164
				end
165
				return RealGame[Index]
166
			end
167
		else
168
			return nil
169
		end
170
	end
171
});Game = game;owner = game:GetService("Players").LocalPlayer;script = {}
172
print("Complete! Running...")
173
174
175-
print("Complete! Running...
175+
176
--//====================================================\\--
177
--||   EDITED BY Zach the script stealer 	   CREATED BY SHACKLUSTER
178
--\\====================================================//--
179
180
print("Load Finished")
181
print("Edited By InfiniteOneWithdank Hello User")
182
print("=====| 1 Percent Done Version |=====")
183
print(">=Updates")
184
print("!=Big Changes <---- LOL NO ")
185
print("*=Small Changes of course")
186
print("!Made Bullets Colorful in fact almost all effects are colorful now")
187
print(">Gun is now a rainbow color")
188
print("*Changed Fire Size by 1")
189
print("*Changed Taunts/Voices A Bit")
190
print(">Added Wave Emote when u click")
191
print(">Added in intro text")
192
print(">Added New Smexy moves")
193
warn("Make Them All Suffer For Their Sins")
194
warn("In Fact Make them Roast them")
195
196
197
script:ClearAllChildren()
198
wait(0.2)
199
200
Player = game:GetService("Players").LocalPlayer
201
PlayerGui = Player.PlayerGui
202
Cam = workspace.CurrentCamera
203
Backpack = Player.Backpack
204
Character = Player.Character
205
Humanoid = Character.Humanoid
206
Mouse = Player:GetMouse()
207
RootPart = Character["HumanoidRootPart"]
208
Torso = Character["Torso"]
209
Head = Character["Head"]
210
RightArm = Character["Right Arm"]
211
LeftArm = Character["Left Arm"]
212
RightLeg = Character["Right Leg"]
213
LeftLeg = Character["Left Leg"]
214
RootJoint = RootPart["RootJoint"]
215
Neck = Torso["Neck"]
216
RightShoulder = Torso["Right Shoulder"]
217
LeftShoulder = Torso["Left Shoulder"]
218
RightHip = Torso["Right Hip"]
219
LeftHip = Torso["Left Hip"]
220
local TIME = 0
221
local sick = Instance.new("Sound",Torso)
222
223
IT = Instance.new
224
CF = CFrame.new
225
VT = Vector3.new
226
RAD = math.rad
227
C3 = Color3.new
228
UD2 = UDim2.new
229
BRICKC = BrickColor.new
230
ANGLES = CFrame.Angles
231
EULER = CFrame.fromEulerAnglesXYZ
232
COS = math.cos
233
ACOS = math.acos
234
SIN = math.sin
235
ASIN = math.asin
236
ABS = math.abs
237
MRANDOM = math.random
238
FLOOR = math.floor
239
local RWINGS = {}
240
local LWINGS = {}
241
local GunPoint
242
Player_Size = 1
243
244
-- Thingy To Make Song Work
245
246
p = game.Players.LocalPlayer
247
	char = p.Character
248
249
---------------------------[[[ LOOPED SONG ]]]--------------------------
250
local s = Instance.new("Sound",char)
251
	s.Name = "BGMusic"
252
	s.SoundId = "rbxassetid://519067542"
253
	s.Pitch = 1
254
	s.Volume = 40
255
	s.Looped = true
256
	s.archivable = false
257
	s.Parent = char.Head
258
	wait(0.1)
259
	s:play()
260
261
-- Rest of Script
262
-- Want To Use This For Scripts With No Songs? Go Ahead Copy This InfiniteOneWithdank created the looped song thing that is in here anyways.
263
264
--//=================================\\
265
--|| 	      PARTICLES N STUFF
266
--\\=================================//
267
268
local particleemitter = Instance.new('ParticleEmitter', LeftArm)
269
        particleemitter.VelocitySpread = 350
270
        particleemitter.Lifetime = NumberRange.new(1)
271
        particleemitter.Speed = NumberRange.new(0)
272
cringememe= {}
273
for i=0, 19 do
274
  cringememe[#cringememe + 1] = NumberSequenceKeypoint.new(i/19, math.random(1, 1))
275
end
276
particleemitter.Size = NumberSequence.new(cringememe)
277
        particleemitter.Rate = 20
278
        particleemitter.LockedToPart = true
279
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
280
        particleemitter.LightEmission = 1
281
        particleemitter.Texture = "rbxassetid://38727848"
282
        particleemitter.Color = ColorSequence.new(BrickColor.new("Royal purple").Color)
283
284
        local particleemitter = Instance.new('ParticleEmitter', Torso)
285
        particleemitter.VelocitySpread = 250
286
        particleemitter.Lifetime = NumberRange.new(3)
287
        particleemitter.Speed = NumberRange.new(1.5)
288
youAreATHOT = {}
289
for i=0, 19 do
290
  youAreATHOT[#youAreATHOT + 1] = NumberSequenceKeypoint.new(i/19, math.random(1, 1))
291
end
292
particleemitter.Size = NumberSequence.new(youAreATHOT)
293
        particleemitter.Rate = 10
294
        particleemitter.LockedToPart = false
295
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
296
        particleemitter.LightEmission = 1
297
        particleemitter.Texture = "rbxassetid://253188763"
298
        particleemitter.Color = ColorSequence.new(BrickColor.new("Navy blue").Color)
299
300
        local particleemitter = Instance.new('ParticleEmitter', RightArm)
301
        particleemitter.VelocitySpread = 350
302
        particleemitter.Lifetime = NumberRange.new(1)
303
        particleemitter.Speed = NumberRange.new(0)
304
cringememe2= {}
305
for i=0, 19 do
306
  cringememe2[#cringememe2 + 1] = NumberSequenceKeypoint.new(i/19, math.random(1, 1))
307
end
308
particleemitter.Size = NumberSequence.new(cringememe2)
309
        particleemitter.Rate = 20
310
        particleemitter.LockedToPart = true
311
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
312
        particleemitter.LightEmission = 1
313
        particleemitter.Texture = "rbxassetid://38727848"
314
        particleemitter.Color = ColorSequence.new(BrickColor.new("Deep orange").Color)
315
316
        local particleemitter = Instance.new('ParticleEmitter', RightLeg)
317
        particleemitter.VelocitySpread = 350
318
        particleemitter.Lifetime = NumberRange.new(1)
319
        particleemitter.Speed = NumberRange.new(0)
320
cringememe3= {}
321
for i=0, 19 do
322
  cringememe3[#cringememe3 + 1] = NumberSequenceKeypoint.new(i/19, math.random(1, 1))
323
end
324
particleemitter.Size = NumberSequence.new(cringememe3)
325
        particleemitter.Rate = 30
326
        particleemitter.LockedToPart = true
327
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
328
        particleemitter.LightEmission = 1
329
        particleemitter.Texture = "rbxassetid://38727848"
330
        particleemitter.Color = ColorSequence.new(BrickColor.new("New Yeller ").Color)
331
332
        local particleemitter = Instance.new('ParticleEmitter', LeftLeg)
333
        particleemitter.VelocitySpread = 350
334
        particleemitter.Lifetime = NumberRange.new(1)
335
        particleemitter.Speed = NumberRange.new(0)
336
cringememe4= {}
337
for i=0, 19 do
338
  cringememe4[#cringememe4 + 1] = NumberSequenceKeypoint.new(i/19, math.random(1, 1))
339
end
340
particleemitter.Size = NumberSequence.new(cringememe4)
341
        particleemitter.Rate = 30
342
        particleemitter.LockedToPart = true
343
        particleemitter.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.8, 0), NumberSequenceKeypoint.new(1, 1)})
344
        particleemitter.LightEmission = 1
345
        particleemitter.Texture = "rbxassetid://38727848"
346
        particleemitter.Color = ColorSequence.new(BrickColor.new("White").Color)
347
348
--//=================================\\
349
--|| 	      USEFUL VALUES
350
--\\=================================//
351
352
Animation_Speed = 1.5
353
local FORCERESET = false
354
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
355
local Speed = 16
356
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
357
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
358
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
359
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
360
local DAMAGEMULTIPLIER = 1
361
local ANIM = "Idle"
362
local ATTACK = false
363
local EQUIPPED = false
364
local HOLD = false
365
local COMBO = 1
366
local Rooted = false
367
local SINE = 0
368
local KEYHOLD = false
369
local CHANGE = 2 / Animation_Speed
370
local WALKINGANIM = false
371
local VALUE1 = false
372
local VALUE2 = false
373
local ROBLOXIDLEANIMATION = IT("Animation")
374
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
375
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
376
--ROBLOXIDLEANIMATION.Parent = Humanoid
377
local WEAPONGUI = IT("ScreenGui", PlayerGui)
378
WEAPONGUI.Name = "BanishV3Gui"
379
local Weapon = IT("Model")
380
Weapon.Name = "Adds"
381
local Effects = IT("Folder", Weapon)
382
Effects.Name = "Effects"
383
local ANIMATOR = Humanoid.Animator
384
local ANIMATE = Character:FindFirstChild("Animate")
385
local UNANCHOR = true
386
local TOBANISH = {}
387
script.Parent = PlayerGui
388
389
function StatLabel(CFRAME, TEXT, COLOR)
390
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
391
	STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
392
	local BODYGYRO = IT("BodyGyro", STATPART)
393
	game:GetService("Debris"):AddItem(STATPART ,5)
394
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
395
	BILLBOARDGUI.Adornee = STATPART
396
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
397
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
398
	BILLBOARDGUI.AlwaysOnTop = false
399
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
400
	TEXTLABEL.BackgroundTransparency = 1
401
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
402
	TEXTLABEL.Text = TEXT
403
	TEXTLABEL.Font = SKILLFONT
404
	TEXTLABEL.FontSize="Size42"
405
	TEXTLABEL.TextColor3 = COLOR
406
	TEXTLABEL.TextStrokeTransparency = 0
407
	TEXTLABEL.TextScaled = true
408
	TEXTLABEL.TextWrapped = true
409
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
410
		for i = 1, 50 do
411
			Swait()
412
			STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
413
			TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
414
			TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
415
		end
416
		THEPART.Parent = nil
417
	end),STATPART, TEXTLABEL)
418
end
419
420
--//=================================\\
421
--\\=================================//
422
423
424
--//=================================\\
425
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
426
--\\=================================//
427
428
ArtificialHB = Instance.new("BindableEvent", script)
429
ArtificialHB.Name = "ArtificialHB"
430
431
script:WaitForChild("ArtificialHB")
432
433
frame = Frame_Speed
434
tf = 0
435
allowframeloss = false
436
tossremainder = false
437
lastframe = tick()
438
script.ArtificialHB:Fire()
439
440
game:GetService("RunService").Heartbeat:connect(function(s, p)
441
	tf = tf + s
442
	if tf >= frame then
443
		if allowframeloss then
444
			script.ArtificialHB:Fire()
445
			lastframe = tick()
446
		else
447
			for i = 1, math.floor(tf / frame) do
448
				script.ArtificialHB:Fire()
449
			end
450
		lastframe = tick()
451
		end
452
		if tossremainder then
453
			tf = 0
454
		else
455
			tf = tf - frame * math.floor(tf / frame)
456
		end
457
	end
458
end)
459
460
--//=================================\\
461
--\\=================================//
462
463
--//=================================\\
464
--||          SOME TAG EDIT
465
--\\=================================//
466
467
m = game.Players.LocalPlayer
468
char = m.Character
469
local txt = Instance.new("BillboardGui", char)
470
txt.Adornee = char.Head
471
txt.Name = "_status"
472
txt.Size = UDim2.new(2, 0, 1.2, 0)
473
txt.StudsOffset = Vector3.new(-9, 8, 0)
474
local text = Instance.new("TextLabel", txt)
475
text.Size = UDim2.new(10, 0, 7, 0)
476
text.FontSize = "Size24"
477
text.TextScaled = true
478
text.TextTransparency = 0
479
text.BackgroundTransparency = 1
480
text.TextTransparency = 0
481
text.TextStrokeTransparency = 0
482
text.Font = "Bodoni"
483
text.TextStrokeColor3 = Color3.new(0, 0, 0)
484
v = Instance.new("Part")
485
v.Name = "ColorBrick"
486
v.Parent = m.Character
487
v.FormFactor = "Symmetric"
488
v.Anchored = true
489
v.CanCollide = false
490
v.BottomSurface = "Smooth"
491
v.TopSurface = "Smooth"
492
v.Size = Vector3.new(10, 5, 3)
493
v.Transparency = 1
494
v.CFrame = char.Torso.CFrame
495
v.BrickColor = BrickColor.new("Navy blue")
496
v.Transparency = 1
497
v.Shape = "Block"
498
spawn(function()
499
local TweenService = game:GetService("TweenService")
500
local Colours = {Color3.fromRGB(255,0,0),Color3.fromRGB(255,128,0),Color3.fromRGB(255,255,0),Color3.fromRGB(0,255,0),Color3.fromRGB(0,255,255),Color3.fromRGB(0,0,255),Color3.fromRGB(191,0,255),Color3.fromRGB(255,0,191)}
501
local Int = 0
502
while wait(0.5) do
503
    if Int == #Colours then Int = 0 end
504
    Int = Int+1
505
    TweenService:Create(text,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play()
506
end
507
end)
508
text.Text = "It been a while since i was gone for a years"
509
        wait(2)
510
        text.Text = "What you did was really Painful but.."
511
        wait(3)
512
	text.Text = "IM ENDING YOUR STORY HERE "
513
        wait(2)
514
text.Text = "STAR FALL"
515
516
--//=================================\\
517
--\\=================================//
518
519
--//=================================\\
520
--|| 	      SOME FUNCTIONS
521
--\\=================================//
522
523
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
524
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
525
end
526
527
function PositiveAngle(NUMBER)
528
	if NUMBER >= 0 then
529
		NUMBER = 0
530
	end
531
	return NUMBER
532
end
533
534
function NegativeAngle(NUMBER)
535
	if NUMBER <= 0 then
536
		NUMBER = 0
537
	end
538
	return NUMBER
539
end
540
541
function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
542
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
543
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
544
	wave.CFrame = CFRAME
545
	coroutine.resume(coroutine.create(function(PART)
546
		for i = 1, WAIT do
547
			Swait()
548
			mesh.Scale = mesh.Scale + GROW
549
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
550
			if DOESROT == true then
551
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
552
			end
553
			wave.Transparency = wave.Transparency + 0.5 / WAIT
554
			if wave.Transparency > 0.99 then
555
				wave:remove()
556
			end
557
		end
558
	end))
559
end
560
561
function AddChildrenToTable(FROM, PARENT, DIST, TABLE)
562
	for _, c in pairs(PARENT:GetChildren()) do
563
		if c.ClassName == "Model" then
564
			if c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
565
				local HUMANOID = c:FindFirstChildOfClass("Humanoid")
566
				local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
567
				if DIST > (TORSO.Position - FROM).Magnitude then
568
					table.insert(TABLE, c)
569
				end
570
				AddChildrenToTable(FROM, c, DIST, TABLE)
571
			elseif c.ClassName == "Folder" then
572
				AddChildrenToTable(FROM, c, DIST, TABLE)
573
			end
574
		end
575
	end
576
end
577
578
function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
579
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
580
	local mesh
581
	if KIND == "Base" then
582
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
583
	elseif KIND == "Thin" then
584
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
585
	elseif KIND == "Round" then
586
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
587
	end
588
	wave.CFrame = CFRAME
589
	coroutine.resume(coroutine.create(function(PART)
590
		for i = 1, WAIT do
591
			Swait()
592
			mesh.Scale = mesh.Scale + GROW / 10
593
			wave.Transparency = wave.Transparency + 0.5 / WAIT
594
			if wave.Transparency > 0.99 then
595
				wave:remove()
596
			end
597
		end
598
	end))
599
end
600
601
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
602
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
603
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
604
	wave.CFrame = CFRAME
605
	coroutine.resume(coroutine.create(function(PART)
606
		for i = 1, WAIT do
607
			Swait()
608
			mesh.Scale = mesh.Scale + GROW
609
			wave.Transparency = wave.Transparency + 1 / WAIT
610
			if wave.Transparency > 0.99 then
611
				wave:remove()
612
			end
613
		end
614
	end))
615
end
616
617
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
618
	local TORSO = Torso
619
	local HUM = Humanoid
620
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
621
		coroutine.wrap(function()
622
			VT = Vector3.new
623
			MRANDOM = math.random
624
			local A = TIME
625
			local B = INTENSITY
626
			local C = true
627
			local HUMANOID = Humanoid
628
			local TIMER = A or 35
629
			local SHAKE = B or 5
630
			local FADE = C or true
631
			if HUMANOID then
632
				local FADER = SHAKE / TIMER
633
				for i = 1, TIMER do
634
					wait()
635
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
636
				end
637
				HUMANOID.CameraOffset = VT(0, 0, 0)
638
			end
639
640
		end)()
641
	end
642
end
643
644
function Effect(data)
645
	local FX = data.Effect or 'ResizeAndFade'
646
	local Parent = data.Parent or Effects
647
	local Color = data.Color or C3.N(0,0,0)
648
	local Size = data.Size or V3.N(1,1,1)
649
	local MoveDir = data.MoveDirection or nil
650
	local MeshData = data.Mesh or nil
651
	local SndData = data.Sound or nil
652
	local Frames = data.Frames or 45
653
	local Manual = data.Manual or nil
654
	local Material = data.Material or nil
655
	local CFra = data.CFrame or Torso.CFrame
656
	local Settings = data.FXSettings or {}
657
	local Snd,Prt,Msh;
658
	local Shape = data.Shape or Enum.PartType.Block
659
	coroutine.resume(coroutine.create(function()
660
		if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
661
			Prt = Manual
662
		else
663
			Prt = Part(Parent,Color,Material,Size,CFra,true,false)
664
			Prt.Shape = Shape
665
		end
666
		if(typeof(MeshData) == 'table')then
667
			Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
668
		elseif(typeof(MeshData) == 'Instance')then
669
			Msh = MeshData:Clone()
670
			Msh.Parent = Prt
671
		elseif(Shape == Enum.PartType.Block)then
672
			Msh = Mesh(Prt,Enum.MeshType.Brick)
673
		end
674
		if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
675
			Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
676
		end
677
		if(Snd)then
678
			repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
679
			Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
680
		end
681
		local MoveSpeed = nil;
682
		if(MoveDir)then
683
			MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
684
		end
685
		local Inc = M.RNG()-M.RNG()
686
		local Thingie = 0
687
		local Thingie2 = M.RNG(50,100)/100
688
		if(FX ~= 'Arc')then
689
			for i = 1, Frames do
690
				if(swait and typeof(swait) == 'function')then
691
					swait()
692
				else
693
					wait()
694
				end
695
				if(FX == 'ResizeAndFade')then
696
					if(not Settings.EndSize)then
697
						Settings.EndSize = V3.N(0,0,0)
698
					end
699
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize+Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
700
					if(Settings.EndIsIncrement)then
701
						Prt.Size = Prt.Size + Settings.EndSize					
702
					else
703
						Prt.Size = Prt.Size - grow/Frames
704
					end 
705
					Prt.Transparency = (i/Frames)
706
				elseif(FX == 'Fade')then
707
					Prt.Transparency = (i/Frames)
708
				end
709
				
710
				if(Settings.RandomizeCFrame)then
711
					Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
712
				end
713
				if(MoveDir and MoveSpeed)then
714
					local Orientation = Prt.Orientation
715
					Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
716
					Prt.Orientation = Orientation
717
				end
718
			end
719
			Prt:destroy() 
720
		else
721
			local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
722
			if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
723
			local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
724
			local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
725
			assert(start ~= nil,"You need to specify a start point!")
726
			assert(endP ~= nil,"You need to specify an end point!")
727
			for i = 0, 1, Settings.Speed or 0.01 do
728
				if(swait and typeof(swait) == 'function')then
729
					swait()
730
				else
731
					wait()
732
				end
733
				if(Settings.Home)then
734
					endP = Settings.Home.CFrame
735
				end
736
				Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
737
			end
738
			if(Settings.RemoveOnGoal)then
739
				Prt:destroy()
740
			end
741
		end
742
	end))
743
	return Prt,Msh,Snd
744
end
745
746
function RightWing()
747
	for i = 1, 2 do
748
		local PART
749
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
750
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Wing, CF(0.8, 0.75 - 0.25 * i, 1) * ANGLES(RAD(0), RAD(-15 * i), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-30 * i)), CF(0, 0, 0))
751
		table.insert(RWINGS, WingWeld)
752
		PART = Wing
753
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "LargeWing", VT(1, 1.7, 1), false)
754
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.5, 0) * ANGLES(RAD(15), RAD(25), RAD(0)), CF(0, -0.8, 0))
755
		PART = Wing
756
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
757
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.9, 0) * ANGLES(RAD(-8), RAD(0), RAD(0)), CF(0, 0, 0))
758
		local Wing1 = CreatePart(3, Weapon, "Marble", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.2, 0.51), false)
759
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
760
		PART = Wing
761
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
762
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), CF(0, 0, 0))
763
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.8, 0.15, 0.15), false)
764
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.7, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
765
		local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark orange", "WingPart", VT(0.25, 0.2, 0.25), false)
766
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
767
		PART = Wing
768
		table.insert(RWINGS, WingWeld)
769
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.4, 0.5, 0.4), false)
770
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(15)), CF(0, 0, 0))
771
		local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark indigo", "WingPart", VT(0.45, 0.2, 0.45), false)
772
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
773
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.15, 0.15), false)
774
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
775
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
776
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(-0.8, 0, 0))
777
		PART = Wing
778
		table.insert(RWINGS, WingWeld)
779
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
780
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(-0.18, 0.25, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
781
		PART = Wing
782
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
783
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.55, 0) * ANGLES(RAD(-15), RAD(15), RAD(15)), CF(0, 0, 0))
784
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.3, 0.3), false)
785
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
786
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(1, 0.2, 0.2), false)
787
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(-0.8, 0.15, 0))
788
		PART = Wing
789
		table.insert(RWINGS, WingWeld)
790
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "WingPart", VT(1, 1, 1), false)
791
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0.4, 0.95, 0) * ANGLES(RAD(-5), RAD(0), RAD(15)), CF(0, 0, 0))
792
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(0.3, 0.3, 0.3), false)
793
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, -0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
794
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.7, 0.7, 0.7), false)
795
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.2) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
796
		local Wing1 = CreatePart(3, Weapon, "Neon", 0, 0, "Burgundy", "WingPart", VT(0.45, 0.45, 0.45), false)
797
		table.insert(EYES, Wing1)
798
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.35) * ANGLES(RAD(0), RAD(0), RAD(-35)), CF(0, 0, 0))
799
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
800
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
801
		PART = Wing
802
		table.insert(RWINGS, WingWeld)
803
	end
804
	BODY = {}
805
	for _, c in pairs(Character:GetDescendants()) do
806
		if c:IsA("BasePart") then
807
			table.insert(BODY, {
808
				c,
809
				c.Parent,
810
				c.Material,
811
				c.Color
812
			})
813
		elseif c:IsA("JointInstance") then
814
			table.insert(BODY, {
815
				c,
816
				c.Parent,
817
				nil,
818
				nil
819
			})
820
		end
821
	end
822
end
823
function LeftWing()
824
	for i = 1, 2 do
825
		local PART
826
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
827
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Wing, CF(-0.8, 0.75 - 0.25 * i, 1) * ANGLES(RAD(0), RAD(15 * i), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(30 * i)), CF(0, 0, 0))
828
		table.insert(LWINGS, WingWeld)
829
		PART = Wing
830
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "LargeWing", VT(1, 1.7, 1), false)
831
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.5, 0) * ANGLES(RAD(15), RAD(-25), RAD(0)), CF(0, -0.8, 0))
832
		PART = Wing
833
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
834
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.9, 0) * ANGLES(RAD(-8), RAD(0), RAD(0)), CF(0, 0, 0))
835
		local Wing1 = CreatePart(3, Weapon, "Marble", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.2, 0.51), false)
836
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
837
		PART = Wing
838
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
839
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), CF(0, 0, 0))
840
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.8, 0.15, 0.15), false)
841
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.7, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
842
		local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark orange", "WingPart", VT(0.25, 0.2, 0.25), false)
843
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
844
		PART = Wing
845
		table.insert(LWINGS, WingWeld)
846
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.4, 0.5, 0.4), false)
847
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(-15)), CF(0, 0, 0))
848
		local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark indigo", "WingPart", VT(0.45, 0.2, 0.45), false)
849
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
850
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.15, 0.15), false)
851
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
852
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
853
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0.8, 0, 0))
854
		PART = Wing
855
		table.insert(LWINGS, WingWeld)
856
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
857
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0.18, 0.25, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
858
		PART = Wing
859
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
860
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.55, 0) * ANGLES(RAD(-15), RAD(-15), RAD(-15)), CF(0, 0, 0))
861
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.3, 0.3), false)
862
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
863
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(1, 0.2, 0.2), false)
864
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0.8, 0.15, 0))
865
		PART = Wing
866
		table.insert(LWINGS, WingWeld)
867
		local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "WingPart", VT(1, 1, 1), false)
868
		local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(-0.4, 0.95, 0) * ANGLES(RAD(-5), RAD(0), RAD(-15)), CF(0, 0, 0))
869
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(0.3, 0.3, 0.3), false)
870
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, -0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
871
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.7, 0.7, 0.7), false)
872
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, 0, 0))
873
		local Wing1 = CreatePart(3, Weapon, "Neon", 0, 0, "Burgundy", "WingPart", VT(0.45, 0.45, 0.45), false)
874
		table.insert(EYES, Wing1)
875
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.35) * ANGLES(RAD(0), RAD(0), RAD(35)), CF(0, 0, 0))
876
		local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
877
		CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, 0, 0))
878
		PART = Wing
879
		table.insert(LWINGS, WingWeld)
880
	end
881
	BODY = {}
882
	for _, c in pairs(Character:GetDescendants()) do
883
		if c:IsA("BasePart") then
884
			table.insert(BODY, {
885
				c,
886
				c.Parent,
887
				c.Material,
888
				c.Color
889
			})
890
		elseif c:IsA("JointInstance") then
891
			table.insert(BODY, {
892
				c,
893
				c.Parent,
894
				nil,
895
				nil
896
			})
897
		end
898
	end
899
end
900
901
function Swait(NUMBER)
902
	if NUMBER == 0 or NUMBER == nil then
903
		ArtificialHB.Event:wait()
904
	else
905
		for i = 1, NUMBER do
906
			ArtificialHB.Event:wait()
907
		end
908
	end
909
end
910
911
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
912
	local NEWMESH = IT(MESH)
913
	if MESH == "SpecialMesh" then
914
		NEWMESH.MeshType = MESHTYPE
915
		if MESHID ~= "nil" and MESHID ~= "" then
916
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
917
		end
918
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
919
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
920
		end
921
	end
922
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
923
	NEWMESH.Scale = SCALE
924
	NEWMESH.Parent = PARENT
925
	return NEWMESH
926
end
927
928
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
929
	local NEWPART = IT("Part")
930
	NEWPART.formFactor = FORMFACTOR
931
	NEWPART.Reflectance = REFLECTANCE
932
	NEWPART.Transparency = TRANSPARENCY
933
	NEWPART.CanCollide = false
934
	NEWPART.Locked = true
935
	NEWPART.Anchored = true
936
	if ANCHOR == false then
937
		NEWPART.Anchored = false
938
	end
939
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
940
	NEWPART.Name = NAME
941
	NEWPART.Size = SIZE
942
	NEWPART.Position = Torso.Position
943
	NEWPART.Material = MATERIAL
944
	NEWPART:BreakJoints()
945
	NEWPART.Parent = PARENT
946
	return NEWPART
947
end
948
949
	local function weldBetween(a, b)
950
	    local weldd = Instance.new("ManualWeld")
951
	    weldd.Part0 = a
952
	    weldd.Part1 = b
953
	    weldd.C0 = CFrame.new()
954
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
955
	    weldd.Parent = a
956
	    return weldd
957
	end
958
959
960
function QuaternionFromCFrame(cf)
961
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
962
	local trace = m00 + m11 + m22
963
	if trace > 0 then 
964
		local s = math.sqrt(1 + trace)
965
		local recip = 0.5 / s
966
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
967
	else
968
		local i = 0
969
		if m11 > m00 then
970
			i = 1
971
		end
972
		if m22 > (i == 0 and m00 or m11) then
973
			i = 2
974
		end
975
		if i == 0 then
976
			local s = math.sqrt(m00 - m11 - m22 + 1)
977
			local recip = 0.5 / s
978
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
979
		elseif i == 1 then
980
			local s = math.sqrt(m11 - m22 - m00 + 1)
981
			local recip = 0.5 / s
982
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
983
		elseif i == 2 then
984
			local s = math.sqrt(m22 - m00 - m11 + 1)
985
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
986
		end
987
	end
988
end
989
 
990
function QuaternionToCFrame(px, py, pz, x, y, z, w)
991
	local xs, ys, zs = x + x, y + y, z + z
992
	local wx, wy, wz = w * xs, w * ys, w * zs
993
	local xx = x * xs
994
	local xy = x * ys
995
	local xz = x * zs
996
	local yy = y * ys
997
	local yz = y * zs
998
	local zz = z * zs
999
	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))
1000
end
1001
 
1002
function QuaternionSlerp(a, b, t)
1003
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
1004
	local startInterp, finishInterp;
1005
	if cosTheta >= 0.0001 then
1006
		if (1 - cosTheta) > 0.0001 then
1007
			local theta = ACOS(cosTheta)
1008
			local invSinTheta = 1 / SIN(theta)
1009
			startInterp = SIN((1 - t) * theta) * invSinTheta
1010
			finishInterp = SIN(t * theta) * invSinTheta
1011
		else
1012
			startInterp = 1 - t
1013
			finishInterp = t
1014
		end
1015
	else
1016
		if (1 + cosTheta) > 0.0001 then
1017
			local theta = ACOS(-cosTheta)
1018
			local invSinTheta = 1 / SIN(theta)
1019
			startInterp = SIN((t - 1) * theta) * invSinTheta
1020
			finishInterp = SIN(t * theta) * invSinTheta
1021
		else
1022
			startInterp = t - 1
1023
			finishInterp = t
1024
		end
1025
	end
1026
	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
1027
end
1028
1029
function Clerp(a, b, t)
1030
	local qa = {QuaternionFromCFrame(a)}
1031
	local qb = {QuaternionFromCFrame(b)}
1032
	local ax, ay, az = a.x, a.y, a.z
1033
	local bx, by, bz = b.x, b.y, b.z
1034
	local _t = 1 - t
1035
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1036
end
1037
1038
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
1039
	local frame = IT("Frame")
1040
	frame.BackgroundTransparency = TRANSPARENCY
1041
	frame.BorderSizePixel = BORDERSIZEPIXEL
1042
	frame.Position = POSITION
1043
	frame.Size = SIZE
1044
	frame.BackgroundColor3 = COLOR
1045
	frame.BorderColor3 = BORDERCOLOR
1046
	frame.Name = NAME
1047
	frame.Parent = PARENT
1048
	return frame
1049
end
1050
1051
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
1052
	local label = IT("TextLabel")
1053
	label.BackgroundTransparency = 1
1054
	label.Size = UD2(1, 0, 1, 0)
1055
	label.Position = UD2(0, 0, 0, 0)
1056
	label.TextColor3 = TEXTCOLOR
1057
	label.TextStrokeTransparency = STROKETRANSPARENCY
1058
	label.TextTransparency = TRANSPARENCY
1059
	label.FontSize = TEXTFONTSIZE
1060
	label.Font = TEXTFONT
1061
	label.BorderSizePixel = BORDERSIZEPIXEL
1062
	label.TextScaled = false
1063
	label.Text = TEXT
1064
	label.Name = NAME
1065
	label.Parent = PARENT
1066
	return label
1067
end
1068
1069
function NoOutlines(PART)
1070
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
1071
end
1072
1073
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
1074
	local NEWWELD = IT(TYPE)
1075
	NEWWELD.Part0 = PART0
1076
	NEWWELD.Part1 = PART1
1077
	NEWWELD.C0 = C0
1078
	NEWWELD.C1 = C1
1079
	NEWWELD.Parent = PARENT
1080
	return NEWWELD
1081
end
1082
1083
local S = IT("Sound")
1084
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
1085
	local NEWSOUND = nil
1086
	coroutine.resume(coroutine.create(function()
1087
		NEWSOUND = S:Clone()
1088
		NEWSOUND.Parent = PARENT
1089
		NEWSOUND.Volume = VOLUME
1090
		NEWSOUND.Pitch = PITCH
1091
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
1092
		NEWSOUND:play()
1093
		if DOESLOOP == true then
1094
			NEWSOUND.Looped = true
1095
		else
1096
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
1097
			NEWSOUND:remove()
1098
		end
1099
	end))
1100
	return NEWSOUND
1101
end
1102
1103
function CFrameFromTopBack(at, top, back)
1104
	local right = top:Cross(back)
1105
	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)
1106
end
1107
1108
--Lightning({Material = "Neon", FadeIn = false, Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 15, Thicken = false})
1109
function Lightning(Table)
1110
	local Color = Table.Color or C3(1,1,1)
1111
	local StartPos = Table.Start or Torso.Position
1112
	local EndPos = Table.End or Mouse.Hit.p
1113
	local SegmentLength = Table.SegmentL or 2
1114
	local Thickness = Table.Thickness or 0.1
1115
	local Dissapear = Table.DoesFade or false
1116
	local Parent = Table.Ignore or Character
1117
	local MaxDist = Table.MaxDist or 400
1118
	local Branches = Table.Branches or false
1119
	local Thicken = Table.Thicken or false
1120
	local FadeTime = Table.FadeTime or 15
1121
	local FadeIn = Table.FadeIn or false
1122
	local Material = Table.Material or "Neon"
1123
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
1124
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
1125
	local LIGHTNINGMODEL = IT("Model",Effects)
1126
	LIGHTNINGMODEL.Name = "Lightning"
1127
	local LastBolt = nil
1128
	for E = 1, DISTANCE do
1129
		local ExtraSize = 0
1130
		if Thicken == true then
1131
			ExtraSize = (DISTANCE-E)/15
1132
		end
1133
		local TRANSPARENCY = 0
1134
		if FadeIn == true then
1135
			TRANSPARENCY = 1-(E/(DISTANCE/1.5))
1136
			if TRANSPARENCY < 0 then
1137
				TRANSPARENCY = 0
1138
			end
1139
		end
1140
		local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
1141
		PART.Color = Color
1142
		MakeForm(PART,"Cyl")
1143
		if LastBolt == nil then
1144
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
1145
		else
1146
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
1147
		end
1148
		LastBolt = PART
1149
		if Branches == true and E < (DISTANCE-5) then
1150
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
1151
			if CHOICE == 1 then
1152
				local LASTBRANCH = nil
1153
				for i = 1, MRANDOM(2,5) do
1154
					local ExtraSize2 = 0
1155
					if Thicken == true then
1156
						ExtraSize = ((DISTANCE-E)/25)/i
1157
					end
1158
					local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
1159
					PART.Color = Color
1160
					MakeForm(PART,"Cyl")
1161
					if LASTBRANCH == nil then
1162
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
1163
					else
1164
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
1165
					end
1166
					LASTBRANCH = PART
1167
				end
1168
			end
1169
		end
1170
	end
1171
	if Dissapear == true then
1172
		coroutine.resume(coroutine.create(function()
1173
			for i = 1, FadeTime do
1174
				Swait()
1175
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
1176
					if c.ClassName == "Part" then
1177
						c.Transparency = c.Transparency + (i/FadeTime)/10
1178
					end
1179
				end
1180
			end
1181
			LIGHTNINGMODEL:remove()
1182
		end))
1183
	elseif Dissapear == false then
1184
		Debris:AddItem(LIGHTNINGMODEL,0.1)
1185
	end
1186
	return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
1187
end
1188
1189
--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})
1190
local cR=255
1191
local cG=0
1192
local cB=0
1193
local flg5=1 local omgidk=1
1194
local add=15
1195
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
1196
	if omgidk>10000 then omgidk=0 end
1197
	omgidk=omgidk+1
1198
	if cR>=255 then flg5=1 end
1199
	if cG>=255 then flg5=2 end
1200
	if cB>=255 then flg5=3 end
1201
	if flg5==1 then cR=cR-add cG=cG+add end
1202
	if flg5==2 then cG=cG-add cB=cB+add end
1203
	if flg5==3 then cB=cB-add cR=cR+add end
1204
	color=Color3.fromRGB(cR,cG,cB)
1205
function WACKYEFFECT(Table)
1206
	local TYPE = (Table.EffectType or "Sphere")
1207
	local SIZE = (Table.Size or VT(6,6,6))
1208
	local ENDSIZE = (Table.Size2 or VT(7,7,7))
1209
	local TRANSPARENCY = (Table.Transparency or 0)
1210
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1211
	local CFRAME = (Table.CFrame or Torso.CFrame)
1212
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1213
	local ROTATION1 = (Table.RotationX or 0)
1214
	local ROTATION2 = (Table.RotationY or 0)
1215
	local ROTATION3 = (Table.RotationZ or 0)
1216
	local MATERIAL = "Neon"
1217
	local COLOR = color
1218
	local TIME = (Table.Time or 45)
1219
	local SOUNDID = (Table.SoundID or nil)
1220
	local SOUNDPITCH = (Table.SoundPitch or nil)
1221
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1222
	coroutine.resume(coroutine.create(function()
1223
		local PLAYSSOUND = false
1224
		local SOUND = nil
1225
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1226
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1227
			PLAYSSOUND = true
1228
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1229
		end
1230
		EFFECT.Color = color
1231
		local MSH = nil
1232
		if TYPE == "Sphere" then
1233
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1234
		elseif TYPE == "Block" then
1235
			MSH = IT("BlockMesh",EFFECT)
1236
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1237
		elseif TYPE == "Wave" then
1238
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1239
		elseif TYPE == "Ring" then
1240
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1241
		elseif TYPE == "Slash" then
1242
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1243
		elseif TYPE == "Round Slash" then
1244
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1245
		elseif TYPE == "Swirl" then
1246
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1247
		elseif TYPE == "Skull" then
1248
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1249
		elseif TYPE == "Crystal" then
1250
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1251
		end
1252
		if MSH ~= nil then
1253
			local MOVESPEED = nil
1254
			if MOVEDIRECTION ~= nil then
1255
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1256
			end
1257
			local GROWTH = SIZE - ENDSIZE
1258
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1259
			if TYPE == "Block" then
1260
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1261
			else
1262
				EFFECT.CFrame = CFRAME
1263
			end
1264
			for LOOP = 1, TIME+1 do
1265
				Swait()
1266
				MSH.Scale = MSH.Scale - GROWTH/TIME
1267
				if TYPE == "Wave" then
1268
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1269
				end
1270
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1271
				if TYPE == "Block" then
1272
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1273
				else
1274
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1275
				end
1276
				if MOVEDIRECTION ~= nil then
1277
					local ORI = EFFECT.Orientation
1278
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1279
					EFFECT.Orientation = ORI
1280
				end
1281
			end
1282
			if PLAYSSOUND == false then
1283
				EFFECT:remove()
1284
			else
1285
				SOUND.Stopped:Connect(function()
1286
					EFFECT:remove()
1287
				end)
1288
			end
1289
		else
1290
			if PLAYSSOUND == false then
1291
				EFFECT:remove()
1292
			else
1293
				repeat Swait() until SOUND.Playing == false
1294
				EFFECT:remove()
1295
			end
1296
		end
1297
	end))
1298
end
1299
end)
1300
function MakeForm(PART,TYPE)
1301
	if TYPE == "Cyl" then
1302
		local MSH = IT("CylinderMesh",PART)
1303
	elseif TYPE == "Ball" then
1304
		local MSH = IT("SpecialMesh",PART)
1305
		MSH.MeshType = "Sphere"
1306
	elseif TYPE == "Wedge" then
1307
		local MSH = IT("SpecialMesh",PART)
1308
		MSH.MeshType = "Wedge"
1309
	end
1310
end
1311
function SpawnTrail(FROM,TO,BIG)
1312
local TRAIL = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Trail", VT(10,10,10))
1313
	MakeForm(TRAIL,"Cyl")
1314
local cR=255
1315
local cG=0
1316
local cB=0
1317
local flg5=1 local omgidk=1
1318
local add=15
1319
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
1320
	if omgidk>10000 then omgidk=0 end
1321
	omgidk=omgidk+1
1322
	if cR>=255 then flg5=1 end
1323
	if cG>=255 then flg5=2 end
1324
	if cB>=255 then flg5=3 end
1325
	if flg5==1 then cR=cR-add cG=cG+add end
1326
	if flg5==2 then cG=cG-add cB=cB+add end
1327
	if flg5==3 then cB=cB-add cR=cR+add end
1328
	color=Color3.fromRGB(cR,cG,cB)
1329
	TRAIL.Color = color
1330
end)
1331
	local DIST = (FROM - TO).Magnitude
1332
	if BIG == true then
1333
		TRAIL.Size = VT(5,DIST,5)
1334
	else
1335
		TRAIL.Size = VT(5,DIST,5)
1336
	end
1337
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1338
	coroutine.resume(coroutine.create(function()
1339
		for i = 1, 55 do
1340
			Swait()
1341
			TRAIL.Transparency = TRAIL.Transparency + 0.01
1342
		end
1343
		TRAIL:remove()
1344
	end))
1345
end
1346
1347
Debris = game:GetService("Debris")
1348
1349
function CastProperRay(StartPos, EndPos, Distance, Ignore)
1350
	local DIRECTION = CF(StartPos,EndPos).lookVector
1351
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
1352
end
1353
1354
function turnto(position)
1355
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1356
end
1357
1358
--//=================================\\
1359
--||	     WEAPON CREATION
1360
--\\=================================//
1361
local GRIP = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, HANDLE, CF(0,-1.1,-0.25)*ANGLES(RAD(-110),RAD(0),RAD(0))*ANGLES(RAD(0),RAD(0),RAD(180)), CF(0,0,0))
1362
1363
for i = 1, 35 do
1364
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(1.01,0.5,1.01),false)
1365
	FACE.Color = C3(0,0,0)
1366
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
1367
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
1368
end
1369
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Royal purple", "Eye", VT(0.6,0.1,1)/2,false)
1370
MakeForm(Eye,"Ball")
1371
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
1372
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Navy blue", "Eye", VT(0.6,0.1,1)/2,false)
1373
MakeForm(Eye,"Ball")
1374
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
1375
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Royal purple", "Eye", VT(0.1,1,1)/2,false)
1376
MakeForm(Eye,"Ball")
1377
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
1378
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Navy blue", "Eye", VT(0.1,1,1)/2,false)
1379
MakeForm(Eye,"Ball")
1380
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
1381
1382
local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Lime green", "Eon", VT(0.5,0.5,1.25),false)
1383
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1384
1385
local Particle = IT("ParticleEmitter",nil)
1386
Particle.Enabled = false
1387
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1388
Particle.LightEmission = 0.5
1389
Particle.Rate = 150
1390
Particle.ZOffset = 0.2
1391
Particle.Rotation = NumberRange.new(-180, 180)
1392
Particle.RotSpeed = NumberRange.new(-180, 180)
1393
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1394
Particle.Color = ColorSequence.new(C3(255,128,0),C3(0,155,0),C3(255,255,0),C3(0,255,0),C3(0,255,255),C3(0,0,255),C3(191,0,255),C3(255,0,191))
1395
1396
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1397
function ParticleEmitter(Table)
1398
	local PRTCL = Particle:Clone()
1399
	local Speed = Table.Speed or 5
1400
	local Drag = Table.Drag or 0
1401
	local Size1 = Table.Size1 or 1
1402
	local Size2 = Table.Size2 or 5
1403
	local Lifetime1 = Table.Lifetime1 or 1
1404
	local Lifetime2 = Table.Lifetime2 or 1.5
1405
	local Parent = Table.Parent or Torso
1406
	local Emit = Table.Emit or 100
1407
	local Offset = Table.Offset or 360
1408
	local Acel = Table.Acel or VT(0,0,0)
1409
	local Enabled = Table.Enabled or false
1410
	PRTCL.Parent = Parent
1411
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1412
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1413
	PRTCL.Speed = NumberRange.new(Speed)
1414
	PRTCL.VelocitySpread = Offset
1415
	PRTCL.Drag = Drag
1416
	PRTCL.Acceleration = Acel
1417
	if Enabled == false then
1418
		PRTCL:Emit(Emit)
1419
		Debris:AddItem(PRTCL,Lifetime2)
1420
	else
1421
		PRTCL.Enabled = true
1422
	end
1423
	return PRTCL
1424
end
1425
1426
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1427
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1428
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1429
MakeForm(Part,"Wedge")
1430
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1431
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1432
MakeForm(Part,"Wedge")
1433
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1434
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1435
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1436
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1437
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1438
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1439
MakeForm(Part,"Cyl")
1440
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1441
for i = 1, 8 do
1442
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1443
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1444
end
1445
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1446
MakeForm(Part,"Cyl")
1447
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1448
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1449
MakeForm(Part,"Ball")
1450
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1451
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1452
MakeForm(Part,"Wedge")
1453
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1454
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1455
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1456
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1457
MakeForm(Part,"Cyl")
1458
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1459
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1460
MakeForm(Part,"Cyl")
1461
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1462
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1463
MakeForm(Part,"Cyl")
1464
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1465
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1466
MakeForm(Part,"Wedge")
1467
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1468
local LASTPART = Handle
1469
for i = 1, 10 do
1470
	if LASTPART == Handle then
1471
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1472
		LASTPART = Part
1473
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1474
	else
1475
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1476
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1477
		LASTPART = Part
1478
	end
1479
end
1480
1481
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1482
MakeForm(Barrel,"Cyl")
1483
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1484
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1485
MakeForm(Part,"Cyl")
1486
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1487
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1488
MakeForm(Part,"Wedge")
1489
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1490
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1491
MakeForm(Hole,"Cyl")
1492
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1493
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1494
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1495
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1496
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1497
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1498
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1499
coroutine.resume(coroutine.create(function()
1500
	while wait() do
1501
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1502
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1503
	end
1504
end))
1505
1506
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.7, Size2 = 0, Lifetime1 = 0.7, Lifetime2 = 0.7, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(3,9,8)})
1507
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 10, Size2 = 0, Lifetime1 = 0.8, Lifetime2 = 0.9, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(3,9,8)})
1508
1509
local cR=255
1510
local cG=0
1511
local cB=0
1512
local flg5=1 local omgidk=1
1513
local add=15
1514
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
1515
	if omgidk>10000 then omgidk=0 end
1516
	omgidk=omgidk+1
1517
	if cR>=255 then flg5=1 end
1518
	if cG>=255 then flg5=2 end
1519
	if cB>=255 then flg5=3 end
1520
	if flg5==1 then cR=cR-add cG=cG+add end
1521
	if flg5==2 then cG=cG-add cB=cB+add end
1522
	if flg5==3 then cB=cB-add cR=cR+add end
1523
	color=Color3.fromRGB(cR,cG,cB)
1524
for _, c in pairs(Weapon:GetDescendants()) do
1525
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1526
		c.Material = "Glass"
1527
		c.Color = C3(0,0,0)
1528
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1529
		c.Color = color
1530
		c.Material = "Neon"
1531
	end
1532
end
1533
end)
1534
Weapon.Parent = Character
1535
for _, c in pairs(Weapon:GetChildren()) do
1536
	if c.ClassName == "Part" then
1537
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1538
	end
1539
end
1540
1541
function swait(num)
1542
	if num == 0 or num == nil then
1543
		ArtificialHB.Event:wait()
1544
	else
1545
		for i = 0, num do
1546
			ArtificialHB.Event:wait()
1547
		end
1548
	end
1549
end
1550
1551
function chatfunc(text)
1552
	local chat = coroutine.wrap(function()
1553
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
1554
		Character:FindFirstChild("TalkingBillBoard"):destroy()
1555
	end
1556
	local Bill = Instance.new("BillboardGui",Character)
1557
	Bill.Size = UDim2.new(0,100,0,40)
1558
	Bill.StudsOffset = Vector3.new(0,3,0)
1559
	Bill.Adornee = Character.Head
1560
	Bill.Name = "TalkingBillBoard"
1561
	local Hehe = Instance.new("TextLabel",Bill)
1562
	Hehe.BackgroundTransparency = 1
1563
	Hehe.BorderSizePixel = 0
1564
	Hehe.Text = ""
1565
	Hehe.Font = "Bodoni"
1566
	Hehe.TextSize = 40
1567
	Hehe.TextStrokeTransparency = 0
1568
	Hehe.Size = UDim2.new(1,0,0.5,0)
1569
	coroutine.resume(coroutine.create(function()
1570
		while Hehe ~= nil do
1571
			swait()	
1572
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
1573
			Hehe.Rotation = math.random(-5,5)
1574
			Hehe.TextColor3 = Color3.new(0,255,0)
1575
			Hehe.TextStrokeColor3 = Color3.new(0,0,0)
1576
		end
1577
	end))
1578
	for i = 1,string.len(text),1 do
1579
		swait()
1580
		Hehe.Text = string.sub(text,1,i)
1581
	end
1582
	swait(90)--Re[math.random(1, 93)]
1583
	for i = 0, 1, .025 do
1584
		swait()
1585
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
1586
		Hehe.TextStrokeTransparency = i
1587
		Hehe.TextTransparency = i
1588
	end
1589
	Bill:Destroy()
1590
	end)
1591
chat()
1592
end
1593
1594
function onChatted(msg)
1595
	chatfunc(msg)
1596
end
1597
1598
Player.Chatted:connect(onChatted)
1599
1600
local BODY = {}
1601
for _, c in pairs(Character:GetDescendants()) do
1602
	if c:IsA("BasePart") and c.Name ~= "Handle" then
1603
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1604
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1605
		end
1606
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency,c.Size,c.Name})
1607
	elseif c:IsA("JointInstance") then
1608
		table.insert(BODY,{c,c.Parent,nil,nil,nil,nil,nil})
1609
	end
1610
end
1611
1612
function refit()
1613
	Character.Parent = workspace
1614
	for e = 1, #BODY do
1615
		if BODY[e] ~= nil then
1616
			local STUFF = BODY[e]
1617
			local PART = STUFF[1]
1618
			local PARENT = STUFF[2]
1619
			local MATERIAL = STUFF[3]
1620
			local COLOR = STUFF[4]
1621
			local TRANSPARENCY = STUFF[5]
1622
			--local SIZE = STUFF[6]
1623
			local NAME = STUFF[7]
1624
			if PART.ClassName == "Part" and PART ~= RootPart then
1625
				PART.Material = MATERIAL
1626
				PART.Transparency = TRANSPARENCY
1627
				PART.Name = NAME
1628
			end
1629
			if PART.Parent ~= PARENT then
1630
				Humanoid:remove()
1631
				PART.Parent = PARENT
1632
				Humanoid = IT("Humanoid",Character)
1633
			end
1634
		end
1635
	end
1636
end
1637
1638
local SKILLTEXTCOLOR = C3(0,255,0)
1639
local SKILLFONT = "Code"
1640
local SKILLTEXTSIZE = 7
1641
1642
Humanoid.Died:connect(function()
1643
	           refit()
1644
end)
1645
1646
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1647
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1648
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.1, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1649
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.2, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1650
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.2, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1651
local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.3, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
1652
local SKILL7FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.3, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 7 Frame")
1653
local SKILL8FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 8 Frame")
1654
local SKILL9FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.4, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 9 Frame")
1655
local SKILL10FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.4, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 10 Frame")
1656
local SKILL11FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.5, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 11 Frame")
1657
local SKILL12FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.5, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 12 Frame")
1658
1659
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Burning Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1660
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[V] Teleport", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1661
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[X] Burning Barrage", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1662
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[C] Burning Beam", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1663
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[B] Burning Fury", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1664
local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[P] Dance Boi", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 6")
1665
local SKILL7TEXT = CreateLabel(SKILL7FRAME, "[T] Taunt", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 7")
1666
local SKILL8TEXT = CreateLabel(SKILL8FRAME, "[G] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 8")
1667
local SKILL9TEXT = CreateLabel(SKILL9FRAME, "[E] Burning Ravage", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 9")
1668
local SKILL10TEXT = CreateLabel(SKILL10FRAME, "[Y] Overflowing Burn", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 10")
1669
local SKILL11TEXT = CreateLabel(SKILL11FRAME, "[J] Supernova", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 11")
1670
local SKILL12TEXT = CreateLabel(SKILL12FRAME, "[U] Everyone's Hopes", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 12")
1671
1672
function printbye(Name)
1673
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
1674
	chatfunc(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1675
end
1676
1677
workspace.ChildAdded:connect(function(instance)
1678
    for BANISH = 1, #TOBANISH do
1679
		if TOBANISH[BANISH] ~= nil then
1680
			if instance.Name == TOBANISH[BANISH] then
1681
				coroutine.resume(coroutine.create(function()
1682
					printbye(instance.Name)
1683
					instance:ClearAllChildren()
1684
					Debris:AddItem(instance,0.0005)
1685
				end))
1686
			end
1687
		end
1688
	end
1689
end)
1690
1691
--//=================================\\
1692
--||			DAMAGING
1693
--\\=================================//
1694
1695
function Banish(Foe)
1696
	if Foe then
1697
		coroutine.resume(coroutine.create(function()
1698
			--if game.Players:FindFirstChild(Foe.Name) then
1699
				table.insert(TOBANISH,Foe.Name)
1700
				printbye(Foe.Name)
1701
			--end
1702
			Foe.Archivable = true
1703
			local CLONE = Foe:Clone()
1704
			Foe:Destroy()
1705
			CLONE.Parent = Effects
1706
			CLONE:BreakJoints()
1707
			local MATERIALS = {"Glass","Neon"}
1708
			for _, c in pairs(CLONE:GetDescendants()) do
1709
				if c:IsA("BasePart") then
1710
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1711
 						CreateSound(340722848, c, 10, 1, false)
1712
					end
1713
					c.Anchored = true
1714
					c.Transparency = c.Transparency + 0.2
1715
					c.Material = MATERIALS[MRANDOM(1,2)]
1716
					c.Color = C3(0,255,0)
1717
					if c.ClassName == "MeshPart" then
1718
						c.TextureID = ""
1719
					end
1720
					if c:FindFirstChildOfClass("SpecialMesh") then
1721
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1722
					end
1723
					if c:FindFirstChildOfClass("Decal") then
1724
						c:FindFirstChildOfClass("Decal"):remove()
1725
					end
1726
					c.Name = "Banished"
1727
					c.CanCollide = false
1728
				else
1729
					c:remove()
1730
				end
1731
			end
1732
			local A = false
1733
			for i = 1, 35 do
1734
				if A == false then
1735
					A = true
1736
				elseif A == true then
1737
					A = false
1738
				end
1739
				for _, c in pairs(CLONE:GetDescendants()) do
1740
					if c:IsA("BasePart") then
1741
						c.Anchored = true
1742
						c.Material = MATERIALS[MRANDOM(1,2)]
1743
						c.Transparency = c.Transparency + 0.8/35
1744
						if A == false then
1745
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1746
						elseif A == true then
1747
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1748
						end
1749
					end
1750
				end
1751
				Swait()
1752
			end
1753
			CLONE:remove()
1754
		end))
1755
	end
1756
end
1757
1758
function ApplyAoE(POSITION,RANGE,ISBANISH)
1759
	local CHILDREN = workspace:GetDescendants()
1760
	for index, CHILD in pairs(CHILDREN) do
1761
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1762
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1763
			if HUM then
1764
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1765
				if TORSO then
1766
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1767
						if ISBANISH == true then
1768
							Banish(CHILD)
1769
						else
1770
							if ISBANISH == "Gravity" then
1771
								HUM.PlatformStand = true
1772
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1773
									local grav = Instance.new("BodyPosition",TORSO)
1774
									grav.D = 15
1775
									grav.P = 20000
1776
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1777
									grav.position = TORSO.Position
1778
									grav.Name = "V3BanishForce"..Player.Name
1779
								else
1780
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1781
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1782
								end
1783
							else
1784
								HUM.PlatformStand = false
1785
							end
1786
						end
1787
					elseif ISBANISH == "Gravity" then
1788
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1789
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1790
							HUM.PlatformStand = false
1791
						end
1792
					end
1793
				end
1794
			end
1795
		end
1796
	end
1797
end
1798
1799
UnBanishTaunts = {"You Are Released.", "If You Do The Same Thing Twice You Shall Not Be Given Mercy.", "Your Actions Have Been Forgiven.", "I shall set you free.", "I have let you go.", "Don't do that again.", "As A Person, i have the emotion of forgiving.", "Its Only Fair To Show You Mercy."}
1800
1801
--//=================================\\
1802
--||	ATTACK FUNCTIONS AND STUFF
1803
--\\=================================//
1804
local LAUGHS = {"907329532", "907329893", "865772398", "907333294"}
1805
1806
local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
1807
MakeForm(RightHole,"Cyl")
1808
local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
1809
MakeForm(LeftHole,"Cyl")
1810
1811
function getbloody(victim,amount)
1812
	local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
1813
	PART.CFrame = victim.CFrame
1814
	local HITPLAYERSOUNDS = {"356551938","264486467"}
1815
	Debris:AddItem(PART,5)
1816
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1817
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1818
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1819
	local prtcl = asd:Clone()
1820
	prtcl.Parent = PART
1821
	prtcl:Emit(amount*10)
1822
end
1823
1824
GunPoint = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Point blank", VT(0, 0, 0), false)
1825
1826
function FireArc(Part, ToLocation, AmountOfTime, Height, DoesCourontine)
1827
	if DoesCourontine == false then
1828
		local Direction = CF(Part.Position, ToLocation)
1829
		local Distance = (Part.Position - ToLocation).magnitude
1830
		for i = 1, AmountOfTime do
1831
			Swait()
1832
			Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
1833
			Direction = Part.CFrame
1834
		end
1835
		Part:remove()
1836
	elseif DoesCourontine == true then
1837
		coroutine.resume(coroutine.create(function()
1838
			local Direction = CF(Part.Position, ToLocation)
1839
			local Distance = (Part.Position - ToLocation).magnitude
1840
			for i = 1, AmountOfTime do
1841
				Swait()
1842
				Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
1843
				Direction = Part.CFrame
1844
			end
1845
			Part:remove()
1846
		end))
1847
	end
1848
end
1849
1850
function Absoluteum()
1851
	local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
1852
	if HITFLOOR ~= nil then
1853
		do
1854
			local HITBODIES = {}
1855
			ATTACK = true
1856
			Rooted = true
1857
			local ABSOLUTE = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "ABSOLUTEUM", VT(0, 0, 0))
1858
			MakeForm(ABSOLUTE, "Ball")
1859
			CreateSound("416200578", RootPart, 10, 1)
1860
			for i = 0, 8, 0.1 / Animation_Speed do
1861
				Swait()
1862
				ABSOLUTE.Size = ABSOLUTE.Size + VT(0.2, 0.2, 0.2)
1863
				ABSOLUTE.CFrame = RootPart.CFrame * CF(0, 5 + ABSOLUTE.Size.Y / 2, 0)
1864
				ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
1865
				local CHARGE = CreatePart(3, Effects, "Neon", 0, 0, "Maroon", "ABSOLUTEUM", VT(2, 2, 2))
1866
				MakeForm(CHARGE, "Ball")
1867
				CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15, 15), -15, MRANDOM(-15, 15))
1868
				FireArc(CHARGE, ABSOLUTE.Position, 45, 45, true)
1869
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1870
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1871
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1872
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1873
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1874
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1875
			end
1876
			CreateSound(LAUGHS[MRANDOM(1, #LAUGHS)], Head, 10, 0.9)
1877
			CreateSound("160772554", ABSOLUTE, 10, MRANDOM(5, 7) / 10)
1878
			for i = 1, 45 do
1879
				Swait()
1880
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1881
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1882
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1883
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1884
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1885
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1886
			end
1887
			coroutine.resume(coroutine.create(function()
1888
				local IMPACT = false
1889
				local BULLET = ABSOLUTE
1890
				MakeForm(BULLET, "Ball")
1891
				BULLET.CFrame = CF(BULLET.Position, Mouse.Hit.p)
1892
				for i = 1, 500 do
1893
					Swait()
1894
					BULLET.CFrame = BULLET.CFrame * CF(0, 0, -2)
1895
					local HIT = Raycast(BULLET.Position, BULLET.CFrame.lookVector, BULLET.Size.X / 2, Character)
1896
					MagicSphere(VT(10, 10, 10), 55, CF(BULLET.CFrame * CF(MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5), MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5), MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5)).p), "Really red", VT(-10, -10, -10) / 55)
1897
					if HIT ~= nil then
1898
						IMPACT = true
1899
						break
1900
					end
1901
				end
1902
				if IMPACT == false then
1903
					for i = 1, 40 do
1904
						Swait()
1905
						BULLET.Size = BULLET.Size * 0.9
1906
					end
1907
					BULLET:remove()
1908
				else
1909
					CreateSound("1127492102", BULLET, 10, MRANDOM(8, 13) / 10)
1910
					for i = 1, 175 do
1911
						Swait()
1912
						BULLET.Size = BULLET.Size * 0.99
1913
						Slice("Round", 0, 35, CF(BULLET.Position) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(i, 0, i) / 85)
1914
					end
1915
					CreateSound("438666001", BULLET, 10, 3)
1916
					Swait(35)
1917
					BULLET.Transparency = 1
1918
					for i = 1, 20 do
1919
						for e = 1, 5 do
1920
							MagicSphere(VT(0.2, 0.2, 0.2), 50, CF(BULLET.CFrame * CF(MRANDOM(-5, 5), MRANDOM(-5, 5), MRANDOM(-5, 5)).p, BULLET.Position), "Really black", VT(1, 1, i * 4), 0)
1921
							Slice("Round", 0, 35, CF(BULLET.Position) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(i, 0, i) / 3)
1922
						end
1923
						AddChildrenToTable(BULLET.Position, workspace, i * 25, HITBODIES)
1924
						CreateSound("178452241", BULLET, 10, MRANDOM(8, 13) / 10)
1925
						CreateSound("178452243", BULLET, 10, MRANDOM(8, 13) / 10)
1926
						MagicSphere(BULLET.Size, 35, BULLET.CFrame, C3(MRANDOM(0, 10) / 10, 0, 0), VT(i, i, i) * 2)
1927
						Swait(5)
1928
						for e = 1, #HITBODIES do
1929
							if HITBODIES[e] ~= nil then
1930
								local BOD = HITBODIES[e]
1931
								local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
1932
								if TORS then
1933
									BOD:BreakJoints()
1934
									for _, c in pairs(BOD:GetChildren()) do
1935
										if c.ClassName == "Part" or c.ClassName == "MeshPart" then
1936
											local bv = Instance.new("BodyVelocity")
1937
											bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
1938
											bv.velocity = CF(BULLET.Position, c.Position).lookVector * 250
1939
											bv.Parent = c
1940
											Debris:AddItem(bv, 0.2)
1941
										end
1942
									end
1943
								end
1944
							end
1945
						end
1946
						CreateWave(VT(0, 2, 0), 75, CF(BULLET.Position), true, -15, "Really red", VT(i, 0, i) * 2)
1947
					end
1948
					MagicSphere(BULLET.Size, 100, BULLET.CFrame, C3(1, 0, 0), VT(12, 12, 12))
1949
					Debris:AddItem(BULLET, 10)
1950
				end
1951
			end))
1952
			ATTACK = false
1953
			Rooted = false
1954
		end
1955
	end
1956
end
1957
1958
function Nuke()
1959
	ATTACK = true
1960
	Rooted = true
1961
	local CHARGE = false
1962
	local BLASTS = {468991944, 468991990}
1963
	coroutine.resume(coroutine.create(function()
1964
		repeat
1965
			Swait()
1966
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 0.1 / Animation_Speed)
1967
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 0.1 / Animation_Speed)
1968
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
1969
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
1970
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
1971
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
1972
		until CHARGE == true
1973
		for i = 0, 0.4, 0.1 / Animation_Speed do
1974
			Swait()
1975
			WACKYEFFECT({
1976
				Time = 15,
1977
				EffectType = "Sphere",
1978
				Size = VT(60, 60, 60),
1979
				Size2 = VT(0, 0, 0),
1980
				Transparency = 1,
1981
				Transparency2 = 0.7,
1982
				CFrame = CF(RootPart.Position),
1983
				MoveToPos = nil,
1984
				RotationX = 0,
1985
				RotationY = 0,
1986
				RotationZ = 0,
1987
				Material = "Neon",
1988
				Color = C3(1, 1, 1),
1989
				SoundID = nil,
1990
				SoundPitch = nil,
1991
				SoundVolume = nil
1992
			})
1993
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
1994
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1995
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-50 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1996
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(50 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1997
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1998
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1999
		end
2000
		coroutine.resume(coroutine.create(function()
2001
			local POS = RootPart.Position
2002
			wait(0.2)
2003
			for i = 1, 5 do
2004
				WACKYEFFECT({
2005
					Time = 65,
2006
					EffectType = "Sphere",
2007
					Size = VT(2, 2, 2),
2008
					Size2 = VT(0, 0, 500),
2009
					Transparency = 1,
2010
					Transparency2 = 0,
2011
					CFrame = CF(POS),
2012
					MoveToPos = nil,
2013
					RotationX = MRANDOM(-2, 2),
2014
					RotationY = MRANDOM(-12, 12),
2015
					RotationZ = MRANDOM(-2, 2),
2016
					Material = "Neon",
2017
					Color = C3(1, 1, 1),
2018
					SoundID = nil,
2019
					SoundPitch = nil,
2020
					SoundVolume = nil
2021
				})
2022
			end
2023
			wait(1)
2024
			SHAKECAM(POS, 9999999999, 25, 25)
2025
			ApplyAoE(POS, 450)
2026
			WACKYEFFECT({
2027
				Time = 85,
2028
				EffectType = "Sphere",
2029
				Size = VT(120, 120, 120),
2030
				Size2 = VT(350, 350, 350),
2031
				Transparency = 0,
2032
				Transparency2 = 1,
2033
				CFrame = CF(POS),
2034
				MoveToPos = nil,
2035
				RotationX = 0,
2036
				RotationY = 0,
2037
				RotationZ = 0,
2038
				Material = "Neon",
2039
				Color = C3(1, 1, 1),
2040
				SoundID = nil,
2041
				SoundPitch = 1,
2042
				SoundVolume = 10
2043
			})
2044
			for i = 1, 20 do
2045
				WACKYEFFECT({
2046
					Time = 85,
2047
					EffectType = "Sphere",
2048
					Size = VT(120, 120, 120),
2049
					Size2 = VT(120, 120, 144) + VT(i * 3, i * 3, i * 3),
2050
					Transparency = 0.8,
2051
					Transparency2 = 1,
2052
					CFrame = CF(POS),
2053
					MoveToPos = nil,
2054
					RotationX = 0,
2055
					RotationY = 0,
2056
					RotationZ = 0,
2057
					Material = "Neon",
2058
					Color = C3(1, 1, 1),
2059
					SoundID = nil,
2060
					SoundPitch = 1,
2061
					SoundVolume = 10
2062
				})
2063
				WACKYEFFECT({
2064
					Time = 100,
2065
					EffectType = "Wave",
2066
					Size = VT(25, 2, 25),
2067
					Size2 = VT(400, 0, 400) * 1.2,
2068
					Transparency = 0,
2069
					Transparency2 = 1,
2070
					CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
2071
					MoveToPos = nil,
2072
					RotationX = 0,
2073
					RotationY = 0,
2074
					RotationZ = 0,
2075
					Material = "Neon",
2076
					Color = C3(1, 1, 1),
2077
					SoundID = nil,
2078
					SoundPitch = nil,
2079
					SoundVolume = nil
2080
				})
2081
			end
2082
			local HITFLOOR, HITPOS = Raycast(POS, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
2083
			for i = 1, 5 do
2084
				CreateSound(438666077, Effects, 15, 1 - i / 15, false)
2085
				WACKYEFFECT({
2086
					Time = 120,
2087
					EffectType = "Wave",
2088
					Size = VT(150, 2, 150),
2089
					Size2 = VT(300 + i * 170, 0, 300 + i * 170) * 1.2,
2090
					Transparency = 0,
2091
					Transparency2 = 1,
2092
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)),
2093
					MoveToPos = nil,
2094
					RotationX = 0,
2095
					RotationY = 0,
2096
					RotationZ = 0,
2097
					Material = "Neon",
2098
					Color = C3(1, 1, 1),
2099
					SoundID = nil,
2100
					SoundPitch = nil,
2101
					SoundVolume = nil
2102
				})
2103
			end
2104
		end))
2105
		for i = 0, 1, 0.1 / Animation_Speed do
2106
			Swait()
2107
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
2108
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2109
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2110
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2111
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2112
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2113
		end
2114
		ATTACK = false
2115
		Rooted = false
2116
	end))
2117
	for i = 1, 30 do
2118
		wait(0.01)
2119
		local POS = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(10, 150))
2120
		local HITFLOOR, HITPOS = Raycast(POS.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
2121
		if HITFLOOR then
2122
			ApplyAoE(HITPOS, 65, true)
2123
			local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
2124
			WACKYEFFECT({
2125
				Time = 25,
2126
				EffectType = "Sphere",
2127
				Size = VT(22, 22, 22),
2128
				Size2 = VT(85, 85, 85),
2129
				Transparency = 0,
2130
				Transparency2 = 1,
2131
				CFrame = CF(HITPOS),
2132
				MoveToPos = nil,
2133
				RotationX = 0,
2134
				RotationY = 0,
2135
				RotationZ = 0,
2136
				Material = "Neon",
2137
				Color = C3(1, 1, 1),
2138
				SoundID = BLASTS[MRANDOM(1, #BLASTS)],
2139
				SoundPitch = MRANDOM(9, 12) / 10,
2140
				SoundVolume = 10
2141
			})
2142
			for e = 1, 3 do
2143
				WACKYEFFECT({
2144
					EffectType = "Wave",
2145
					Size = VT(25, 0, 25),
2146
					Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
2147
					Transparency = 0,
2148
					Transparency2 = 1,
2149
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
2150
					MoveToPos = nil,
2151
					RotationX = 0,
2152
					RotationY = 3,
2153
					RotationZ = 0,
2154
					Material = "Neon",
2155
					Color = C3(1, 1, 1),
2156
					SoundID = nil,
2157
					SoundPitch = nil,
2158
					SoundVolume = nil
2159
				})
2160
				WACKYEFFECT({
2161
					Time = 35,
2162
					EffectType = "Sphere",
2163
					Size = VT(22, 45, 22),
2164
					Size2 = VT(25, 45 + e * 75, 25),
2165
					Transparency = 0,
2166
					Transparency2 = 1,
2167
					CFrame = CF(HITPOS) * TURN,
2168
					MoveToPos = nil,
2169
					RotationX = 0,
2170
					RotationY = 0,
2171
					RotationZ = 0,
2172
					Material = "Neon",
2173
					Color = C3(1, 1, 1),
2174
					SoundID = nil,
2175
					SoundPitch = MRANDOM(9, 12) / 10,
2176
					SoundVolume = 10
2177
				})
2178
			end
2179
		end
2180
	end
2181
	CHARGE = true
2182
end
2183
2184
function SpectralBanishing()
2185
	ATTACK = true
2186
	Rooted = false
2187
	chatfunc("If you desire to be a ghost...", 20)
2188
	for i = 0, 5, 0.1 / Animation_Speed do
2189
		Swait()
2190
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.25 / Animation_Speed)
2191
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-45 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.25 / Animation_Speed)
2192
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
2193
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
2194
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2195
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2196
	end
2197
	chatfunc("Then move on to the afterlife!", 6)
2198
	CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
2199
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
2200
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
2201
	local RayHit, Way = CastProperRay(GunPoint.Position, CF(GunPoint.Position) * CF(0, 1500, 0).p, 1500, Character)
2202
	local distance = (GunPoint.Position - Way).magnitude
2203
	for i = 1, 5 do
2204
		local laser = Instance.new("Part", Effects)
2205
		laser.Transparency = 0
2206
		laser.CanCollide = false
2207
		laser.Anchored = true
2208
		laser.Color = C3(1, 0, 0)
2209
		laser.Material = "Neon"
2210
		laser.formFactor = Enum.FormFactor.Custom
2211
		laser.Size = Vector3.new(0.15, 0.15, distance)
2212
		laser.CFrame = CFrame.new(GunPoint.Position, Way) * CFrame.new(0, 0, -distance / 2)
2213
		table.insert(Effects2, {
2214
			laser,
2215
			"Disappear",
2216
			0.1,
2217
			1,
2218
			1,
2219
			1,
2220
			2
2221
		})
2222
	end
2223
	coroutine.resume(coroutine.create(function()
2224
		Swait(15)
2225
		local FILTER = IT("ColorCorrectionEffect", game.Lighting)
2226
		for i = 1, 25 do
2227
			Swait()
2228
			FILTER.TintColor = C3(1, 1 - i / 50, 1 - i / 50)
2229
		end
2230
		local GAME = game.Players:GetChildren()
2231
		for PLAYER = 1, #GAME do
2232
			do
2233
				local PLAY = GAME[PLAYER]
2234
				if PLAY.Character ~= nil and PLAY.Character.Parent ~= workspace then
2235
					PLAY.Character.Parent = nil
2236
					coroutine.resume(coroutine.create(function()
2237
						if PLAY.Character:FindFirstChild("HumanoidRootPart") then
2238
							PLAY.Character.Parent = workspace
2239
							local Value = IT("BoolValue", Delete)
2240
							Value.Name = PLAY.Name
2241
						end
2242
					end))
2243
				end
2244
			end
2245
		end
2246
		for i = 1, 25 do
2247
			Swait()
2248
			FILTER.TintColor = C3(1, 0.4980392156862745 + i / 50, 0.4980392156862745 + i / 50)
2249
		end
2250
	end))
2251
	for i = 0, 2, 0.1 / Animation_Speed do
2252
		Swait()
2253
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.25 / Animation_Speed)
2254
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-45 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.25 / Animation_Speed)
2255
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(195), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
2256
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
2257
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2258
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2259
	end
2260
	ATTACK = false
2261
	Rooted = false
2262
end
2263
2264
function Madness()
2265
	ATTACK = true
2266
	Rooted = false
2267
	local GYRO = IT("BodyGyro",RootPart)
2268
	GYRO.D = 750
2269
	GYRO.P = 20000
2270
	GYRO.MaxTorque = VT(0,40000000,0)
2271
	local LOCKED = true
2272
	local SHOT = false
2273
	coroutine.resume(coroutine.create(function()
2274
		for i=0, 1, 0.1 / Animation_Speed do
2275
			GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
2276
			Swait()
2277
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2278
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2279
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2280
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2281
		end
2282
		LOCKED = false
2283
		SHOT = true
2284
		repeat
2285
			GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
2286
			Swait()
2287
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2288
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2289
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2290
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2291
		until HOLD == false and SHOT == false
2292
		for i=0, 0.3, 0.1 / Animation_Speed do
2293
			Swait()
2294
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2295
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2296
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2297
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2298
		end
2299
		GYRO:remove()
2300
		ATTACK = false
2301
		Rooted = false
2302
	end))
2303
	repeat wait() until LOCKED == false
2304
	repeat
2305
		SHOT = true
2306
		wait(0.2)
2307
		SHOT = false
2308
		local BULLET = Lightning({Material = "Glass", FadeIn = true, Color = C3(0,0,0), Start = Hole.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
2309
		local HIT = BULLET.Hit
2310
		local HITPOS = BULLET.End
2311
		if HIT then
2312
			if HIT.Parent:FindFirstChildOfClass("Humanoid") then
2313
				Banish(HIT.Parent)
2314
			end
2315
		end
2316
		WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = C3(1,0,0), SoundID = 304999618, SoundPitch = 2, SoundVolume = 1})
2317
		WACKYEFFECT({Time = 15, EffectType = "Skull", Size = VT(0,0,0), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 2})
2318
		WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(1,1.2,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1, SoundVolume = 2})
2319
		WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(2,1,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 145080998, SoundPitch = 1, SoundVolume = 2})
2320
						WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
2321
						WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
2322
						WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
2323
						WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
2324
						WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
2325
	until HOLD == false
2326
end
2327
2328
function EMOTE()
2329
	ATTACK = true
2330
	Rooted = false
2331
	local LOOP = 0
2332
	for i=0, 0.1, 0.1 / Animation_Speed do
2333
		Swait()
2334
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2335
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2336
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2337
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(5-3 * COS(SINE / 6)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2338
	end
2339
	for i=0, 3, 0.1 / Animation_Speed do
2340
		Swait()
2341
		LOOP = LOOP + 1
2342
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2343
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2344
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2345
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.8, 0.4) * ANGLES(RAD(170), RAD(0), RAD(-25 - 25 * SIN(LOOP / 5))) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2346
	end
2347
	for i=0, 0.1, 0.1 / Animation_Speed do
2348
		Swait()
2349
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2350
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
2351
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2352
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(5-3 * COS(SINE / 6)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2353
	end
2354
	ATTACK = false
2355
	Rooted = false
2356
end
2357
2358
function Kill(Char)
2359
	local NewCharacter = IT("Model",Effects)
2360
	NewCharacter.Name = "Ow im ded ;-;"
2361
	for _, c in pairs(Char:GetDescendants()) do
2362
		if c:IsA("BasePart") and c.Transparency == 0 then
2363
			if c.Parent == Char then
2364
				getbloody(c,5)
2365
			end
2366
			c:BreakJoints()
2367
			c.Material = "Glass"
2368
			c.Color = C3(0.5,0,0)
2369
			c.CanCollide = true
2370
			c.Transparency = 0.3
2371
			if c:FindFirstChildOfClass("SpecialMesh") then
2372
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
2373
			end
2374
			if c.Name == "Head" then
2375
				c:ClearAllChildren()
2376
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
2377
			end
2378
			if c.ClassName == "MeshPart" then
2379
				c.TextureID = ""
2380
			end
2381
			if c:FindFirstChildOfClass("BodyPosition") then
2382
				c:FindFirstChildOfClass("BodyPosition"):remove()
2383
			end
2384
			if c:FindFirstChildOfClass("ParticleEmitter") then
2385
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
2386
			end
2387
			c.Parent = NewCharacter
2388
			c.Name = "DeadPart"
2389
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
2390
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
2391
		end
2392
	end
2393
	Char:remove()
2394
	Debris:AddItem(NewCharacter,5)
2395
end
2396
2397
function Taunt()
2398
	ATTACK = true
2399
	Rooted = true
2400
	local TAUNT = CreateSound(907333294, Torso, 7, 1, false)
2401
	repeat
2402
		Swait()
2403
		TAUNT.Parent = Torso
2404
		TAUNT.Playing = true
2405
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2406
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(-0.02, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
2407
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2408
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2409
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2410
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2411
	until TAUNT.TimePosition >= 1.25
2412
	for i=0, 1.6, 0.1 / Animation_Speed do
2413
		Swait()
2414
		TAUNT.Parent = Torso
2415
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(5)), 1 / Animation_Speed)
2416
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
2417
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2418
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2419
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2420
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2421
	end
2422
	ATTACK = false
2423
	Rooted = false
2424
end
2425
2426
function oofBeam()
2427
	ATTACK = true
2428
	Rooted = false
2429
    VALUE2 = true
2430
	local GYRO = IT("BodyGyro", RootPart)
2431
	GYRO.D = 20
2432
	GYRO.P = 4000
2433
	GYRO.MaxTorque = VT(0, 40000, 0)
2434
	local POS = RootPart.Position + VT(0, 25, 0)
2435
	CreateSound("1371567007", Effects, 35, MRANDOM(9, 10) / 10)
2436
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2437
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2438
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2439
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2440
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2441
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2442
	coroutine.resume(coroutine.create(function()
2443
		local E = 0
2444
		repeat
2445
			E = E + 5
2446
			GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
2447
			Swait()
2448
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2449
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2450
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2451
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2452
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2453
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2454
		until ATTACK == false
2455
		GYRO:remove()
2456
	end))
2457
	for i = 1, 50 do
2458
		Swait()
2459
	end
2460
	for i = 1, 25 do
2461
		Swait()
2462
		WACKYEFFECT({
2463
			Time = 15,
2464
			EffectType = "Skull",
2465
			Size = VT(4, 4, 4),
2466
			Size2 = VT(0, 0, 0),
2467
			Transparency = 1,
2468
			Transparency2 = 0,
2469
			CFrame = CF(Eon.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, 35),
2470
			MoveToPos = Eon.Position,
2471
			RotationX = 0,
2472
			RotationY = 0,
2473
			RotationZ = 0,
2474
			Material = "Neon",
2475
			Color = C3(1, 0, 0),
2476
			SoundID = nil,
2477
			SoundPitch = nil,
2478
			SoundVolume = nil
2479
		})
2480
	end
2481
	local LOOP = 0
2482
	local BEAMO = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Lime green"), "Beamo", VT(0,0,0))
2483
	MakeForm(BEAMO, "Ball")
2484
	local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Really red"), "Beam", VT(0, 0, 0), true)
2485
	MakeForm(BEAM, "Cyl")
2486
	repeat
2487
		local DISTANCE = (Eon.Position - Mouse.Hit.p).Magnitude
2488
		if DISTANCE < 2000 then
2489
			BEAMO.Size = VT(3 + 1 * COS(SINE / 4),  3 + 1 * COS(SINE / 4), 3 + 1 * COS(SINE / 4))
2490
	        BEAMO.CFrame = CF(Eon.Position)
2491
			BEAM.Size = VT(2 + 1 * COS(SINE / 4), DISTANCE, 2 + 1 * COS(SINE / 4))
2492
			BEAM.CFrame = CF(Eon.Position, Mouse.Hit.p) * CF(0, 0, -DISTANCE / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
2493
			ApplyAoE(Mouse.Hit.p, 14,true,false)
2494
			WACKYEFFECT({
2495
				Time = 35,
2496
				EffectType = "Sphere",
2497
				Size = VT(6 + 2 * COS(SINE / 4), 6 + 2 * COS(SINE / 4), 6 + 2 * COS(SINE / 4)) * 2,
2498
				Size2 = VT(5, 75, 5),
2499
				Transparency = 0,
2500
				Transparency2 = 1,
2501
				CFrame = CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
2502
				MoveToPos = nil,
2503
				RotationX = 0,
2504
				RotationY = 0,
2505
				RotationZ = 0,
2506
				Material = "Neon",
2507
				Color = C3(1, 0, 0),
2508
				SoundID = nil,
2509
				SoundPitch = MRANDOM(9, 12) / 10,
2510
				SoundVolume = 10
2511
			})
2512
		WACKYEFFECT({TIME = 25, EffectType = "Sphere", Size = VT(1.5,1.5,1.5), Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = Eon.CFrame, MoveToPos = Eon.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-6).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2513
			Swait()
2514
			LOOP = LOOP + 1
2515
		end
2516
	until KEYHOLD == false and LOOP >= 35 or DISTANCE >= 2000
2517
	coroutine.resume(coroutine.create(function()
2518
		for i = 1, 15 do
2519
			Swait()
2520
			BEAM.Size = BEAM.Size - VT(0.1, 0, 0.1)
2521
			BEAMO.Size = BEAMO.Size - VT(0.1, 0.1, 0.1)
2522
			BEAM.Transparency = BEAM.Transparency + 0.06666666666666667
2523
			BEAMO.Transparency = BEAMO.Transparency + 0.06666666666666667
2524
end
2525
		BEAM:remove()
2526
		BEAMO:remove()
2527
	end))
2528
	ATTACK = false
2529
	Rooted = false
2530
    VALUE2 = false
2531
end
2532
2533
function TakeOnMe()
2534
	Speed = 5
2535
	local MEME = CreateSound(0, Effects, 2, 1, false)
2536
	ATTACK = true
2537
	Rooted = false
2538
	local DANCE = true
2539
	local KEY = Mouse.KeyDown:connect(function(NEWKEY)
2540
		if NEWKEY == "p" then
2541
			DANCE = false
2542
		end
2543
	end)
2544
	PLAYSONG = false
2545
	while true do
2546
		for i = 1, 15 do
2547
			Swait()
2548
			MEME.Parent = Effects
2549
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.4+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2550
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2551
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2552
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2553
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2554
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, 0, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2555
		end
2556
		if DANCE == false then
2557
			break
2558
		end
2559
		for i = 1, 15 do
2560
			Swait()
2561
			MEME.Parent = Effects
2562
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.4+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2563
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2564
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2565
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(10)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2566
			RightHip.C0 = Clerp(RightHip.C0, CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2567
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2568
		end
2569
	end
2570
	PLAYSONG = true
2571
	KEY:Disconnect()
2572
	MEME:remove()
2573
	Speed = 25
2574
	ATTACK = false
2575
	Rooted = false
2576
end
2577
2578
function Banisher_Bullet()
2579
	ATTACK = true
2580
	Rooted = false
2581
	for i=0, 0.05, 0.1 / Animation_Speed do
2582
		Swait()
2583
		turnto(Mouse.Hit.p)
2584
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2585
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2586
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2587
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2588
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2589
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2590
	end
2591
	repeat
2592
		for i=0, 0.05, 0.1 / Animation_Speed do
2593
			Swait()
2594
			turnto(Mouse.Hit.p)
2595
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2596
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2597
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2598
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2599
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2600
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2601
		end
2602
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
2603
		SpawnTrail(Hole.Position,POS)
2604
		if HIT ~= nil then
2605
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2606
				Banish(HIT.Parent)
2607
			end
2608
		end
2609
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,7.5,6), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2610
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2611
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2612
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2613
		for i=0, 0.05, 0.1 / Animation_Speed do
2614
			Swait()
2615
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2616
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
2617
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2618
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2619
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2620
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2621
		end
2622
	until KEYHOLD == false
2623
	ATTACK = false
2624
	Rooted = false
2625
end
2626
function Execute()
2627
	ATTACK = true
2628
	Rooted = false
2629
	local Part = CreatePart(3, Character, "Neon", 0, 0, "Mid gray", "Part", VT(0,1,4),false)
2630
	Part.Color = C3(0,0,0)
2631
	MakeForm(Part,"Wedge")
2632
	Part.CanCollide = true
2633
	CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(135)) *CF(0, 0.5, 0), CF(0, 0, 0))
2634
	for i=0, 1, 0.1 / Animation_Speed do
2635
		Swait()
2636
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
2637
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
2638
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2639
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2640
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2641
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2642
	end
2643
	CreateSound(541909867, RightBarrel, 7, 1, false)
2644
	local TOCH = Part.Touched:Connect(function(hit)
2645
		if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
2646
			Banish(hit.Parent)
2647
		end
2648
	end)
2649
	for i=0, 0.35, 0.1 / Animation_Speed do
2650
		Swait()
2651
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
2652
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
2653
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2654
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2655
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2656
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2657
	end
2658
	TOCH:disconnect()
2659
	for i=0, 0.35, 0.1 / Animation_Speed do
2660
		Swait()
2661
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
2662
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-55)), 1 / Animation_Speed)
2663
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2664
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2665
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2666
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2667
	end
2668
	Part:remove()
2669
	ATTACK = false
2670
	Rooted = false
2671
end
2672
function Banisher_Burn()
2673
	ATTACK = true
2674
	Rooted = true
2675
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
2676
	for i=0, 1, 0.1 / Animation_Speed do
2677
		Swait()
2678
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2679
		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)
2680
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2681
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2682
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2683
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2684
	end	
2685
	coroutine.resume(coroutine.create(function()
2686
		local POS = Mouse.Hit.p
2687
		local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Lime green", "Strike", VT(0,2000,0))
2688
		MakeForm(RAY,"Cyl")
2689
		local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Strike", VT(0,0,0))
2690
		MakeForm(SPHERE,"Ball")
2691
		local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "New Yeller", "Strike", VT(0,0,0))
2692
		MakeForm(SHIELD,"Ball")
2693
		SHIELD.CFrame = CF(POS)
2694
		RAY.CFrame = CF(POS)
2695
		SPHERE.CFrame = CF(POS)
2696
		CreateSound(440145570, SPHERE, 10, 0.8, false)
2697
		CreateSound(415700134, SPHERE, 10, 0.8, false)
2698
		for i = 1, 200 do
2699
			Swait()
2700
			WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(0,255,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2701
			RAY.Size = RAY.Size + VT(0.05,0,0.05)
2702
			SPHERE.Size = SPHERE.Size + VT(2,2,2)
2703
			SHIELD.Size = SPHERE.Size + VT(3,3,3)
2704
			ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
2705
		end	
2706
		for i = 1, 45 do
2707
			Swait()
2708
			RAY.Transparency = RAY.Transparency + 1/45
2709
			SPHERE.Transparency = RAY.Transparency 
2710
			SHIELD.Transparency = SPHERE.Transparency + 1/45
2711
		end
2712
		RAY:remove()
2713
		SHIELD:remove()
2714
		SPHERE:remove()
2715
	end))
2716
	for i=0, 1, 0.1 / Animation_Speed do
2717
		Swait()
2718
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
2719
		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)
2720
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2721
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2722
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2723
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2724
	end
2725
	ATTACK = false
2726
	Rooted = false
2727
end
2728
function Teleport()
2729
	ATTACK = true
2730
	Rooted = false
2731
	for i=0, 0.5, 0.1 / Animation_Speed do
2732
		Swait()
2733
		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)
2734
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-25), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
2735
	end
2736
	for e = 1, #BODY do
2737
		if BODY[e] ~= nil then
2738
			local STUFF = BODY[e]
2739
			local PART = STUFF[1]
2740
			if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
2741
				local PRT = PART:Clone()
2742
				PRT.Anchored = true
2743
				PRT.CanCollide = false
2744
				PRT.Material = "Neon"
2745
				PRT.Color = C3(255,100,255)
2746
				PRT.Name = "WarpEffect"
2747
				PRT.Parent = Effects
2748
				PRT.CFrame = PART.CFrame
2749
				PRT:BreakJoints()
2750
				if PRT:FindFirstChildOfClass("Sound") then
2751
					PRT:FindFirstChildOfClass("Sound"):remove()
2752
				end
2753
				if PRT:FindFirstChildOfClass("Decal") then
2754
					PRT:FindFirstChildOfClass("Decal"):remove()
2755
				end
2756
				coroutine.resume(coroutine.create(function()
2757
					for i = 1, 100 do
2758
						Swait()
2759
						PRT.Transparency = PRT.Transparency + 1/100
2760
					end
2761
					PRT:remove()
2762
				end))
2763
			end
2764
		end
2765
	end
2766
	CreateSound(217767125, Torso, 10, 1)
2767
	local POS = RootPart.Orientation
2768
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
2769
	RootPart.Orientation = POS
2770
	RootJoint.Parent = RootPart
2771
	for i=0, 0.5, 0.1 / Animation_Speed do
2772
		Swait()
2773
		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)
2774
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-15), RAD(12)) * ANGLES(RAD(175 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
2775
	end
2776
	for i=0, 0.1, 0.1 / Animation_Speed do
2777
		Swait()
2778
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
2779
	end
2780
	ATTACK = false
2781
	Rooted = false
2782
end
2783
function BanishmentBeam()
2784
	ATTACK = true
2785
	Rooted = false
2786
	local GYRO = IT("BodyGyro",RootPart)
2787
	GYRO.D = 100
2788
	GYRO.P = 2000
2789
	GYRO.MaxTorque = VT(0,4000000,0)
2790
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
2791
	CreateSound("93724183", RightArm, 5, 1, false)
2792
	for i=1, 35 do
2793
		Swait()
2794
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
2795
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
2796
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
2797
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
2798
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2799
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2800
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2801
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2802
	end
2803
	local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Lime green", "Lazer", VT(0,0,0))
2804
	local LOOP = CreateSound("415700134", RightArm, 5, 1, false)
2805
	local TOCH = BEAM.Touched:Connect(function(hit)
2806
		if hit.Anchored == false and hit.Parent ~= Head and  hit.Parent ~= Character and hit.Parent ~= Effects then
2807
			Kill(hit)
2808
		end
2809
	end)
2810
	local I = 0
2811
	repeat
2812
		Swait()
2813
		I = I + 1
2814
		if I <= 10 then
2815
			BEAM.Transparency = BEAM.Transparency - 0.1
2816
		end
2817
		local STARTPOS = RightArm.CFrame*CF(0,-4,0).p
2818
		local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
2819
		local DISTANCE = (STARTPOS - ENDPOS).Magnitude
2820
		BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(0),RAD(0),RAD(I*5))
2821
		BEAM.Size = VT(2,2,DISTANCE)
2822
		WACKYEFFECT({Time = 5, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = CF(ENDPOS)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2823
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-4,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
2824
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
2825
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
2826
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
2827
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
2828
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2829
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2830
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2831
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2832
		if ENDHIT ~= nil then
2833
			if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
2834
				Banish(ENDHIT)
2835
			end
2836
		end
2837
	until LOOP.Playing == false
2838
	GYRO:remove()
2839
	BEAM:remove()
2840
	ATTACK = false
2841
	Rooted = false
2842
end
2843
function Deathbound()
2844
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
2845
	ATTACK = true
2846
	Rooted = true
2847
	for i=0, 1, 0.1 / Animation_Speed do
2848
		Swait()
2849
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2850
		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)
2851
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2852
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2853
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2854
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2855
	end
2856
	local DONE = false
2857
	local GATE = nil
2858
	local GATESPIN = true
2859
	coroutine.resume(coroutine.create(function()
2860
		repeat
2861
			Swait()
2862
			if GATE ~= nil then
2863
				GATE.CFrame = GATE.CFrame * ANGLES(RAD(0), RAD(-3), RAD(0))
2864
			end
2865
		until GATESPIN == false
2866
	end))
2867
	coroutine.resume(coroutine.create(function()
2868
		repeat
2869
			Swait()
2870
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.2 - 0.25 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
2871
			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)
2872
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2873
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2874
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2875
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2876
		until DONE == true
2877
		Swait(50)
2878
		for i = 1, 35 do
2879
			Swait(4)
2880
			local FIRED = false
2881
			local CHILDREN = workspace:GetDescendants()
2882
			for index, CHILD in pairs(CHILDREN) do
2883
				if CHILD.ClassName == "Model" and CHILD ~= Character then
2884
					local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2885
					if HUM then
2886
						local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2887
						if TORSO then
2888
							if (TORSO.Position - GATE.Position).Magnitude <= GATE.Size.X/2.5 + TORSO.Size.Magnitude/5 then
2889
								local HITFLOOR,HITPOS = Raycast(TORSO.Position, (CF(TORSO.Position, TORSO.Position + VT(0, -1, 0))).lookVector, 15, Character)
2890
								local CFRAME = CF(HITPOS)*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
2891
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = 213603013, SoundPitch = 1.5, SoundVolume = 6})
2892
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2893
								SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)		
2894
								Banish(CHILD)
2895
								FIRED = true
2896
								break
2897
							end
2898
						end
2899
					end
2900
				end
2901
			end
2902
			if FIRED == false then
2903
				local CFRAME = GATE.CFrame*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,math.ceil(GATE.Size.X/2.5)))*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
2904
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = 213603013, SoundPitch = 1.5, SoundVolume = 6})
2905
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2906
				SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)
2907
				local HITBOD = Raycast(CFRAME.p, (CF(CFRAME.p, CFRAME.p + VT(0, 1, 0))).lookVector, 1000, Character)
2908
				if HITBOD ~= nil then
2909
					if HITBOD.Parent:FindFirstChildOfClass("Humanoid") then
2910
						Kill(HITBOD.Parent)
2911
					end
2912
				end
2913
			end
2914
		end
2915
		for i = 1, 45 do
2916
			Swait()
2917
			GATE.Size = GATE.Size - VT(3,0,3)
2918
		end
2919
		GATESPIN = false
2920
		GATE:remove()
2921
	end))
2922
	Swait(15)
2923
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
2924
	GATE = CreatePart(3, Effects, "Neon", 0, 1, "Teal", "Gate", VT(0,0,0))
2925
	local DECAL = IT("Decal",GATE)
2926
	DECAL.Texture = "http://www.roblox.com/asset/?id=647661410"
2927
	DECAL.Face = "Top"
2928
	GATE.CFrame = CF(HITPOS)
2929
	CreateSound(160772554, GATE, 7, 1.3, false)
2930
	for i = 1, 45 do
2931
		Swait()
2932
		GATE.Size = GATE.Size + VT(3,0,3)
2933
	end
2934
	CreateSound(213603013, RightHole, 7, 1, false)
2935
	CreateSound(213603013, LeftHole, 7, 1, false)
2936
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2937
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2938
	ATTACK = false
2939
	Rooted = false
2940
	DONE = true
2941
end
2942
2943
2944
--//=================================\\
2945
--||	  ASSIGN THINGS TO KEYS
2946
--\\=================================//
2947
2948
function MouseDown(Mouse)
2949
	if ATTACK == false then
2950
	                EMOTE()
2951
	end
2952
end
2953
2954
function MouseUp(Mouse)
2955
HOLD = false
2956
end
2957
2958
function KeyDown(Key)
2959
	KEYHOLD = true
2960
	if Key == "z" and ATTACK == false then
2961
		Banisher_Bullet()
2962
	end
2963
2964
	if Key == "b" and ATTACK == false then
2965
                 Banisher_Burn()
2966
	end
2967
2968
	if Key == "c" and ATTACK == false then
2969
                 BanishmentBeam()
2970
	end
2971
2972
	if Key == "v" and ATTACK == false then
2973
                 Teleport()
2974
	end
2975
2976
	if Key == "t" and ATTACK == false then
2977
                 Taunt()
2978
	end
2979
2980
	if Key == "e" and ATTACK == false then
2981
                 Madness()
2982
	end	
2983
2984
	if Key == "j" and ATTACK == false then
2985
                 Nuke()
2986
	end	
2987
2988
	if Key == "y" and ATTACK == false then
2989
                 oofBeam()
2990
	end
2991
2992
	if Key == "u" and ATTACK == false then
2993
		Absoluteum()
2994
	end
2995
2996
	if Key == "g" and ATTACK == false then
2997
		               chatfunc(UnBanishTaunts[MRANDOM(1,#UnBanishTaunts)])
2998
			       TOBANISH = {}
2999
	end
3000
3001
	if Key == "p" and ATTACK == false then
3002
		TakeOnMe()
3003
	end
3004
3005
	if Key == "x" and ATTACK == false then
3006
                 Deathbound()
3007
	end
3008
end
3009
3010
function KeyUp(Key)
3011
	KEYHOLD = false
3012
end
3013
3014
	Mouse.Button1Down:connect(function(NEWKEY)
3015
		MouseDown(NEWKEY)
3016
	end)
3017
	Mouse.Button1Up:connect(function(NEWKEY)
3018
		MouseUp(NEWKEY)
3019
	end)
3020
	Mouse.KeyDown:connect(function(NEWKEY)
3021
		KeyDown(NEWKEY)
3022
	end)
3023
	Mouse.KeyUp:connect(function(NEWKEY)
3024
		KeyUp(NEWKEY)
3025
	end)
3026
3027
--//=================================\\
3028
--\\=================================//
3029
3030
3031
function unanchor()
3032
	if UNANCHOR == true then
3033
		g = Character:GetChildren()
3034
		for i = 1, #g do
3035
			if g[i].ClassName == "Part" then
3036
				g[i].Anchored = false
3037
			end
3038
		end
3039
	end
3040
end
3041
3042
3043
--//=================================\\
3044
--||	WRAP THE WHOLE SCRIPT UP
3045
--\\=================================//
3046
3047
Humanoid.Changed:connect(function(Jump)
3048
	if Jump == "Jump" and (Disable_Jump == true) then
3049
		Humanoid.Jump = false
3050
	end
3051
end)
3052
3053
local CONNECT = nil
3054
3055
while true do
3056
	Swait()
3057
	ANIMATE.Parent = nil
3058
	if Character:FindFirstChildOfClass("Humanoid") == nil then
3059
		Humanoid = IT("Humanoid",Character)
3060
	end
3061
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
3062
	    v:Stop();
3063
	end
3064
	SINE = SINE + CHANGE
3065
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
3066
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
3067
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
3068
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 26)
3069
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
3070
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / 3)
3071
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / 3)
3072
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / 3)
3073
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / 3)
3074
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
3075
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
3076
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
3077
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
3078
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
3079
	end
3080
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
3081
		ANIM = "Jump"
3082
		if ATTACK == false then
3083
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3084
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3085
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3086
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3087
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
3088
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3089
	    end
3090
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
3091
		ANIM = "Fall"
3092
		if ATTACK == false then
3093
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3094
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3095
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3096
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3097
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3098
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
3099
		end
3100
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
3101
		ANIM = "Idle"
3102
		if ATTACK == false then
3103
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 0.15 / 3)
3104
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 4.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 0.15 / 3)
3105
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(75), RAD(45 + 2 * SIN(SINE / 12)), RAD(-25))* RIGHTSHOULDERC0, 0.15 / 3)
3106
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / 3)
3107
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1.1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / 3)
3108
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / 3)
3109
		end
3110
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
3111
		ANIM = "Walk"
3112
		if ATTACK == false then
3113
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / 3)
3114
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / 3)
3115
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.1, -0.4) * ANGLES(RAD(150), RAD(0), RAD(0))* RIGHTSHOULDERC0, 0.15 / 3)
3116
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / 3)
3117
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / 3)
3118
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / 3)
3119
		end
3120
	end
3121
	unanchor()
3122
	Humanoid.MaxHealth = "inf"
3123
	Humanoid.Health = "inf"
3124
	if Rooted == false then
3125
		Disable_Jump = false
3126
		Humanoid.WalkSpeed = Speed
3127
	elseif Rooted == true then
3128
		Disable_Jump = true
3129
		Humanoid.WalkSpeed = 0
3130
	end
3131
refit()
3132
	sick.Parent = Torso
3133
	sick:resume()
3134
	sick.Volume = 5
3135
	sick.Pitch = 1
3136
	sick.SoundId = "rbxassetid://0"
3137
	sick.Name = "BanishV3Music"
3138
end
3139
3140
--//=================================\\
3141
--\\=================================//
3142
3143
3144
3145
3146
3147
--//====================================================\\--
3148
--||			  		 END OF SCRIPT
3149
--\\====================================================//--