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