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