View difference between Paste ID: XLduacu8 and aMxywafF
SHOW: | | - or go back to the newest paste.
1
script.Name = "Lord Banisher V5"
2
--//====================================================\\--
3
--||			   CREATED BY SHACKLUSTER
4
--\\====================================================//--
5
--//====================================================\\--
6
--||			   EDITED BY ERICDESOUZA
7
--\\====================================================//--
8
9
10
11
 if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
12
do
13
    script.Parent = owner.Character
14
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
15
    local function NewFakeEvent()
16
        local Bind = Instance.new("BindableEvent")
17
        local Fake;Fake = {Connections = {},
18
        fakeEvent=true;
19
        Connect=function(self,Func)
20
            Bind.Event:connect(Func)
21
            self.Connections[Bind] = true
22
            return setmetatable({Connected = true},{
23
            __index = function (self,Index)
24
                if Index:lower() == "disconnect" then
25
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
26
                end
27
                return Fake[Index]
28
            end;
29
            __tostring = function() return "Connection" end;
30
        })
31
        end}
32
        Fake.connect = Fake.Connect;return Fake;
33
    end
34
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
35
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
36
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
37
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
38
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
39
    local function TriggerEvent(self,Event,...)
40
        local Trigger = Mouse[Event]
41
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
42
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
43
        end
44
    end
45
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
46
    Event.OnServerEvent:Connect(function(FiredBy,Input)
47
        if FiredBy.Name ~= owner.Name then return end
48
        if Input.MouseEvent then
49
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
50
        else
51
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
52
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
53
            for _,Action in pairs(ContextActionService.Actions) do
54
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
55
            end
56
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
57
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
58
        end
59
    end)
60
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
61
    Event.Parent = NLS([[
62
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
63
        local Input = function(Input,gameProcessedEvent)
64
            if gameProcessedEvent then return end
65
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
66
        end
67
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
68
        local Hit,Target
69
        while wait(1/30) do
70
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
71
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
72
            end
73
        end
74
    ]],owner.Character)
75
end
76
RealGame = game;game = setmetatable({},{
77
    __index = function (self,Index)
78
        local Sandbox = function (Thing)
79
            if Thing:IsA("Player") then
80
                local RealPlayer = Thing
81
                return setmetatable({},{
82
                    __index = function (self,Index)
83
                        local Type = type(RealPlayer[Index])
84
                        if Type == "function" then
85
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
86
                                return function (self)return InternalData["Mouse"] end
87
                            end
88
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
89
                        end
90
                        return RealPlayer[Index]
91
                    end;
92
                    __tostring = function(self) return RealPlayer.Name end
93
                })
94
            end
95
        end
96
        if RealGame[Index] then
97
            local Type = type(RealGame[Index])
98
            if Type == "function" then
99
                if Index:lower() == "getservice" or Index:lower() == "service" then
100
                    return function (self,Service)
101
                        local FakeServices = {
102
                            ["players"] = function()
103
                                return setmetatable({},{
104
                                    __index = function (self2,Index2)
105
                                        local RealService = RealGame:GetService(Service)
106
                                        local Type2 = type(Index2)
107
                                        if Type2 == "function" then
108
                                            return function (self,...) return RealService[Index2](RealService,...)end
109
                                        else
110
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
111
                                            return RealService[Index2]
112
                                        end
113
                                    end;
114
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
115
                                })
116
                            end;
117
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
118
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
119
                            ["runservice"] = function()
120
                                return setmetatable({},{
121
                                    __index = function(self2,Index2)
122
                                        local RealService = RealGame:GetService(Service)
123
                                        local Type2 = type(Index2)
124
                                        if Type2 == "function" then
125
                                            return function (self,...) return RealService[Index2](RealService,...) end
126
                                        else
127
                                            local RunServices = {
128
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
129
                                                ["renderstepped"] = function() return RealService["Stepped"] end
130
                                            }
131
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
132
                                            return RealService[Index2]
133
                                        end
134
                                    end
135
                                })
136
                            end
137
                        }
138
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
139
                        return RealGame:GetService(Service)
140
                    end
141
                end
142
                return function (self,...) return RealGame[Index](RealGame,...) end
143
            else
144
                if game:GetService(Index) then return game:GetService(Index) end
145
                return RealGame[Index]
146
            end
147
        end
148
        return nil
149
    end
150
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
151
152
153
--TOBANISH = {} = unbanish player
154
155
script:ClearAllChildren()
156
wait(0.2)
157
158
Player = game:GetService("Players").LocalPlayer
159
PlayerGui = Player.PlayerGui
160
Cam = workspace.CurrentCamera
161
Backpack = Player.Backpack
162
Character = Player.Character
163
Humanoid = Character.Humanoid
164
Mouse = Player:GetMouse()
165
RootPart = Character["HumanoidRootPart"]
166
Torso = Character["Torso"]
167
Head = Character["Head"]
168
RightArm = Character["Right Arm"]
169
LeftArm = Character["Left Arm"]
170
RightLeg = Character["Right Leg"]
171
LeftLeg = Character["Left Leg"]
172
RootJoint = RootPart["RootJoint"]
173
Neck = Torso["Neck"]
174
RightShoulder = Torso["Right Shoulder"]
175
LeftShoulder = Torso["Left Shoulder"]
176
RightHip = Torso["Right Hip"]
177
LeftHip = Torso["Left Hip"]
178
local TIME = 0
179
local sick = Instance.new("Sound",Torso)
180
181
IT = Instance.new
182
CF = CFrame.new
183
VT = Vector3.new
184
RAD = math.rad
185
C3 = Color3.new
186
UD2 = UDim2.new
187
BRICKC = BrickColor.new
188
ANGLES = CFrame.Angles
189
EULER = CFrame.fromEulerAnglesXYZ
190
COS = math.cos
191
ACOS = math.acos
192
SIN = math.sin
193
ASIN = math.asin
194
ABS = math.abs
195
MRANDOM = math.random
196
FLOOR = math.floor
197
198
--//=================================\\
199
--|| 	      USEFUL VALUES
200
--\\=================================//
201
202
Animation_Speed = 3
203
local FORCERESET = false
204
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
205
local Speed = 16
206
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
207
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
208
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
209
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
210
local DAMAGEMULTIPLIER = 1
211
local ANIM = "Idle"
212
local ATTACK = false
213
local EQUIPPED = false
214
local HOLD = false
215
local COMBO = 1
216
local Rooted = false
217
local SINE = 0
218
local KEYHOLD = false
219
local CHANGE = 2 / Animation_Speed
220
local WALKINGANIM = false
221
local VALUE1 = false
222
local VALUE2 = false
223
local WALKINGANIM = false
224
local WALK = 0
225
local REGENRATE = 1
226
local FULLREGEN = false
227
local POSEIDON = false
228
local EXPLOSIONSMALLSOUND = 439342426
229
local EXPLOSIONMEDIUMSOUND = 605005842
230
local EXPLOSIONLARGESOUND = 565538688
231
local CHARGE = 278641993
232
local POSEIDONSOUND = 374289727
233
local FIREBALLSOUND = 414517770
234
local BURNSOUND = 565777213
235
local FIREFIELD = false
236
local SEARING = false
237
local BODYPOS = nil
238
local GYRO = nil
239
local ROBLOXIDLEANIMATION = IT("Animation")
240
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
241
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
242
--ROBLOXIDLEANIMATION.Parent = Humanoid
243
local WEAPONGUI = IT("ScreenGui", PlayerGui)
244
WEAPONGUI.Name = "BanishV3Gui"
245
local Weapon = IT("Model")
246
Weapon.Name = "Adds"
247
local Effects = IT("Folder", Weapon)
248
Effects.Name = "Effects"
249
local ANIMATOR = Humanoid.Animator
250
local ANIMATE = Character:FindFirstChild("Animate")
251
local UNANCHOR = true
252
local TOBANISH = {}
253
script.Parent = PlayerGui
254
Player_Size = 1
255
local i = 1
256
local SKILLTEXTCOLOR = C3(1, 0, 0)
257
local I = 1
258
local DED = false
259
local FADERS = true
260
261
262
--//=================================\\
263
--\\=================================//
264
265
266
--//=================================\\
267
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
268
--\\=================================//
269
270
ArtificialHB = Instance.new("BindableEvent", script)
271
ArtificialHB.Name = "ArtificialHB"
272
273
script:WaitForChild("ArtificialHB")
274
275
frame = Frame_Speed
276
tf = 0
277
allowframeloss = false
278
tossremainder = false
279
lastframe = tick()
280
script.ArtificialHB:Fire()
281
282
game:GetService("RunService").Heartbeat:connect(function(s, p)
283
	tf = tf + s
284
	if tf >= frame then
285
		if allowframeloss then
286
			script.ArtificialHB:Fire()
287
			lastframe = tick()
288
		else
289
			for i = 1, math.floor(tf / frame) do
290
				script.ArtificialHB:Fire()
291
			end
292
		lastframe = tick()
293
		end
294
		if tossremainder then
295
			tf = 0
296
		else
297
			tf = tf - frame * math.floor(tf / frame)
298
		end
299
	end
300
end)
301
302
--//=================================\\
303
--\\=================================//
304
305
--//=================================\\
306
--|| 	      SOME FUNCTIONS
307
--\\=================================//
308
309
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
310
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
311
end
312
313
function PositiveAngle(NUMBER)
314
	if NUMBER >= 0 then
315
		NUMBER = 0
316
	end
317
	return NUMBER
318
end
319
320
function NegativeAngle(NUMBER)
321
	if NUMBER <= 0 then
322
		NUMBER = 0
323
	end
324
	return NUMBER
325
end
326
327
function Swait(NUMBER)
328
	if NUMBER == 0 or NUMBER == nil then
329
		ArtificialHB.Event:wait()
330
	else
331
		for i = 1, NUMBER do
332
			ArtificialHB.Event:wait()
333
		end
334
	end
335
end
336
337
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
338
	local NEWMESH = IT(MESH)
339
	if MESH == "SpecialMesh" then
340
		NEWMESH.MeshType = MESHTYPE
341
		if MESHID ~= "nil" and MESHID ~= "" then
342
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
343
		end
344
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
345
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
346
		end
347
	end
348
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
349
	NEWMESH.Scale = SCALE
350
	NEWMESH.Parent = PARENT
351
	return NEWMESH
352
end
353
354
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
355
	local NEWPART = IT("Part")
356
	NEWPART.formFactor = FORMFACTOR
357
	NEWPART.Reflectance = REFLECTANCE
358
	NEWPART.Transparency = TRANSPARENCY
359
	NEWPART.CanCollide = false
360
	NEWPART.Locked = true
361
	NEWPART.Anchored = true
362
	if ANCHOR == false then
363
		NEWPART.Anchored = false
364
	end
365
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
366
	NEWPART.Name = NAME
367
	NEWPART.Size = SIZE
368
	NEWPART.Position = Torso.Position
369
	NEWPART.Material = MATERIAL
370
	NEWPART:BreakJoints()
371
	NEWPART.Parent = PARENT
372
	return NEWPART
373
end
374
375
	local function weldBetween(a, b)
376
	    local weldd = Instance.new("ManualWeld")
377
	    weldd.Part0 = a
378
	    weldd.Part1 = b
379
	    weldd.C0 = CFrame.new()
380
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
381
	    weldd.Parent = a
382
	    return weldd
383
	end
384
385
386
function QuaternionFromCFrame(cf)
387
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
388
	local trace = m00 + m11 + m22
389
	if trace > 0 then 
390
		local s = math.sqrt(1 + trace)
391
		local recip = 0.5 / s
392
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
393
	else
394
		local i = 0
395
		if m11 > m00 then
396
			i = 1
397
		end
398
		if m22 > (i == 0 and m00 or m11) then
399
			i = 2
400
		end
401
		if i == 0 then
402
			local s = math.sqrt(m00 - m11 - m22 + 1)
403
			local recip = 0.5 / s
404
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
405
		elseif i == 1 then
406
			local s = math.sqrt(m11 - m22 - m00 + 1)
407
			local recip = 0.5 / s
408
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
409
		elseif i == 2 then
410
			local s = math.sqrt(m22 - m00 - m11 + 1)
411
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
412
		end
413
	end
414
end
415
 
416
function QuaternionToCFrame(px, py, pz, x, y, z, w)
417
	local xs, ys, zs = x + x, y + y, z + z
418
	local wx, wy, wz = w * xs, w * ys, w * zs
419
	local xx = x * xs
420
	local xy = x * ys
421
	local xz = x * zs
422
	local yy = y * ys
423
	local yz = y * zs
424
	local zz = z * zs
425
	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))
