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