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