426
end
427
 
428
function QuaternionSlerp(a, b, t)
429
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
430
	local startInterp, finishInterp;
431
	if cosTheta >= 0.0001 then
432
		if (1 - cosTheta) > 0.0001 then
433
			local theta = ACOS(cosTheta)
434
			local invSinTheta = 1 / SIN(theta)
435
			startInterp = SIN((1 - t) * theta) * invSinTheta
436
			finishInterp = SIN(t * theta) * invSinTheta
437
		else
438
			startInterp = 1 - t
439
			finishInterp = t
440
		end
441
	else
442
		if (1 + cosTheta) > 0.0001 then
443
			local theta = ACOS(-cosTheta)
444
			local invSinTheta = 1 / SIN(theta)
445
			startInterp = SIN((t - 1) * theta) * invSinTheta
446
			finishInterp = SIN(t * theta) * invSinTheta
447
		else
448
			startInterp = t - 1
449
			finishInterp = t
450
		end
451
	end
452
	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
453
end
454
455
function Clerp(a, b, t)
456
	local qa = {QuaternionFromCFrame(a)}
457
	local qb = {QuaternionFromCFrame(b)}
458
	local ax, ay, az = a.x, a.y, a.z
459
	local bx, by, bz = b.x, b.y, b.z
460
	local _t = 1 - t
461
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
462
end
463
464
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
465
	local frame = IT("Frame")
466
	frame.BackgroundTransparency = TRANSPARENCY
467
	frame.BorderSizePixel = BORDERSIZEPIXEL
468
	frame.Position = POSITION
469
	frame.Size = SIZE
470
	frame.BackgroundColor3 = COLOR
471
	frame.BorderColor3 = BORDERCOLOR
472
	frame.Name = NAME
473
	frame.Parent = PARENT
474
	return frame
475
end
476
477
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
478
	local label = IT("TextLabel")
479
	label.BackgroundTransparency = 1
480
	label.Size = UD2(1, 0, 1, 0)
481
	label.Position = UD2(0, 0, 0, 0)
482
	label.TextColor3 = TEXTCOLOR
483
	label.TextStrokeTransparency = STROKETRANSPARENCY
484
	label.TextTransparency = TRANSPARENCY
485
	label.FontSize = TEXTFONTSIZE
486
	label.Font = TEXTFONT
487
	label.BorderSizePixel = BORDERSIZEPIXEL
488
	label.TextScaled = false
489
	label.Text = TEXT
490
	label.Name = NAME
491
	label.Parent = PARENT
492
	return label
493
end
494
495
function NoOutlines(PART)
496
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
497
end
498
499
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
500
	local NEWWELD = IT(TYPE)
501
	NEWWELD.Part0 = PART0
502
	NEWWELD.Part1 = PART1
503
	NEWWELD.C0 = C0
504
	NEWWELD.C1 = C1
505
	NEWWELD.Parent = PARENT
506
	return NEWWELD
507
end
508
509
local S = IT("Sound")
510
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
511
	local NEWSOUND = nil
512
	coroutine.resume(coroutine.create(function()
513
		NEWSOUND = S:Clone()
514
		NEWSOUND.Parent = PARENT
515
		NEWSOUND.Volume = VOLUME
516
		NEWSOUND.Pitch = PITCH
517
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
518
		NEWSOUND:play()
519
		if DOESLOOP == true then
520
			NEWSOUND.Looped = true
521
		else
522
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
523
			NEWSOUND:remove()
524
		end
525
	end))
526
	return NEWSOUND
527
end
528
529
function CFrameFromTopBack(at, top, back)
530
	local right = top:Cross(back)
531
	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)
532
end
533
534
--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})
535
function WACKYEFFECT(Table)
536
	local TYPE = (Table.EffectType or "Sphere")
537
	local SIZE = (Table.Size or VT(1,1,1))
538
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
539
	local TRANSPARENCY = (Table.Transparency or 0)
540
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
541
	local CFRAME = (Table.CFrame or Torso.CFrame)
542
	local MOVEDIRECTION = (Table.MoveToPos or nil)
543
	local ROTATION1 = (Table.RotationX or 0)
544
	local ROTATION2 = (Table.RotationY or 0)
545
	local ROTATION3 = (Table.RotationZ or 0)
546
	local MATERIAL = (Table.Material or "Neon")
547
	local COLOR = (Table.Color or C3(1,1,1))
548
	local TIME = (Table.Time or 45)
549
	local SOUNDID = (Table.SoundID or nil)
550
	local SOUNDPITCH = (Table.SoundPitch or nil)
551
	local SOUNDVOLUME = (Table.SoundVolume or nil)
