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