552
	coroutine.resume(coroutine.create(function()
553
		local PLAYSSOUND = false
554
		local SOUND = nil
555
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
556
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
557
			PLAYSSOUND = true
558
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
559
		end
560
		EFFECT.Color = COLOR
561
		local MSH = nil
562
		if TYPE == "Sphere" then
563
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
564
		elseif TYPE == "Block" then
565
			MSH = IT("BlockMesh",EFFECT)
566
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
567
		elseif TYPE == "Wave" then
568
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
569
		elseif TYPE == "Ring" then
570
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
571
		elseif TYPE == "Slash" then
572
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
573
		elseif TYPE == "Round Slash" then
574
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
575
		elseif TYPE == "Swirl" then
576
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
577
		elseif TYPE == "Skull" then
578
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
579
		elseif TYPE == "Crystal" then
580
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
581
		end
582
		if MSH ~= nil then
583
			local MOVESPEED = nil
584
			if MOVEDIRECTION ~= nil then
585
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
586
			end
587
			local GROWTH = SIZE - ENDSIZE
588
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
589
			if TYPE == "Block" then
590
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
591
			else
592
				EFFECT.CFrame = CFRAME
593
			end
594
			for LOOP = 1, TIME+1 do
595
				Swait()
596
				MSH.Scale = MSH.Scale - GROWTH/TIME
597
				if TYPE == "Wave" then
598
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
599
				end
600
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
601
				if TYPE == "Block" then
602
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
603
				else
604
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
605
				end
606
				if MOVEDIRECTION ~= nil then
607
					local ORI = EFFECT.Orientation
608
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
609
					EFFECT.Orientation = ORI
610
				end
611
			end
612
			if PLAYSSOUND == false then
613
				EFFECT:remove()
614
			else
615
				SOUND.Stopped:Connect(function()
616
					EFFECT:remove()
617
				end)
618
			end
619
		else
620
			if PLAYSSOUND == false then
621
				EFFECT:remove()
622
			else
623
				repeat Swait() until SOUND.Playing == false
624
				EFFECT:remove()
625
			end
626
		end
627
	end))
628
end
629
630
function MakeForm(PART,TYPE)
631
	if TYPE == "Cyl" then
632
		local MSH = IT("CylinderMesh",PART)
633
	elseif TYPE == "Ball" then
634
		local MSH = IT("SpecialMesh",PART)
635
		MSH.MeshType = "Sphere"
636
	elseif TYPE == "Wedge" then
637
		local MSH = IT("SpecialMesh",PART)
638
		MSH.MeshType = "Wedge"
639
	end
640
end
641
642
function SpawnTrail(FROM,TO,BIG)
643
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
644
	MakeForm(TRAIL,"Cyl")
645
	local DIST = (FROM - TO).Magnitude
646
	if BIG == true then
647
		TRAIL.Size = VT(0.5,DIST,0.5)
648
	else
649
		TRAIL.Size = VT(0.25,DIST,0.25)
650
	end
651
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
652
	coroutine.resume(coroutine.create(function()
653
		for i = 1, 25 do
654
			Swait()
655
			TRAIL.Transparency = TRAIL.Transparency + 0.05
656
		end
657
		TRAIL:remove()
658
	end))
659
end
660
661
Debris = game:GetService("Debris")
662
663
function CastProperRay(StartPos, EndPos, Distance, Ignore)
664
	local DIRECTION = CF(StartPos,EndPos).lookVector
665
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
666
end
667
function Debree(POS, SWAIT)
668
    coroutine.resume(coroutine.create(function()
669
        local HOLDER = IT("Model", Effects)
670
        HOLDER.Name = "Debree"
671
        local HITFLOOR = Raycast(POS, CF(POS, POS + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
672
        MagicSphere(VT(15, 1, 15), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
673
        MagicSphere(VT(13, 1, 13), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
674
        MagicSphere(VT(12, 1, 12), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
675
        repeat
676
            Swait()
677
        until HITFLOOR ~= nil
678
        local O = 0
679
        for i = 1, 18 do
680
            do
681
                local Part = CreatePart(3, HOLDER, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(3, 3, 3))
682
                Part.CFrame = CF(CF(POS) * CF(10 - i, 0, O).p) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
683
                O = O - 2.25 + i / 4
684
                coroutine.resume(coroutine.create(function()
685
                    Swait(SWAIT)
686
                    for i = 1, 60 do
687
                        Swait()
688
                        local RayHit, Way = CastProperRay(Part.Position, POS, 0.1, workspace)
689
                        Part.CFrame = CF(Way) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
690
                    end
691
                    for i = 1, 50 do
692
                        Swait()
693
                        Part.Size = Part.Size * 0.9
694
                    end
695
                end))
696
            end
697
        end
698
        local O = 0
699
        for i = 1, 18 do
700
            do
701
                local Part = CreatePart(3, HOLDER, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(3, 3, 3))
702
                Part.CFrame = CF(CF(POS) * CF(10 - i, 0, O).p) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
703
                O = O + 2.25 - i / 4
704
                coroutine.resume(coroutine.create(function()
705
                    Swait(SWAIT)
706
                    for i = 1, 60 do
707
                        Swait()
708
                        local RayHit, Way = CastProperRay(Part.Position, POS, 0.1, workspace)
709
                        Part.CFrame = CF(Way) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
710
                    end
711
                    for i = 1, 50 do
712
                        Swait()
713
                        Part.Size = Part.Size * 0.9
714
                    end
715
                end))
716
            end
717
        end
718
        Swait(SWAIT + 110)
719
        HOLDER:remove()
720
    end))
721
end
722
723
724
725
726
function turnto(position)
727
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
728
end
729
730
function SpawnSoul(Humanoid)
731
	coroutine.resume(coroutine.create(function()
732
		local TORSO = Humanoid.Parent:FindFirstChild("Torso") or Humanoid.Parent:FindFirstChild("UpperTorso")
733
		local SOULMODEL = IT("Model",Effects)
734
		SOULMODEL.Name = Humanoid.Parent.Name.."'s Spirit"
735
		local SOUL = CreatePart(3, SOULMODEL, "Neon", 0, 0, "Really red", "Head", VT(0.5,0.5,0.5))
736
		SOUL.CFrame = CF(TORSO.Position)
737
	 	local A1 = IT("Attachment",SOUL)
738
	 	A1.Position = Vector3.new(0, 0.25, 0)
739
	 	local A2 = IT("Attachment",SOUL)
740
	    A2.Position = Vector3.new(0, -0.25, 0)
741
	 	local Trail = IT("Trail",SOUL)
742
	    Trail.LightEmission = 0.3
743
	    Trail.FaceCamera = true
744
	    Trail.Texture = "rbxassetid://945758042"
745
	    Trail.Attachment0 = A1
746
	    Trail.Attachment1 = A2
747
	    Trail.Lifetime = 0.5
748
	    Trail.MinLength = 0
749
	    Trail.Transparency = NumberSequence.new(0)
750
	    Trail.Color = ColorSequence.new(SOUL.Color)
751
		MakeForm(SOUL,"Ball")
752
		local DISTANCE = nil
753
		local HUM = IT("Humanoid",SOULMODEL)
754
		repeat
755
			Swait()
756
			SOUL.CFrame = CF(SOUL.Position,Torso.Position)*CF(0,0,-0.2)
757
			DISTANCE = (SOUL.Position - Torso.Position).Magnitude
758
		until DISTANCE < 0.4
759
		WACKYEFFECT({EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(6,6,6), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = "444667859", SoundPitch = 2, SoundVolume = 2})
760
                WACKYEFFECT({EffectType = "Sphere", Size = VT(1.5,1.5,1.5), Size2 = VT(6.5,6.5,6.5), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = "444667859", SoundPitch = 2, SoundVolume = 2})
761
		SOUL.Transparency = 1
762
		A1.Parent = Torso
763
		A2.Parent = Torso
764
		Trail.Parent = Torso
765
		Debris:AddItem(SOULMODEL,10)
766
		SOULWELL = SOULWELL + 1
767
		for i = 1, 100 do
768
			Swait()
769
			Trail.Transparency = NumberSequence.new(i/100)
770
		end
771
		A1:remove()
772
		A2:remove()
773
		Trail:remove()
774
	end))
775
end
776
777
778
779
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
780
	if FLOOR ~= nil then
781
		coroutine.resume(coroutine.create(function()
782
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
783
			PART.CFrame = CF(POSITION)
784
			for i = 1, 45 do
785
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
786
				RingPiece.Material = FLOOR.Material
787
				RingPiece.Color = FLOOR.Color
788
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
789
				Debris:AddItem(RingPiece,SWAIT)
790
			end
791
			PART:remove()
792
		end))
793
	end
794
end
795
796
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
797
	if FLOOR ~= nil then
798
		for i = 1, AMOUNT do
799
			local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
800
			DEBREE.Material = FLOOR.Material
801
			DEBREE.Color = FLOOR.Color
802
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
803
			DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
804
			coroutine.resume(coroutine.create(function()
805
				Swait(15)
806
				DEBREE.Parent = workspace
807
				DEBREE.CanCollide = true
808
				Debris:AddItem(DEBREE,SWAIT)
809
			end))
810
		end
811
	end
812
end
813
814
function swait(num)
815
	if num == 0 or num == nil then
816
		ArtificialHB.Event:wait()
817
	else
818
		for i = 0, num do
819
			ArtificialHB.Event:wait()
820
		end
821
	end
822
end
823
824
--//====================================================\\--
825
--||			  		 SPEECH
826
--\\====================================================//--
827
828
function chatfunc(text)
829
	local chat = coroutine.wrap(function()
830
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
831
		Character:FindFirstChild("TalkingBillBoard"):destroy()
832
	end
833
	local Bill = Instance.new("BillboardGui",Character)
834
	Bill.Size = UDim2.new(0,100,0,40)
835
	Bill.StudsOffset = Vector3.new(0,3,0)
836
	Bill.Adornee = Character.Head
837
	Bill.Name = "TalkingBillBoard"
838
	local Hehe = Instance.new("TextLabel",Bill)
839
	Hehe.BackgroundTransparency = 1
840
	Hehe.BorderSizePixel = 0
841
	Hehe.Text = ""
842
	Hehe.Font = "SciFi"
843
	Hehe.TextSize = 40
844
	Hehe.TextStrokeTransparency = 0
845
	Hehe.Size = UDim2.new(1,0,0.5,0)
846
	coroutine.resume(coroutine.create(function()
847
		while Hehe ~= nil do
848
			swait()	
849
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
850
			Hehe.Rotation = math.random(-1,1)
851
			Hehe.TextColor3 = Color3.new(1,0,0)
852
			Hehe.TextStrokeColor3 = Color3.new(0,0,0)
853
		end
854
	end))
855
	for i = 1,string.len(text),1 do
856
		swait()
857
		Hehe.Text = string.sub(text,1,i)
858
	end
859
	Swait(90)--Re[math.random(1, 93)]
860
	for i = 0, 1, .025 do
861
		Swait()
862
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
863
		Hehe.TextStrokeTransparency = i
864
		Hehe.TextTransparency = i
865
	end
866
	Bill:Destroy()
867
	end)
868
chat()
869
end
870
871
function onChatted(msg)
872
	chatfunc(msg)
873
end
874
Player.Chatted:connect(onChatted)
875
876
function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
877
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
878
	local mesh = IT("SpecialMesh", wave)
879
	mesh.MeshType = "FileMesh"
880
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
881
	mesh.Scale = SIZE
882
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
883
	wave.CFrame = CFRAME
884
	coroutine.resume(coroutine.create(function(PART)
885
		for i = 1, WAIT do
886
			Swait()
887
			mesh.Scale = mesh.Scale + GROW
888
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
889
			if DOESROT == true then
890
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
891
			end
892
			wave.Transparency = wave.Transparency + 0.5 / WAIT
893
			if wave.Transparency > 0.99 then
894
				wave:remove()
895
			end
896
		end
897
	end))
898
end
899
function CreateCrown(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
900
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
901
	local mesh = IT("SpecialMesh", wave)
902
	mesh.MeshType = "FileMesh"
903
	mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
904
	mesh.Scale = SIZE
905
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
906
	wave.CFrame = CFRAME
907
	coroutine.resume(coroutine.create(function(PART)
908
		for i = 1, WAIT do
909
			Swait()
910
			mesh.Scale = mesh.Scale + GROW
911
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
912
			if DOESROT == true then
913
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
914
			end
915
			wave.Transparency = wave.Transparency + 0.5 / WAIT
916
			if wave.Transparency > 0.99 then
917
				wave:remove()
918
			end
919
		end
920
	end))
921
end
922
function CreateIceCrown(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
923
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
924
	local mesh = IT("SpecialMesh", wave)
925
	mesh.MeshType = "FileMesh"
926
	mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
927
	mesh.Scale = SIZE
928
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
929
	wave.CFrame = CFRAME
930
	coroutine.resume(coroutine.create(function(PART)
931
		for i = 1, WAIT do
932
			Swait()
933
			mesh.Scale = mesh.Scale + GROW
934
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
935
			if DOESROT == true then
936
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
937
			end
938
			wave.Transparency = wave.Transparency + 0.5 / WAIT
939
			if wave.Transparency > 0.99 then
940
				wave:remove()
941
			end
942
		end
943
	end))
944
end
945
function CreateSpikeball(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
946
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
947
	local mesh = IT("SpecialMesh", wave)
948
	mesh.MeshType = "FileMesh"
949
	mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
950
	mesh.Scale = SIZE
951
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
952
	wave.CFrame = CFRAME
953
	coroutine.resume(coroutine.create(function(PART)
954
		for i = 1, WAIT do
955
			Swait()
956
			mesh.Scale = mesh.Scale + GROW
957
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
958
			if DOESROT == true then
959
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
960
			end
961
			wave.Transparency = wave.Transparency + 0.5 / WAIT
962
			if wave.Transparency > 0.99 then
963
				wave:remove()
964
			end
965
		end
966
	end))
967
end
968
function CreateSwirl(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
969
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
970
	local mesh = IT("SpecialMesh", wave)
971
	mesh.MeshType = "FileMesh"
972
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
973
	mesh.Scale = SIZE
974
	wave.CFrame = CFRAME
975
	coroutine.resume(coroutine.create(function(PART)
976
		for i = 1, WAIT do
977
			Swait()
978
			mesh.Scale = mesh.Scale + GROW
979
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
980
			if DOESROT == true then
981
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
982
			end
983
			wave.Transparency = wave.Transparency + 0.5 / WAIT
984
			if wave.Transparency > 0.99 then
985
				wave:remove()
986
			end
987
		end
988
	end))
989
end
990
function CreateTornado(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
991
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
992
	local mesh = IT("SpecialMesh", wave)
993
	mesh.MeshType = "FileMesh"
994
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
995
	mesh.Scale = SIZE
996
	wave.CFrame = CFRAME
997
	coroutine.resume(coroutine.create(function(PART)
998
		for i = 1, WAIT do
999
			Swait()
1000
			mesh.Scale = mesh.Scale + GROW
1001
			if DOESROT == true then
1002
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
1003
			end
1004
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1005
			if wave.Transparency > 0.99 then
1006
				wave:remove()
1007
			end
1008
		end
1009
	end))
1010
end
1011
function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
1012
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
1013
	local mesh = IT("SpecialMesh", wave)
1014
	mesh.MeshType = "FileMesh"
1015
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
1016
	mesh.Scale = SIZE
1017
	mesh.Offset = VT(0, 0, 0)
1018
	wave.CFrame = CFRAME
1019
	coroutine.resume(coroutine.create(function(PART)
1020
		for i = 1, WAIT do
1021
			Swait()
1022
			mesh.Scale = mesh.Scale + GROW
1023
			if DOESROT == true then
1024
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
1025
			end
1026
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1027
			if wave.Transparency > 0.99 then
1028
				wave:remove()
1029
			end
1030
		end
1031
	end))
1032
end
1033
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
1034
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
1035
	local mesh = IT("SpecialMesh", wave)
1036
	mesh.MeshType = "Sphere"
1037
	mesh.Scale = SIZE
1038
	mesh.Offset = VT(0, 0, 0)
1039
	wave.CFrame = CFRAME
1040
	coroutine.resume(coroutine.create(function(PART)
1041
		for i = 1, WAIT do
1042
			Swait()
1043
			mesh.Scale = mesh.Scale + GROW
1044
			wave.Transparency = wave.Transparency + 1 / WAIT
1045
			if wave.Transparency > 0.99 then
1046
				wave:remove()
1047
			end
1048
		end
1049
	end))
1050
end
1051
function MagicBlock(SIZE, WAIT, CFRAME, COLOR, GROW)
1052
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE, SIZE, SIZE), true)
1053
	local mesh = IT("BlockMesh", wave)
1054
	wave.CFrame = CFRAME
1055
	coroutine.resume(coroutine.create(function(PART)
1056
		for i = 1, WAIT do
1057
			Swait()
1058
			mesh.Scale = mesh.Scale + GROW
1059
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360, 360)), RAD(math.random(-360, 360)), RAD(math.random(-360, 360)))
1060
			wave.Transparency = wave.Transparency + 1 / WAIT
1061
			if wave.Transparency > 0.99 then
1062
				wave:remove()
1063
			end
1064
		end
1065
	end))
1066
end
1067
1068
function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
1069
	coroutine.resume(coroutine.create(function()
1070
		local FADE = IT("Model",Effects)
1071
		if PARENT ~= nil then
1072
			FADE.Parent = PARENT
1073
		end
1074
		FADE.Name = "FadingEffect"
1075
                for _, c in pairs(Weapon:GetChildren()) do
1076
			if c.ClassName == "Part" then
1077
				c.CanCollide = false
1078
				local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Really red"), c.Name, c.Size, true)
1079
				FADER.CFrame = c.CFrame
1080
				FADER.Color = COLOR
1081
				if FADER.Name == "Head" then
1082
					Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
1083
				elseif FADER.Name == "HumanoidRootPart" then
1084
					FADE.PrimaryPart = FADER
1085
					FADER.Transparency = 1
1086
				end
1087
			end
1088
		end
1089
                for _, c in pairs(Character:GetChildren()) do
1090
			if c.ClassName == "Part" then
1091
				c.CanCollide = false
1092
				local FADER = CreatePart(3, FADE, "Neon", 0, 0.95, BRICKC("Really red"), c.Name, c.Size, true)
1093
				FADER.CFrame = c.CFrame
1094
				FADER.Color = COLOR
1095
				if FADER.Name == "Head" then
1096
					Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
1097
				elseif FADER.Name == "HumanoidRootPart" then
1098
					FADE.PrimaryPart = FADER
1099
					FADER.Transparency = 1
1100
				end
1101
			end
1102
		end
1103
		local TRANS = 0.25/TIMER
1104
		local DIST = nil
1105
		if MOVEDIRECTION ~= nil then
1106
			DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
1107
		end
1108
		for i = 1, TIMER do
1109
			Swait()
1110
			for _, c in pairs(FADE:GetChildren()) do
1111
				if c.ClassName == "Part" then
1112
					c.Transparency = c.Transparency + TRANS
1113
				end
1114
			end
1115
			if MOVEDIRECTION ~= nil then
1116
				local ORI = FADE.PrimaryPart.Orientation
1117
				FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
1118
			end
1119
		end
1120
		FADE:remove()
1121
	end))
1122
end
1123
1124
--//====================================================\\--
1125
--||			  		 HALO
1126
--\\====================================================//--
1127
1128
function CreateNeonCircle(ATTACHPART, POSITION, SIZE, DOESSPIN, COLOR, MATERIAL, THICKNESS, WIDTH)
1129
	local PART = CreatePart(3, Weapon, MATERIAL, 0, 1, COLOR, "CirclePart", VT(0, 0, 0), false)
1130
	for i = 1, 45 do
1131
		local RingPiece = CreatePart(3, Weapon, MATERIAL, 0, 0, COLOR, "CirclePart", VT(THICKNESS, WIDTH, SIZE * 0.65), false)
1132
		local RingWeld = CreateWeldOrSnapOrMotor("Weld", RingPiece, PART, RingPiece, CF(0, 0, 0) * ANGLES(RAD(0), RAD(i * 8), RAD(0)), CF(0, 0, 0) * CF(SIZE * 4, 0, 0))
1133
	end
1134
	local PartWeld = CreateWeldOrSnapOrMotor("Weld", ATTACHPART, PART, ATTACHPART, POSITION * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1135
	coroutine.resume(coroutine.create(function()
1136
		if DOESSPIN == true then
1137
			while true do
1138
				wait()
1139
				PartWeld.C0 = Clerp(PartWeld.C0, POSITION * ANGLES(RAD(0), RAD(SINE * 2), RAD(0)), 1)
1140
			end
1141
		end
1142
	end))
1143
end
1144
1145
1146
--//=================================\\
1147
--||	     WEAPON CREATION
1148
--\\=================================//
1149
1150
local Particle = IT("ParticleEmitter",nil)
1151
Particle.Enabled = false
1152
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1153
Particle.LightEmission = 0.5
1154
Particle.Rate = 150
1155
Particle.ZOffset = 0.2
1156
Particle.Rotation = NumberRange.new(-180, 180)
1157
Particle.RotSpeed = NumberRange.new(-180, 180)
1158
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1159
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
1160
1161
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1162
function ParticleEmitter(Table)
1163
	local PRTCL = Particle:Clone()
1164
	local Speed = Table.Speed or 5
1165
	local Drag = Table.Drag or 0
1166
	local Size1 = Table.Size1 or 1
1167
	local Size2 = Table.Size2 or 5
1168
	local Lifetime1 = Table.Lifetime1 or 1
1169
	local Lifetime2 = Table.Lifetime2 or 1.5
1170
	local Parent = Table.Parent or Torso
1171
	local Emit = Table.Emit or 100
1172
	local Offset = Table.Offset or 360
1173
	local Acel = Table.Acel or VT(0,0,0)
1174
	local Enabled = Table.Enabled or false
1175
	PRTCL.Parent = Parent
1176
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1177
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1178
	PRTCL.Speed = NumberRange.new(Speed)
1179
	PRTCL.VelocitySpread = Offset
1180
	PRTCL.Drag = Drag
1181
	PRTCL.Acceleration = Acel
1182
	if Enabled == false then
1183
		PRTCL:Emit(Emit)
1184
		Debris:AddItem(PRTCL,Lifetime2)
1185
	else
1186
		PRTCL.Enabled = true
1187
	end
1188
	return PRTCL
1189
end
1190
1191
1192
local Gun = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gun", VT(0, 0, 0), false)
1193
local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "430198390", "430198451", VT(0.02, 0.02, 0.02), VT(0, 0, 0))
1194
local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.7, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
1195
GunPoint = CreatePart(3, Weapon, "Neon", 0, 1, "Really black", "Point blank", VT(0, 0, 0), false)
1196
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", GunPoint, RightArm, GunPoint, CF(0, -3.1, -0.8) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
1197
1198
local Gun1 = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gun1", VT(0, 0, 0), false)
1199
local HandleMesh = CreateMesh("SpecialMesh", Gun1, "FileMesh", "0", "0", VT(0.02, 0.02, 0.02), VT(0, 0, 0))
1200
local Weld = CreateWeldOrSnapOrMotor("Weld", Gun1, RightArm, Gun1, CF(0, -3.1, -0.8) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
1201
1202
ParticleEmitter({Speed = 0, Drag = 0, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Gun1, Emit = 0, Offset = -360, Enabled = false})
1203
1204
1205
Weapon.Parent = Character
1206
1207
for _, c in pairs(Weapon:GetChildren()) do
1208
	if c.ClassName == "Part" then
1209
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1210
	end
1211
end
1212
1213
local SKILLTEXTCOLOR = C3(1,0,0)
1214
local SKILLFONT = "SciFi"
1215
local SKILLTEXTSIZE = 7
1216
1217
Humanoid.Died:connect(function()
1218
	ATTACK = false
1219
end)
1220
1221
local BODY = {}
1222
1223
for _, c in pairs(Character:GetDescendants()) do
1224
	if c:IsA("BasePart") and c.Name ~= "Handle" then
1225
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1226
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1227
		end
1228
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
1229
	elseif c:IsA("JointInstance") then
1230
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
1231
	end
1232
end
1233
1234
for e = 1, #BODY do
1235
	if BODY[e] ~= nil then
1236
		local STUFF = BODY[e]
1237
		local PART = STUFF[1]
1238
		local PARENT = STUFF[2]
1239
		local MATERIAL = STUFF[3]
1240
		local COLOR = STUFF[4]
1241
		local TRANSPARENCY = STUFF[5]
1242
		if PART.ClassName == "Part" and PART ~= RootPart then
1243
			PART.Material = MATERIAL
1244
			PART.Color = COLOR
1245
			PART.Transparency = TRANSPARENCY
1246
		end
1247
		PART.AncestryChanged:Connect(function()
1248
			PART.Parent = PARENT
1249
		end)
1250
	end
1251
end
1252
1253
function refit()
1254
	Character.Parent = workspace
1255
	for e = 1, #BODY do
1256
		if BODY[e] ~= nil then
1257
			local STUFF = BODY[e]
1258
			local PART = STUFF[1]
1259
			local PARENT = STUFF[2]
1260
			local MATERIAL = STUFF[3]
1261
			local COLOR = STUFF[4]
1262
			local TRANSPARENCY = STUFF[5]
1263
			if PART.ClassName == "Part" and PART ~= RootPart then
1264
				PART.Material = MATERIAL
1265
				PART.Color = COLOR
1266
				PART.Transparency = TRANSPARENCY
1267
			end
1268
			if PART.Parent ~= PARENT then
1269
				Humanoid:remove()
1270
				PART.Parent = PARENT
1271
				Humanoid = IT("Humanoid",Character)
1272
			end
1273
		end
1274
	end
1275
end
1276
1277
1278
1279
1280
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.100, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1281
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1282
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.631, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1283
1284
1285
1286
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banish Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 1")
1287
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[X] Banish Laser", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 2")
1288
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Teleport", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 3")
1289
1290
--//====================================================\\--
1291
--||			  		 TAUNTS
1292
--\\====================================================//--
1293
1294
1295
UnBanishTaunts = {"I'll show you Mercy.", "This is your final Mercy.", "You are now free.", "I'll forgive your sin.", "Don't refuse me.", "Don't do that again.", "If you desire to be free.", "I only give you Mercy."}
1296
1297
function printbye(Name)
1298
	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, ","Your Time has ended, ","You dont exist anymore, ","Im your true god, ","Your Soul is mine, ","You will be banished forever, ","You can't escape., ","Say goodbye to your cruel world., "}
1299
	chatfunc(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1300
end
1301
1302
workspace.ChildAdded:connect(function(instance)
1303
    for BANISH = 1, #TOBANISH do
1304
		if TOBANISH[BANISH] ~= nil then
1305
			if instance.Name == TOBANISH[BANISH] then
1306
				coroutine.resume(coroutine.create(function()
1307
					printbye(instance.Name)
1308
					instance:ClearAllChildren()
1309
					Debris:AddItem(instance,0.0005)
1310
				end))
1311
			end
1312
		end
1313
	end
1314
end)
1315
1316
--//====================================================\\--
1317
--\\====================================================//--
1318
1319
function R_RANDOM(CFRAME,DIST)
1320
	return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
1321
end
1322
1323
function CamShake(SHAKE,TIMER)
1324
	coroutine.resume(coroutine.create(function()
1325
		local FADER = SHAKE/TIMER
1326
		for i = 1, TIMER do
1327
			wait()
1328
			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)
1329
		end
1330
		Humanoid.CameraOffset = VT(0,0,0)
1331
	end))
1332
end
1333
1334
--//=================================\\
1335
--||			DAMAGING
1336
--\\=================================//
1337
1338
function ApplyDamage(Humanoid,Damage)
1339
	if Humanoid.Health == math.huge then
1340
		Banish(c)
1341
	else
1342
		local MULTIPLY = Humanoid.MaxHealth/100
1343
		Damage = Damage * DAMAGEMULTIPLIER
1344
		if Humanoid.Health ~= 0 then
1345
			Humanoid.Health = Humanoid.Health - Damage*MULTIPLY
1346
                        Banish(c)
1347
		end
1348
	end
1349
end
1350
1351
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,CAMSINSTAKILL,INSTAKILL)
1352
	local CHILDREN = workspace:GetDescendants()
1353
	for index, CHILD in pairs(CHILDREN) do
1354
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1355
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1356
			if HUM then
1357
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1358
				if TORSO then
1359
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1360
						if INSTAKILL == true or HUM.MaxHealth == math.huge then
1361
							Banish(c)
1362
						else
1363
							local DMG = MRANDOM(MINDMG,MAXDMG)
1364
							ApplyDamage(HUM,DMG)
1365
						end
1366
						if FLING > 0 then
1367
							for _, c in pairs(CHILD:GetChildren()) do
1368
								if c:IsA("BasePart") then
1369
									local bv = Instance.new("BodyVelocity") 
1370
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1371
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1372
									bv.Parent = c
1373
									Debris:AddItem(bv,0.05)
1374
								end
1375
							end
1376
						end
1377
					end
1378
				end
1379
			end
1380
		end
1381
	end
1382
end
1383
1384
1385
1386
function Banish(Foe)
1387
	if Foe then
1388
		coroutine.resume(coroutine.create(function()
1389
			--if game.Players:FindFirstChild(Foe.Name) then
1390
				table.insert(TOBANISH,Foe.Name)
1391
				printbye(Foe.Name)
1392
			--end
1393
			Foe.Archivable = true
1394
			local CLONE = Foe:Clone()
1395
			Foe:Destroy()
1396
			CLONE.Parent = Effects
1397
			CLONE:BreakJoints()
1398
			local MATERIALS = {"Neon","Neon"}
1399
			for _, c in pairs(CLONE:GetDescendants()) do
1400
				if c:IsA("BasePart") then
1401
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1402
 						CreateSound(340722848, c, 10, 1, false)
1403
					end
1404
					c.Anchored = true
1405
					c.Transparency = c.Transparency + 0.2
1406
					c.Material = MATERIALS[MRANDOM(1,2)]
1407
					c.Color = C3(1,0,0)
1408
					if c.ClassName == "MeshPart" then
1409
						c.TextureID = ""
1410
					end
1411
					if c:FindFirstChildOfClass("SpecialMesh") then
1412
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1413
					end
1414
					if c:FindFirstChildOfClass("Decal") then
1415
						c:FindFirstChildOfClass("Decal"):remove()
1416
					end
1417
					c.Name = "Banished"
1418
					c.CanCollide = false
1419
				else
1420
					c:remove()
1421
				end
1422
			end
1423
			local A = false
1424
			for i = 1, 35 do
1425
				if A == false then
1426
					A = true
1427
				elseif A == true then
1428
					A = false
1429
				end
1430
				for _, c in pairs(CLONE:GetDescendants()) do
1431
					if c:IsA("BasePart") then
1432
						c.Anchored = true
1433
						c.Material = MATERIALS[MRANDOM(1,2)]
1434
						c.Transparency = c.Transparency + 0.8/35
1435
						if A == false then
1436
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1437
						elseif A == true then
1438
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1439
						end
1440
					end
1441
				end
1442
				Swait()
1443
			end
1444
			CLONE:remove()
1445
		end))
1446
	end
1447
end
1448
1449
function ApplyAoE(POSITION,RANGE,ISBANISH)
1450
	local CHILDREN = workspace:GetDescendants()
1451
	for index, CHILD in pairs(CHILDREN) do
1452
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1453
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1454
			if HUM then
1455
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1456
				if TORSO then
1457
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1458
						if ISBANISH == true then
1459
							Banish(CHILD)
1460
						else
1461
							if ISBANISH == "Gravity" then
1462
								HUM.PlatformStand = true
1463
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1464
									local grav = Instance.new("BodyPosition",TORSO)
1465
									grav.D = 15
1466
									grav.P = 20000
1467
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1468
									grav.position = TORSO.Position
1469
									grav.Name = "V3BanishForce"..Player.Name
1470
								else
1471
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1472
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1473
								end
1474
							else
1475
								HUM.PlatformStand = false
1476
							end
1477
						end
1478
					elseif ISBANISH == "Gravity" then
1479
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1480
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1481
							HUM.PlatformStand = false
1482
						end
1483
					end
1484
				end
1485
			end
1486
		end
1487
	end
1488
end
1489
1490
1491
1492
1493
1494
1495
--//=================================\\
1496
--||	ATTACK FUNCTIONS AND STUFF
1497
--\\=================================//
1498
1499
function Banisher_Bullet()
1500
    ATTACK = true
1501
    Rooted = false
1502
    for i=0, 0.4, 0.1 / Animation_Speed do
1503
        Swait()
1504
        turnto(Mouse.Hit.p)
1505
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1506
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1507
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1508
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1509
        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)
1510
        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)
1511
    end
1512
    repeat
1513
        for i=0, 0.2, 0.1 / Animation_Speed do
1514
            Swait()
1515
            turnto(Mouse.Hit.p)
1516
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1517
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1518
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1519
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1520
            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)
1521
            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)
1522
        end
1523
        local HIT,POS = CastProperRay(Gun1.Position, Mouse.Hit.p, 1000, Character)
1524
        SpawnTrail(Gun1.Position,POS)
1525
        if HIT ~= nil then
1526
            if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1527
                Banish(HIT.Parent)
1528
            end
1529
        end
1530
        WACKYEFFECT({Time = 15+(i*5), EffectType = "Slash", Size = VT(0.03,0.03,0.03), Size2 = VT(0.05,0,0.05), Transparency = 0, Transparency2 = 1, CFrame = CF(Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = MRANDOM(-15,15)/15, RotationY = MRANDOM(-15,15)/15, RotationZ = MRANDOM(-15,15)/15, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1531
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(1.5,1.5,1.5), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = Gun1.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})
1532
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0.4,0.4,0.4), Size2 = VT(2.5,2.5,2.5), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1533
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(3,3.5,3), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Gun1.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})
1534
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(3,3.5,3), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Gun1.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})
1535
        WACKYEFFECT({Time = 15+(i*5), EffectType = "Ring", Size = VT(0.3,0.3,0.3), Size2 = VT(0.5,0.5,0.5), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = MRANDOM(-15,15)/15, RotationY = MRANDOM(-15,15)/15, RotationZ = MRANDOM(-15,15)/15, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1536
        WACKYEFFECT({Time = 70, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(MRANDOM(12,13),MRANDOM(12,13),MRANDOM(12,13)), Transparency = 0.5, Transparency2 = 1, CFrame = CF(Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,45), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 608538233, SoundPitch = MRANDOM(8,12)/10, SoundVolume = MRANDOM(5,10)})
1537
        CamShake(2,2)
1538
        for i=0, 0.3, 0.1 / Animation_Speed do
1539
            Swait()
1540
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1541
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1542
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1543
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1544
            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)
1545
            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)
1546
        end
1547
    until KEYHOLD == false
1548
    ATTACK = false
1549
    Rooted = false
1550
end
1551
function AttackTemplate()
1552
	ATTACK = true
1553
	Rooted = false
1554
	for i=0, 1, 0.1 / Animation_Speed do
1555
		Swait()
1556
		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)
1557
		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)
1558
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1559
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1560
		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)
1561
		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)
1562
	end
1563
	ATTACK = false
1564
	Rooted = false
1565
end
1566
1567
function BanishLaser()
1568
    ATTACK = true
1569
    local GYRO = IT("BodyGyro",RootPart)
1570
    GYRO.D = 100
1571
    GYRO.P = 2000
1572
    GYRO.MaxTorque = VT(0,4000000,0)
1573
    GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1574
    for i=1, 35 do
1575
        Swait()
1576
        GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1577
        WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = Gun1, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
1578
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1579
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1580
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1581
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1582
        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)
1583
        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)
1584
    end
1585
    local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
1586
    local LOOP = CreateSound("289315275", Gun1, 5, 1.2, false)
1587
    local MSH = IT("CylinderMesh",BEAM)
1588
    local TOCH = BEAM.Touched:Connect(function(hit)
1589
        if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
1590
            if hit.Parent:FindFirstChildOfClass("Humanoid") then
1591
                Banish(hit.Parent)
1592
            end
1593
        end
1594
    end)
1595
    local I = 0
1596
    repeat
1597
        Swait()
1598
        I = I + 1
1599
        if I <= 10 then
1600
            BEAM.Transparency = BEAM.Transparency - 0.1
1601
        end
1602
        local STARTPOS = Gun1.CFrame.p
1603
        local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
1604
        local DISTANCE = (STARTPOS - ENDPOS).Magnitude
1605
        BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(90),RAD(0),RAD(0))
1606
        BEAM.Size = VT(1,DISTANCE,1)
1607
        WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
1608
        WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1609
        WACKYEFFECT({Time = 35, EffectType = "Block", Size = VT(4,4,4), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1610
        WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(19,19,19), Size2 = VT(10,10,10), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,45), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
1611
        CamShake(4,4)
1612
        GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1613
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1614
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1615
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1616
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1617
        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)
1618
        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)
1619
        if ENDHIT ~= nil then
1620
            if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
1621
                if ENDHIT.Parent:FindFirstChildOfClass("Humanoid") then
1622
                    Banish(ENDHIT.Parent)
1623
                end
1624
            end
1625
        end
1626
    until LOOP.Playing == false
1627
    BEAM:remove()
1628
    GYRO:remove()
1629
    ATTACK = false
1630
end
1631
1632
function Teleport()
1633
	ATTACK = true
1634
	Rooted = false
1635
	for i=0, 0.5, 0.1 / Animation_Speed do
1636
		Swait()
1637
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1638
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1639
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1640
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1641
                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)
1642
                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)
1643
	end
1644
	for e = 1, #BODY do
1645
		if BODY[e] ~= nil then
1646
			local STUFF = BODY[e]
1647
			local PART = STUFF[1]
1648
			if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "Gun1" and PART.Name ~= "Gun" and PART.Transparency ~= 1 then
1649
				local PRT = PART:Clone()
1650
				PRT.Anchored = true
1651
				PRT.CanCollide = false
1652
				PRT.Material = "Neon"
1653
				PRT.Color = C3(1,0,0)
1654
				PRT.Name = "WarpEffect"
1655
				PRT.Parent = Effects
1656
				PRT.CFrame = PART.CFrame
1657
				PRT:BreakJoints()
1658
				if PRT:FindFirstChildOfClass("Sound") then
1659
					PRT:FindFirstChildOfClass("Sound"):remove()
1660
				end
1661
				if PRT:FindFirstChildOfClass("Decal") then
1662
					PRT:FindFirstChildOfClass("Decal"):remove()
1663
				end
1664
				coroutine.resume(coroutine.create(function()
1665
					for i = 1, 500 do
1666
						Swait()
1667
						PRT.Transparency = PRT.Transparency + 1/100
1668
					end
1669
					PRT:remove()
1670
				end))
1671
			end
1672
		end
1673
	end
1674
        CamShake(1,1)
1675
	CreateSound(217767125, Torso, 10, 1)
1676
	local POS = RootPart.Orientation
1677
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
1678
        local HIT,POS = CastProperRay(RootPart.Position, Mouse.Hit.p, 1000, Character)
1679
        SpawnTrail(Gun1.Position,POS)
1680
	RootPart.Orientation = POS
1681
	RootJoint.Parent = RootPart
1682
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(3,8,3), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,10), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1683
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(6,5,6), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,10), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 3})
1684
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 1})
1685
        WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(19,19,19), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 1})
1686
        WACKYEFFECT({Time = 75, EffectType = "Ring", Size = VT(0.3,0.2,0.3), Size2 = VT(0.5,0.5,0.5), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 1})
1687
	for i=0, 0.5, 0.1 / Animation_Speed do
1688
		Swait()
1689
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1690
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1691
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1692
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1693
            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)
1694
            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)
1695
	end
1696
	for i=0, 0.1, 0.1 / Animation_Speed do
1697
		Swait()
1698
	    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1699
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1700
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1701
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1702
            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)
1703
            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)
1704
	end
1705
	ATTACK = false
1706
	Rooted = false
1707
end
1708
1709
1710
1711
1712
1713
1714
1715
1716
function SpectralBanishing()
1717
	ATTACK = true
1718
	Rooted = false
1719
	chatfunc("Your time has ended...", 20)
1720
	for i = 0, 5, 0.1 / Animation_Speed do
1721
		Swait()
1722
		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)
1723
		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)
1724
		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)
1725
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
1726
		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)
1727
		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)
1728
        end
1729
        local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
1730
        local LOOP = CreateSound("289315275", Gun1, 5, 1.2, false)
1731
        local MSH = IT("CylinderMesh",BEAM)
1732
        local STARTPOS = Gun1.CFrame.p
1733
        local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
1734
        local DISTANCE = (STARTPOS - ENDPOS).Magnitude
1735
        BEAM.CFrame = CF(STARTPOS,ENDPOS)
1736
        BEAM.Size = VT(1,100,1)
1737
        WACKYEFFECT({Time = 125, EffectType = "Sphere", Size = VT(55,55,55), Size2 = VT(44,44,44), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1738
        I = I + 1
1739
        if I <= 10 then
1740
            BEAM.Transparency = BEAM.Transparency - 0.1
1741
        end
1742
1743
	local ORB = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Alder"), "Orb", VT(0,0,0), true)
1744
	MakeForm(ORB,"Ball")
1745
	ORB.CFrame = CF(RootPart.Position+VT(0,8,0))
1746
	local A = IT("Attachment",ORB)
1747
	local LOOP = 0
1748
	for i = 1, 200 do
1749
		Swait()
1750
		LOOP = LOOP + 1
1751
		if LOOP >= 30 then
1752
			LOOP = 0
1753
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,0,5), Size2 = VT(ORB.Size.X,ORB.Size.X/5,ORB.Size.X), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1754
		end
1755
		ORB.Size = ORB.Size + VT(0.2,0.2,0.2)
1756
		ORB.CFrame = CF(RootPart.Position+VT(0,8+(ORB.Size.Y/2),0))
1757
	end
1758
	CreateSound(CHARGE,Torso,6,0.5,false)
1759
	for i = 1, 200 do
1760
		Swait()
1761
		LOOP = LOOP + 1
1762
		if LOOP >= 30 then
1763
			LOOP = 0
1764
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,0,5), Size2 = VT(ORB.Size.X,ORB.Size.X/5,ORB.Size.X), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1765
		end
1766
		ORB.Size = ORB.Size + VT(0.2,0.2,0.2)
1767
		ORB.CFrame = CF(RootPart.Position+VT(0,8+(ORB.Size.Y/2),0))
1768
	end
1769
	for i = 1, 400 do
1770
		Swait()
1771
		LOOP = LOOP + 1
1772
		if LOOP >= 30 then
1773
			LOOP = 0
1774
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,0,5), Size2 = VT(ORB.Size.X,ORB.Size.X/5,ORB.Size.X), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1775
		end
1776
		ORB.Size = ORB.Size + VT(0.2,0.2,0.2)
1777
		ORB.CFrame = CF(RootPart.Position+VT(0,8+(ORB.Size.Y/2),0))
1778
	end
1779
	wait(0.5)
1780
	CreateSound(FIREBALLSOUND,Effects,4,1,false)
1781
		ORB.CFrame = CF(ORB.Position,Mouse.Hit.p)
1782
		for i = 1, 1200 do
1783
			Swait()
1784
			ORB.CFrame = ORB.CFrame*CF(0,0,-1)
1785
			local HIT,HITPOS = Raycast(ORB.Position, ORB.CFrame.lookVector, ORB.Size.X/2.5, Character)
1786
			if HIT then
1787
				break
1788
			end
1789
		end
1790
        WACKYEFFECT({Time = 125, EffectType = "Sphere", Size = VT(55,55,55), Size2 = VT(66,66,66), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1791
        Swait(1)
1792
        WACKYEFFECT({Time = 125, EffectType = "Sphere", Size = VT(88,88,88), Size2 = VT(100,100,100), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1793
        WACKYEFFECT({Time = 150, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1794
        CamShake(5,15)
1795
	Swait()
1796
        WACKYEFFECT({Time = 125, EffectType = "Sphere", Size = VT(30,30,30), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 238353911, SoundPitch = 0.6, SoundVolume = 6})
1797
        WACKYEFFECT({Time = 40, EffectType = "Round Slash", Size = VT(0.3,0,0.3), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun1.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1798
        Wait(5)
1799
        local BALL = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
1800
        local LOOP = CreateSound("289315275", Gun1, 5, 1.2, false)
1801
        local MSH = IT("CylinderMesh",BALL)
1802
         local TOCH = BALL.Touched:Connect(function(hit)
1803
         if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
1804
            if hit.Parent:FindFirstChildOfClass("Humanoid") then
1805
                Banish(hit.Parent)
1806
            end
1807
         end
1808
         end)
1809
         if hit ~= nil then
1810
            if hit.Parent ~= workspace and hit.Parent.ClassName ~= "Folder" then
1811
                Banish(hit.Parent)
1812
            end
1813
        end
1814
         for i = 1, 3 do
1815
                        BALL.CFrame = CF(Gun1.Position)
1816
                        BALL.Size = VT(80,80,80)
1817
                        CamShake(5,25)
1818
			ApplyAoE(ORB.Position,ORB.Size.X*10,75,90,375,true)
1819
			CreateSound(EXPLOSIONLARGESOUND,Effects,2,1,false)
1820
			CreateSound(EXPLOSIONSMALLSOUND,Effects,4,1,false)
1821
			for i = 1, 3 do
1822
				WACKYEFFECT({Time = 360, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(20,20,20)*MRANDOM(5,20), Transparency = 0.6, Transparency2 = 1, CFrame = CF(Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,45), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = EXPLOSIONMEDIUMSOUND, SoundPitch = MRANDOM(8,12)/10, SoundVolume = MRANDOM(5,10)})
1823
			end
1824
			for i = 1, 3 do
1825
				WACKYEFFECT({Time = 320, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(20,20,20)*MRANDOM(5,20), Transparency = 0.6, Transparency2 = 1, CFrame = CF(Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,45), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Red".Color, SoundID = EXPLOSIONMEDIUMSOUND, SoundPitch = MRANDOM(8,12)/10, SoundVolume = MRANDOM(5,10)})
1826
			end
1827
			for i = 1, 15 do
1828
				WACKYEFFECT({Time = 320+(i*5), EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(25,25,25)*MRANDOM(5,20), Transparency = 0.8, Transparency2 = 1, CFrame = CF(Gun1.Position)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = MRANDOM(-15,15)/15, RotationY = MRANDOM(-15,15)/15, RotationZ = MRANDOM(-15,15)/15, Material = "Neon", Color = BRICKC"Crimson".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1829
			end
1830
			Swait()
1831
                for i = 0, 2, 0.1 / Animation_Speed do
1832
		Swait()
1833
		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)
1834
		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)
1835
		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)
1836
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
1837
		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)
1838
		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)
1839
                end
1840
                ATTACK = false
1841
	        Rooted = false
1842
                BEAM:remove()
1843
                BALL:remove()
1844
                SpectralBanishing1()
1845
                end
1846
         end   
1847
1848
1849
1850
1851
1852
function Intro()
1853
    coroutine.resume(coroutine.create(function()
1854
        ATTACK = true
1855
        Rooted = true
1856
        for i = 0, 3, 0.1 / Animation_Speed do
1857
            Swait()
1858
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1859
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1860
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1861
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1862
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1863
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1864
        end
1865
        CreateSound("649634100", Head, 10, 0.5)
1866
        for i = 0, 1, 0.1 / Animation_Speed do
1867
            Swait()
1868
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.5 / Animation_Speed)
1869
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1870
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1871
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1872
            RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1873
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1874
        end
1875
        local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1876
        repeat
1877
            Swait()
1878
            HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1879
        until HITFLOOR ~= nil
1880
        for i = 0, 0.5, 0.1 / Animation_Speed do
1881
            Swait()
1882
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(-5), RAD(0)), 0.5 / Animation_Speed)
1883
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1884
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0, -0.3) * ANGLES(RAD(0), RAD(0), RAD(8)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1885
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1886
            RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1887
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1888
        end
1889
        CreateSound("289842971", RightArm, 10, 1)
1890
        Debree(CF(RightArm.Position) * CF(0, -0.75, 0).p, 200)
1891
        Swait(45)
1892
        Swait(5)
1893
        for i = 0, 1, 0.1 / Animation_Speed do
1894
            Swait()
1895
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.5 / Animation_Speed)
1896
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1897
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1.25, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1898
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1899
            RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1900
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1901
        end
1902
        VALUE1 = true
1903
        Swait(10)
1904
        ATTACK = false
1905
        Rooted = false
1906
    end))
1907
end
1908
1909
1910
1911
1912
--//=================================\\
1913
--||	  ASSIGN THINGS TO KEYS
1914
--\\=================================//
1915
1916
function MouseDown(Mouse)
1917
	if ATTACK == false then
1918
	end
1919
end
1920
1921
function MouseUp(Mouse)
1922
HOLD = false
1923
end
1924
1925
function KeyDown(Key)
1926
	KEYHOLD = true
1927
	if Key == "z" and ATTACK == false then
1928
		Banisher_Bullet()
1929
	end
1930
1931
	if Key == "b" and ATTACK == false then
1932
                SpectralBanishing()
1933
	end
1934
1935
	if Key == "c" and ATTACK == false then
1936
                Teleport()
1937
	end
1938
1939
	if Key == "v" and ATTACK == false then
1940
	end
1941
1942
	if Key == "x" and ATTACK == false then
1943
                BanishLaser()
1944
	end
1945
       
1946
        if Key == "1" and ATTACK == false then
1947
		               chatfunc(UnBanishTaunts[MRANDOM(1,#UnBanishTaunts)])
1948
			       TOBANISH = {}
1949
	end
1950
end
1951
1952
function KeyUp(Key)
1953
	KEYHOLD = false
1954
end
1955
1956
	Mouse.Button1Down:connect(function(NEWKEY)
1957
		MouseDown(NEWKEY)
1958
	end)
1959
	Mouse.Button1Up:connect(function(NEWKEY)
1960
		MouseUp(NEWKEY)
1961
	end)
1962
	Mouse.KeyDown:connect(function(NEWKEY)
1963
		KeyDown(NEWKEY)
1964
	end)
1965
	Mouse.KeyUp:connect(function(NEWKEY)
1966
		KeyUp(NEWKEY)
1967
	end)
1968
1969
--//=================================\\
1970
--\\=================================//
1971
1972
1973
function unanchor()
1974
	if UNANCHOR == true then
1975
		g = Character:GetChildren()
1976
		for i = 1, #g do
1977
			if g[i].ClassName == "Part" then
1978
				g[i].Anchored = false
1979
			end
1980
		end
1981
	end
1982
end
1983
1984
1985
--//=================================\\
1986
--||	WRAP THE WHOLE SCRIPT UP
1987
--\\=================================//
1988
1989
Humanoid.Changed:connect(function(Jump)
1990
	if Jump == "Jump" and (Disable_Jump == true) then
1991
		Humanoid.Jump = false
1992
	end
1993
end)
1994
1995
local CONNECT = nil
1996
1997
while true do
1998
	Swait()
1999
	ANIMATE.Parent = nil
2000
	if Character:FindFirstChildOfClass("Humanoid") == nil then
2001
		Humanoid = IT("Humanoid",Character)
2002
	end
2003
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
2004
	    v:Stop();
2005
	end
2006
	SINE = SINE + CHANGE
2007
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2008
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2009
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
2010
	local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
2011
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2012
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
2013
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2014
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2015
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2016
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2017
	elseif ANIM ~= "Walk" or TORSOVELOCITY < 1 then
2018
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2019
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2020
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2021
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2022
	end
2023
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2024
		ANIM = "Jump"
2025
		if ATTACK == false then
2026
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2027
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2028
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2029
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2030
			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)
2031
			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)
2032
		end
2033
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2034
		ANIM = "Fall"
2035
		if ATTACK == false then
2036
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2037
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2038
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(55), RAD(0), RAD(55)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2039
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2040
			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)
2041
			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)
2042
		end
2043
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2044
		ANIM = "Idle"
2045
		if ATTACK == false then
2046
			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)
2047
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2048
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2049
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2050
			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)
2051
			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)
2052
		end
2053
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2054
		ANIM = "Walk"
2055
		WALK = WALK + 1 / Animation_Speed
2056
		if WALK >= 15 - 5 * (Humanoid.WalkSpeed / 16 / Player_Size) then
2057
			WALK = 0
2058
			if WALKINGANIM == true then
2059
				WALKINGANIM = false
2060
			elseif WALKINGANIM == false then
2061
				WALKINGANIM = true
2062
			end
2063
		end
2064
		if ATTACK == false then
2065
			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)
2066
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2067
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2068
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2069
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2070
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2071
		end
2072
	end
2073
	unanchor()
2074
        refit()
2075
	Humanoid.MaxHealth = "inf"
2076
	Humanoid.Health = "inf"
2077
	if Rooted == false then
2078
		Disable_Jump = false
2079
		Humanoid.WalkSpeed = Speed
2080
	elseif Rooted == true then
2081
		Disable_Jump = true
2082
		Humanoid.WalkSpeed = 0
2083
	end
2084
        if MRANDOM(1,25) == 1 then
2085
                        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(MRANDOM(-25,25)), RAD(MRANDOM(-25,25)), RAD(MRANDOM(-25,25))), 1)
2086
        end
2087
        if FADERS == true then
2088
		if MRANDOM(1,7) == 1 then
2089
			CharacterFade(C3(1,0,0),65,R_RANDOM(Torso.CFrame,0.5).p)
2090
		end
2091
	end
2092
        sick.Parent = Torso
2093
	sick:resume()
2094
	sick.Volume = 1.25
2095
	sick.Pitch = 1.01
2096
	sick.SoundId = "rbxassetid://1140442110"
2097
	sick.Name = "BanishV5Music"
2098
        if VALUE1 == true then
2099
    elseif VALUE1 == false then
2100
        if ATTACK == false then
2101
            Intro()
2102
        end
2103
    end
2104
end
2105
2106
--//=================================\\
2107
--\\=================================//
2108
2109
2110
2111
2112
2113
--//====================================================\\--
2114
--||			  		 END OF SCRIPT
2115
--\\====================================================//--