View difference between Paste ID: RiU141p0 and VzmA8sHF
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
2
print("FE Compatibility: by WaverlyCole & Mokiros")
3
InternalData = {}
4
do
5
	script.Parent = owner.Character
6
	local Event = Instance.new("RemoteEvent")
7
	Event.Name = "UserInput"
8
	local function NewFakeEvent()
9
		local Fake = {fakeEvent=true,Connect=function(self,Func)self.Function=Func end}Fake.connect = Fake.Connect
10
		return Fake
11
	end
12
	local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
13
	local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
14
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
15
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
16
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
17
	local function TriggerEvent(self,Event,...)
18
		local Trigger = Mouse[Event]
19
		if Trigger and Trigger.fakeEvent and Trigger.Function then
20
			Trigger.Function(...)
21
		end
22
	end
23
	Mouse.TrigEvent = TriggerEvent
24
	UserInputService.TrigEvent = TriggerEvent
25
	Event.OnServerEvent:Connect(function(FiredBy,Input)
26
		if FiredBy.Name ~= owner.Name then end
27
		if Input.MouseEvent then
28
			Mouse.Target = Input.Target
29
			Mouse.Hit = Input.Hit
30
		else
31
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
32
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then
33
				return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up")
34
			end
35
			for _,Action in pairs(ContextActionService.Actions) do
36
				for _,Key in pairs(Action.Keys) do
37
					if Key==Input.KeyCode then
38
						Action.Function(Action.Name,Input.UserInputState,Input)
39
					end
40
				end
41
			end
42
			Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
43
			UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
44
		end
45
	end)
46
	InternalData["Mouse"] = Mouse
47
	InternalData["ContextActionService"] = ContextActionService
48
	InternalData["UserInputService"] = UserInputService
49
	Event.Parent = NLS([[
50
		local Player = owner
51
		local Event = script:WaitForChild("UserInput")
52
		local UserInputService = game:GetService("UserInputService")
53
		local Mouse = Player:GetMouse()
54
		local Input = function(Input,gameProcessedEvent)
55
			if gameProcessedEvent then return end
56
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
57
		end
58
		UserInputService.InputBegan:Connect(Input)
59
		UserInputService.InputEnded:Connect(Input)
60
		local Hit,Target
61
		while wait(1/30) do
62
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
63
				Hit,Target = Mouse.Hit,Mouse.Target
64
				Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
65
			end
66
		end
67
	]],owner.Character)
68
end
69
RealGame = game;game = setmetatable({},{
70
	__index = function (self,Index)
71
		local Sandbox = function (Thing)
72
			if Thing:IsA("Player") then
73
				local RealPlayer = Thing
74
				return setmetatable({},{
75
					__index = function (self,Index)
76
						local Type = type(RealPlayer[Index])
77
						if Type == "function" then
78
							if Index:lower() == "getmouse" or Index:lower() == "mouse" then
79
								return function (self)
80
									return InternalData["Mouse"]
81
								end
82
							end
83
							return function (self,...)
84
								return RealPlayer[Index](RealPlayer,...)
85
							end
86
						else
87
							if Index == "PlrObj" then
88
								return RealPlayer
89
							end
90
							return RealPlayer[Index]
91
						end
92
					end;
93
					__tostring = function(self)
94
						return RealPlayer.Name
95
					end
96
				})
97
			end
98
		end
99
		if RealGame[Index] then
100
			local Type = type(RealGame[Index])
101
			if Type == "function" then
102
				if Index:lower() == "getservice" or Index:lower() == "service" then
103
					return function (self,Service)
104
						if Service:lower() == "players" then
105
							return setmetatable({},{
106
								__index = function (self2,Index2)
107
									local RealService = RealGame:GetService(Service)
108
									local Type2 = type(Index2)
109
									if Type2 == "function" then
110
										return function (self,...)
111
											return RealService[Index2](RealService,...)
112
										end
113
									else
114
										if Index2:lower() == "localplayer" then
115
											return Sandbox(owner)
116
										end
117
										return RealService[Index2]
118
									end
119
								end;
120
								__tostring = function(self)
121
									return RealGame:GetService(Service).Name
122
								end
123
							})
124
						elseif Service:lower() == "contextactionservice" then
125
							return InternalData["ContextActionService"]
126
						elseif Service:lower() == "contextactionservice" then
127
							return InternalData["UserInputService"]
128
						elseif Service:lower() == "runservice" then
129
							return setmetatable({},{
130
								__index = function(self2,Index2)
131
									local RealService = RealGame:GetService(Service)
132
									local Type2 = type(Index2)
133
									if Type2 == "function" then
134
										return function (self,...)
135
											return RealService[Index2](RealService,...)
136
										end
137
									else
138
										if Index2:lower() == "bindtorenderstep" then
139
											return function (self,Name,Priority,Function)
140
												return RealGame:GetService("RunService").Stepped:Connect(Function)
141
											end
142
										end
143
										if Index2:lower() == "renderstepped" then
144
											return RealService["Stepped"]
145
										end
146
										return RealService[Index2]
147
									end
148
								end
149
							})
150
						else
151
							return RealGame:GetService(Service)
152
						end
153
					end
154
				end
155
				return function (self,...)
156
					return RealGame[Index](RealGame,...)
157
				end
158
			else
159
				if game:GetService(Index) then
160
					return game:GetService(Index)
161
				end
162
				return RealGame[Index]
163
			end
164
		else
165
			return nil
166
		end
167
	end
168
});Game = game;owner = game:GetService("Players").LocalPlayer;script = {}
169
print("Complete! Running...")
170
171
172
--//Paste script below this line.
173
174
wait(0.2)
175
Player = game:GetService("Players").LocalPlayer
176
PlayerGui = Player.PlayerGui
177
Cam = workspace.CurrentCamera
178
Backpack = Player.Backpack
179
Character = Player.Character
180
Humanoid = Character.Humanoid
181
Mouse = Player:GetMouse()
182
RootPart = Character.HumanoidRootPart
183
Torso = Character.Torso
184
Head = Character.Head
185
RightArm = Character["Right Arm"]
186
LeftArm = Character["Left Arm"]
187
RightLeg = Character["Right Leg"]
188
LeftLeg = Character["Left Leg"]
189
RootJoint = RootPart.RootJoint
190
Neck = Torso.Neck
191
RightShoulder = Torso["Right Shoulder"]
192
LeftShoulder = Torso["Left Shoulder"]
193
RightHip = Torso["Right Hip"]
194
LeftHip = Torso["Left Hip"]
195
local LastBolt
196
local LightningBolts = {}
197
local GunPoint
198
IT = Instance.new
199
CF = CFrame.new
200
VT = Vector3.new
201
RAD = math.rad
202
C3 = Color3.new
203
UD2 = UDim2.new
204
BRICKC = BrickColor.new
205
ANGLES = CFrame.Angles
206
EULER = CFrame.fromEulerAnglesXYZ
207
COS = math.cos
208
ACOS = math.acos
209
SIN = math.sin
210
ASIN = math.asin
211
ABS = math.abs
212
MRANDOM = math.random
213
FLOOR = math.floor
214
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
215
	local NEWMESH = IT(MESH)
216
	if MESH == "SpecialMesh" then
217
		NEWMESH.MeshType = MESHTYPE
218
		if MESHID ~= "nil" and MESHID ~= "" then
219
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id=" .. MESHID
220
		end
221
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
222
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id=" .. TEXTUREID
223
		end
224
	end
225
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
226
	NEWMESH.Scale = SCALE
227
	NEWMESH.Parent = PARENT
228
	return NEWMESH
229
end
230
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
231
	local NEWPART = IT("Part")
232
	NEWPART.formFactor = FORMFACTOR
233
	NEWPART.Reflectance = REFLECTANCE
234
	NEWPART.Transparency = TRANSPARENCY
235
	NEWPART.CanCollide = false
236
	NEWPART.Locked = true
237
	NEWPART.Anchored = true
238
	if ANCHOR == false then
239
		NEWPART.Anchored = false
240
	end
241
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
242
	NEWPART.Name = NAME
243
	NEWPART.Size = SIZE
244
	NEWPART.Position = Torso.Position
245
	NEWPART.Material = MATERIAL
246
	NEWPART:BreakJoints()
247
	NEWPART.Parent = PARENT
248
	return NEWPART
249
end
250
Player_Size = 1
251
Animation_Speed = 3
252
Frame_Speed = 0.016666666666666666
253
local Speed = 16
254
local Effects2 = {}
255
local weldBetween = function(a, b)
256
	local weldd = Instance.new("ManualWeld")
257
	weldd.Part0 = a
258
	weldd.Part1 = b
259
	weldd.C0 = CFrame.new()
260
	weldd.C1 = b.CFrame:inverse() * a.CFrame
261
	weldd.Parent = a
262
	return weldd
263
end
264
function createaccessory(attachmentpart, mesh, texture, scale, offset, color)
265
	local acs = Instance.new("Part")
266
	acs.CanCollide = false
267
	acs.Anchored = false
268
	acs.Size = Vector3.new(0, 0, 0)
269
	acs.CFrame = attachmentpart.CFrame
270
	acs.Parent = Character
271
	acs.BrickColor = color
272
	local meshs = Instance.new("SpecialMesh")
273
	meshs.MeshId = mesh
274
	meshs.TextureId = texture
275
	meshs.Parent = acs
276
	meshs.Scale = scale
277
	meshs.Offset = offset
278
	weldBetween(attachmentpart, acs)
279
end
280
function createbodypart(TYPE, COLOR, PART, OFFSET, SIZE)
281
	if TYPE == "Gem" then
282
		local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0, 0, 0))
283
		acs.Anchored = false
284
		acs.CanCollide = false
285
		acs.CFrame = PART.CFrame
286
		local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
287
		weldBetween(PART, acs)
288
	elseif TYPE == "Skull" then
289
		local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0, 0, 0))
290
		acs.Anchored = false
291
		acs.CanCollide = false
292
		acs.CFrame = PART.CFrame
293
		local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
294
		weldBetween(PART, acs)
295
	elseif TYPE == "Eye" then
296
		local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0, 0, 0))
297
		acs.Anchored = false
298
		acs.CanCollide = false
299
		acs.CFrame = PART.CFrame
300
		local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
301
		weldBetween(PART, acs)
302
	end
303
end
304
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
305
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
306
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
307
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
308
local CHANGEDEFENSE = 0
309
local CHANGEDAMAGE = 0
310
local CHANGEMOVEMENT = 0
311
local ANIM = "Idle"
312
local ATTACK = false
313
local EQUIPPED = false
314
local HOLD = false
315
local COMBO = 1
316
local Rooted = false
317
local SINE = 0
318
local KEYHOLD = false
319
local CHANGE = 2 / Animation_Speed
320
local WALKINGANIM = false
321
local WALK = 0
322
local VALUE1 = false
323
local VALUE2 = false
324
local ROBLOXIDLEANIMATION = IT("Animation")
325
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
326
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
327
local WEAPONGUI = IT("ScreenGui", PlayerGui)
328
WEAPONGUI.Name = "Weapon GUI"
329
local Weapon = IT("Model")
330
Weapon.Name = "Adds"
331
local Delete = IT("Model", Character)
332
Delete.Name = "Those who must be banished."
333
local Effects = IT("Folder", Weapon)
334
Effects.Name = "Effects"
335
local ANIMATOR = Humanoid.Animator
336
local ANIMATE = Character.Animate
337
local HITPLAYERSOUNDS = {
338
	"263032172",
339
	"263032182",
340
	"263032200",
341
	"263032221",
342
	"263032252",
343
	"263033191"
344
}
345
local HITARMORSOUNDS = {
346
	"199149321",
347
	"199149338",
348
	"199149367",
349
	"199149409",
350
	"199149452"
351
}
352
local HITWEAPONSOUNDS = {
353
	"199148971",
354
	"199149025",
355
	"199149072",
356
	"199149109",
357
	"199149119"
358
}
359
local HITBLOCKSOUNDS = {"199148933", "199148947"}
360
local UNANCHOR = true
361
local SKILLTEXTCOLOR = C3(1, 0, 0)
362
ArtificialHB = Instance.new("BindableEvent", script)
363
ArtificialHB.Name = "ArtificialHB"
364
script:WaitForChild("ArtificialHB")
365
frame = Frame_Speed
366
tf = 0
367
allowframeloss = false
368
tossremainder = false
369
lastframe = tick()
370
script.ArtificialHB:Fire()
371
game:GetService("RunService").Heartbeat:connect(function(s, p)
372
	tf = tf + s
373
	if tf >= frame then
374
		if allowframeloss then
375
			script.ArtificialHB:Fire()
376
			lastframe = tick()
377
		else
378
			for i = 1, math.floor(tf / frame) do
379
				script.ArtificialHB:Fire()
380
			end
381
			lastframe = tick()
382
		end
383
		if tossremainder then
384
			tf = 0
385
		else
386
			tf = tf - frame * math.floor(tf / frame)
387
		end
388
	end
389
end)
390
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
391
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
392
end
393
function PositiveAngle(NUMBER)
394
	if NUMBER >= 0 then
395
		NUMBER = 0
396
	end
397
	return NUMBER
398
end
399
function NegativeAngle(NUMBER)
400
	if NUMBER <= 0 then
401
		NUMBER = 0
402
	end
403
	return NUMBER
404
end
405
function Swait(NUMBER)
406
	if NUMBER == 0 or NUMBER == nil then
407
		ArtificialHB.Event:wait()
408
	else
409
		for i = 1, NUMBER do
410
			ArtificialHB.Event:wait()
411
		end
412
	end
413
end
414
function QuaternionFromCFrame(cf)
415
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
416
	local trace = m00 + m11 + m22
417
	if trace > 0 then
418
		local s = math.sqrt(1 + trace)
419
		local recip = 0.5 / s
420
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
421
	else
422
		local i = 0
423
		if m00 < m11 then
424
			i = 1
425
		end
426
		if m22 > (i == 0 and m00 or m11) then
427
			i = 2
428
		end
429
		if i == 0 then
430
			local s = math.sqrt(m00 - m11 - m22 + 1)
431
			local recip = 0.5 / s
432
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
433
		elseif i == 1 then
434
			local s = math.sqrt(m11 - m22 - m00 + 1)
435
			local recip = 0.5 / s
436
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
437
		elseif i == 2 then
438
			local s = math.sqrt(m22 - m00 - m11 + 1)
439
			local recip = 0.5 / s
440
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
441
		end
442
	end
443
end
444
function QuaternionToCFrame(px, py, pz, x, y, z, w)
445
	local xs, ys, zs = x + x, y + y, z + z
446
	local wx, wy, wz = w * xs, w * ys, w * zs
447
	local xx = x * xs
448
	local xy = x * ys
449
	local xz = x * zs
450
	local yy = y * ys
451
	local yz = y * zs
452
	local zz = z * zs
453
	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))
454
end
455
function QuaternionSlerp(a, b, t)
456
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
457
	local startInterp, finishInterp
458
	if cosTheta >= 1.0E-4 then
459
		if 1 - cosTheta > 1.0E-4 then
460
			local theta = ACOS(cosTheta)
461
			local invSinTheta = 1 / SIN(theta)
462
			startInterp = SIN((1 - t) * theta) * invSinTheta
463
			finishInterp = SIN(t * theta) * invSinTheta
464
		else
465
			startInterp = 1 - t
466
			finishInterp = t
467
		end
468
	elseif 1 + cosTheta > 1.0E-4 then
469
		local theta = ACOS(-cosTheta)
470
		local invSinTheta = 1 / SIN(theta)
471
		startInterp = SIN((t - 1) * theta) * invSinTheta
472
		finishInterp = SIN(t * theta) * invSinTheta
473
	else
474
		startInterp = t - 1
475
		finishInterp = t
476
	end
477
	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
478
end
479
function Clerp(a, b, t)
480
	local qa = {
481
		QuaternionFromCFrame(a)
482
	}
483
	local qb = {
484
		QuaternionFromCFrame(b)
485
	}
486
	local ax, ay, az = a.x, a.y, a.z
487
	local bx, by, bz = b.x, b.y, b.z
488
	local _t = 1 - t
489
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
490
end
491
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
492
	local frame = IT("Frame")
493
	frame.BackgroundTransparency = TRANSPARENCY
494
	frame.BorderSizePixel = BORDERSIZEPIXEL
495
	frame.Position = POSITION
496
	frame.Size = SIZE
497
	frame.BackgroundColor3 = COLOR
498
	frame.BorderColor3 = BORDERCOLOR
499
	frame.Name = NAME
500
	frame.Parent = PARENT
501
	return frame
502
end
503
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
504
	local label = IT("TextLabel")
505
	label.BackgroundTransparency = 1
506
	label.Size = UD2(1, 0, 1, 0)
507
	label.Position = UD2(0, 0, 0, 0)
508
	label.TextColor3 = TEXTCOLOR
509
	label.TextStrokeTransparency = STROKETRANSPARENCY
510
	label.TextTransparency = TRANSPARENCY
511
	label.FontSize = TEXTFONTSIZE
512
	label.Font = TEXTFONT
513
	label.BorderSizePixel = BORDERSIZEPIXEL
514
	label.TextScaled = false
515
	label.Text = TEXT
516
	label.Name = NAME
517
	label.Parent = PARENT
518
	return label
519
end
520
function NoOutlines(PART)
521
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
522
end
523
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
524
	local NEWWELD = IT(TYPE)
525
	NEWWELD.Part0 = PART0
526
	NEWWELD.Part1 = PART1
527
	NEWWELD.C0 = C0
528
	NEWWELD.C1 = C1
529
	NEWWELD.Parent = PARENT
530
	return NEWWELD
531
end
532
local SOUND = IT("Sound", nil)
533
function CreateSound(ID, PARENT, VOLUME, PITCH)
534
	local NEWSOUND
535
	coroutine.resume(coroutine.create(function()
536
		NEWSOUND = SOUND:Clone()
537
		NEWSOUND.Parent = PARENT
538
		NEWSOUND.Volume = VOLUME
539
		NEWSOUND.Pitch = PITCH
540
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
541
		NEWSOUND:play()
542
		repeat
543
			Swait()
544
		until NEWSOUND.Playing == false
545
		NEWSOUND:remove()
546
	end))
547
	return NEWSOUND
548
end
549
function CFrameFromTopBack(at, top, back)
550
	local right = top:Cross(back)
551
	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)
552
end
553
function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
554
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
555
	local mesh = IT("SpecialMesh", wave)
556
	mesh.MeshType = "FileMesh"
557
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
558
	mesh.Scale = SIZE
559
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
560
	wave.CFrame = CFRAME
561
	coroutine.resume(coroutine.create(function(PART)
562
		for i = 1, WAIT do
563
			Swait()
564
			mesh.Scale = mesh.Scale + GROW
565
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
566
			if DOESROT == true then
567
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
568
			end
569
			wave.Transparency = wave.Transparency + 0.5 / WAIT
570
			if wave.Transparency > 0.99 then
571
				wave:remove()
572
			end
573
		end
574
	end))
575
end
576
function CreateCrown(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
577
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
578
	local mesh = IT("SpecialMesh", wave)
579
	mesh.MeshType = "FileMesh"
580
	mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
581
	mesh.Scale = SIZE
582
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
583
	wave.CFrame = CFRAME
584
	coroutine.resume(coroutine.create(function(PART)
585
		for i = 1, WAIT do
586
			Swait()
587
			mesh.Scale = mesh.Scale + GROW
588
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
589
			if DOESROT == true then
590
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
591
			end
592
			wave.Transparency = wave.Transparency + 0.5 / WAIT
593
			if wave.Transparency > 0.99 then
594
				wave:remove()
595
			end
596
		end
597
	end))
598
end
599
function CreateIceCrown(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
600
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
601
	local mesh = IT("SpecialMesh", wave)
602
	mesh.MeshType = "FileMesh"
603
	mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
604
	mesh.Scale = SIZE
605
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
606
	wave.CFrame = CFRAME
607
	coroutine.resume(coroutine.create(function(PART)
608
		for i = 1, WAIT do
609
			Swait()
610
			mesh.Scale = mesh.Scale + GROW
611
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
612
			if DOESROT == true then
613
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
614
			end
615
			wave.Transparency = wave.Transparency + 0.5 / WAIT
616
			if wave.Transparency > 0.99 then
617
				wave:remove()
618
			end
619
		end
620
	end))
621
end
622
function CreateSpikeball(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
623
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
624
	local mesh = IT("SpecialMesh", wave)
625
	mesh.MeshType = "FileMesh"
626
	mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
627
	mesh.Scale = SIZE
628
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
629
	wave.CFrame = CFRAME
630
	coroutine.resume(coroutine.create(function(PART)
631
		for i = 1, WAIT do
632
			Swait()
633
			mesh.Scale = mesh.Scale + GROW
634
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
635
			if DOESROT == true then
636
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
637
			end
638
			wave.Transparency = wave.Transparency + 0.5 / WAIT
639
			if wave.Transparency > 0.99 then
640
				wave:remove()
641
			end
642
		end
643
	end))
644
end
645
function CreateSwirl(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
646
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
647
	local mesh = IT("SpecialMesh", wave)
648
	mesh.MeshType = "FileMesh"
649
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
650
	mesh.Scale = SIZE
651
	wave.CFrame = CFRAME
652
	coroutine.resume(coroutine.create(function(PART)
653
		for i = 1, WAIT do
654
			Swait()
655
			mesh.Scale = mesh.Scale + GROW
656
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
657
			if DOESROT == true then
658
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
659
			end
660
			wave.Transparency = wave.Transparency + 0.5 / WAIT
661
			if wave.Transparency > 0.99 then
662
				wave:remove()
663
			end
664
		end
665
	end))
666
end
667
function CreateTornado(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
668
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
669
	local mesh = IT("SpecialMesh", wave)
670
	mesh.MeshType = "FileMesh"
671
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
672
	mesh.Scale = SIZE
673
	wave.CFrame = CFRAME
674
	coroutine.resume(coroutine.create(function(PART)
675
		for i = 1, WAIT do
676
			Swait()
677
			mesh.Scale = mesh.Scale + GROW
678
			if DOESROT == true then
679
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
680
			end
681
			wave.Transparency = wave.Transparency + 0.5 / WAIT
682
			if wave.Transparency > 0.99 then
683
				wave:remove()
684
			end
685
		end
686
	end))
687
end
688
function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
689
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
690
	local mesh = IT("SpecialMesh", wave)
691
	mesh.MeshType = "FileMesh"
692
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
693
	mesh.Scale = SIZE
694
	mesh.Offset = VT(0, 0, 0)
695
	wave.CFrame = CFRAME
696
	coroutine.resume(coroutine.create(function(PART)
697
		for i = 1, WAIT do
698
			Swait()
699
			mesh.Scale = mesh.Scale + GROW
700
			if DOESROT == true then
701
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
702
			end
703
			wave.Transparency = wave.Transparency + 0.5 / WAIT
704
			if wave.Transparency > 0.99 then
705
				wave:remove()
706
			end
707
		end
708
	end))
709
end
710
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
711
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
712
	local mesh = IT("SpecialMesh", wave)
713
	mesh.MeshType = "Sphere"
714
	mesh.Scale = SIZE
715
	mesh.Offset = VT(0, 0, 0)
716
	wave.CFrame = CFRAME
717
	coroutine.resume(coroutine.create(function(PART)
718
		for i = 1, WAIT do
719
			Swait()
720
			mesh.Scale = mesh.Scale + GROW
721
			wave.Transparency = wave.Transparency + 1 / WAIT
722
			if wave.Transparency > 0.99 then
723
				wave:remove()
724
			end
725
		end
726
	end))
727
end
728
function MagicBlock(SIZE, WAIT, CFRAME, COLOR, GROW)
729
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE, SIZE, SIZE), true)
730
	local mesh = IT("BlockMesh", wave)
731
	wave.CFrame = CFRAME
732
	coroutine.resume(coroutine.create(function(PART)
733
		for i = 1, WAIT do
734
			Swait()
735
			mesh.Scale = mesh.Scale + GROW
736
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360, 360)), RAD(math.random(-360, 360)), RAD(math.random(-360, 360)))
737
			wave.Transparency = wave.Transparency + 1 / WAIT
738
			if wave.Transparency > 0.99 then
739
				wave:remove()
740
			end
741
		end
742
	end))
743
end
744
function MakeForm(PART, TYPE)
745
	if TYPE == "Cyl" then
746
		local MSH = IT("CylinderMesh", PART)
747
	elseif TYPE == "Ball" then
748
		local MSH = IT("SpecialMesh", PART)
749
		MSH.MeshType = "Sphere"
750
	elseif TYPE == "Wedge" then
751
		local MSH = IT("SpecialMesh", PART)
752
		MSH.MeshType = "Wedge"
753
	end
754
end
755
function CheckTableForString(Table, String)
756
	for i, v in pairs(Table) do
757
		if string.find(string.lower(String), string.lower(v)) then
758
			return true
759
		end
760
	end
761
	return false
762
end
763
function CheckIntangible(Hit)
764
	local ProjectileNames = {
765
		"Water",
766
		"Arrow",
767
		"Projectile",
768
		"Effect",
769
		"Rail",
770
		"Lightning",
771
		"Bullet"
772
	}
773
	if Hit and Hit.Parent and (not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid") then
774
		return true
775
	end
776
	return false
777
end
778
Debris = game:GetService("Debris")
779
BaseLightning = IT("Part")
780
BaseLightning.Anchored = true
781
BaseLightning.CanCollide = false
782
BaseLightning.Material = "Neon"
783
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
784
	local Ignore = type(Ignore) == "table" and Ignore or {Ignore}
785
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Vec * Length), Ignore)
786
	if RayHit and CheckIntangible(RayHit) then
787
		if DelayIfHit then
788
			wait()
789
		end
790
		RayHit, RayPos, RayNormal = CastZapRay(RayPos + Vec * 0.01, Vec, Length - (StartPos - RayPos).magnitude, Ignore, DelayIfHit)
791
	end
792
	return RayHit, RayPos, RayNormal
793
end
794
function Zap(Table)
795
	local StartPos, TargetPos, Character, Color = Table.StartPosition, Table.TargetPosition, Table.Character, Table.Color
796
	local Duration = Table.Duration or 2
797
	local FadeRate = Table.FadeRate or 0.05
798
	local Offset = Table.Offset or 2
799
	local Individualize = Table.Individualize or false
800
	local MaxRange = Table.MaxRange or 200
801
	local SegmentLength = Table.SegmentLength or 5
802
	local TimeToFade = Table.TimeToFade or 0.5
803
	local Ignore = Table.Ignore or {}
804
	local SIZE = Table.Size or 0.3
805
	if not (StartPos and TargetPos) or not Character then
806
		return
807
	end
808
	local LightningModel = IT("Folder", Effects)
809
	LightningModel.Name = "ZAPP"
810
	for i, v in pairs({Character, LightningModel}) do
811
		table.insert(Ignore, v)
812
	end
813
	local LastPos = StartPos
814
	local Direction = CFrame.new(StartPos, TargetPos).lookVector
815
	local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Direction, MaxRange, Ignore, false)
816
	local RayLength = (StartPos - RayPos).Magnitude
817
	local Struck = false
818
	local TotalSegments = math.ceil(RayLength / SegmentLength)
819
	Direction = CFrame.new(StartPos, RayPos).lookVector
820
	local LightningBolt = IT("Model", Effects)
821
	LightningBolt.Name = "Lightning"
822
	if not Individualize then
823
		table.insert(LightningBolts, LightningBolt)
824
	end
825
	LastBolt = LightningBolt
826
	Debris:AddItem(LightningBolt, Duration)
827
	LightningBolt.Parent = LightningModel
828
	for i = 1, TotalSegments do
829
		if not Struck then
830
			local Entropy = Vector3.new(math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset)
831
			local NewPos = StartPos + Direction * (RayLength * (i / TotalSegments)) + Entropy
832
			local SegmentVec = NewPos - LastPos
833
			local RayHit, RayPos, RayNormal = CastZapRay(LastPos, SegmentVec.Unit, SegmentVec.Magnitude, {Character, LightningModel}, false)
834
			local RayVec = LastPos - RayPos
835
			local LightningPart = BaseLightning:Clone()
836
			LightningPart.BrickColor = BrickColor.new(Color)
837
			LightningPart.Size = Vector3.new(SIZE, SIZE, RayVec.Magnitude)
838
			LightningPart.CFrame = CFrame.new(LastPos, RayPos) * CFrame.new(0, 0, -(RayVec.Magnitude / 2))
839
			table.insert(Effects2, {
840
				LightningPart,
841
				"Disappear",
842
				0.025,
843
				1,
844
				1,
845
				1,
846
				2
847
			})
848
			local CylinderMesh = IT("CylinderMesh", LightningPart)
849
			local OrigCF = LightningPart.CFrame
850
			LightningPart.Size = Vector3.new(LightningPart.Size.X, LightningPart.Size.Z, LightningPart.Size.Y)
851
			LightningPart.CFrame = OrigCF * CFrame.Angles(math.pi / 2, 0, 0)
852
			LightningPart.Parent = LightningBolt
853
			LastPos = NewPos
854
		end
855
	end
856
	return {
857
		RayHit = RayHit,
858
		RayPos = RayPos,
859
		RayNormal = RayNormal,
860
		LightningModel = LightningModel
861
	}
862
end
863
function turnto(position)
864
	RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
865
end
866
function chatfunc(text, waitt)
867
	local chat = coroutine.wrap(function()
868
		if Character:FindFirstChild("TalkingBillBoard") ~= nil then
869
			Character:FindFirstChild("TalkingBillBoard").Parent = nil
870
		end
871
		local naeeym2 = Instance.new("BillboardGui", Character)
872
		naeeym2.Size = UDim2.new(0, 100, 0, 40)
873
		naeeym2.StudsOffset = Vector3.new(0, 2, 0)
874
		naeeym2.Adornee = Character.Head
875
		naeeym2.Name = "TalkingBillBoard"
876
		naeeym2.AlwaysOnTop = true
877
		local tecks2 = Instance.new("TextLabel", naeeym2)
878
		tecks2.BackgroundTransparency = 1
879
		tecks2.BorderSizePixel = 0
880
		tecks2.Text = ""
881
		tecks2.Font = "Antique"
882
		tecks2.TextSize = 30
883
		tecks2.TextStrokeTransparency = 1
884
		tecks2.TextColor3 = SKILLTEXTCOLOR
885
		tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
886
		tecks2.Size = UDim2.new(1, 0, 0.5, 0)
887
		for i = 1, string.len(text) do
888
			if naeeym2.Parent ~= nil then
889
				CreateSound("418252437", Effects, 1, MRANDOM(9, 11) / 10)
890
			end
891
			tecks2.Text = string.sub(text, 1, i)
892
			Swait(3)
893
		end
894
		wait(waitt / 10)
895
		coroutine.resume(coroutine.create(function()
896
			for i = 1, 10 do
897
				tecks2.TextTransparency = tecks2.TextTransparency + 0.1
898
				Swait()
899
			end
900
			naeeym2:Destroy()
901
		end))
902
	end)
903
	chat()
904
end
905
for _, c in pairs(Weapon:GetChildren()) do
906
	if c.ClassName == "Part" then
907
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
908
	end
909
end
910
Weapon.Parent = Character
911
Humanoid.Died:connect(function()
912
	ATTACK = true
913
end)
914
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.8, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 1 Frame")
915
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.5, 0, 0.8, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 2 Frame")
916
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 3 Frame")
917
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.5, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 4 Frame")
918
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 5 Frame")
919
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher bullet", SKILLTEXTCOLOR, 8, "Antique", 0, 2, 1, "Text 1")
920
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Banishing rampage", SKILLTEXTCOLOR, 8, "Antique", 0, 2, 1, "Text 2")
921
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Warp vector", SKILLTEXTCOLOR, 8, "Antique", 0, 2, 1, "Text 3")
922
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Spectral banish", SKILLTEXTCOLOR, 8, "Antique", 0, 2, 1, "Text 4")
923
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] De-banish", SKILLTEXTCOLOR, 8, "Antique", 0, 2, 1, "Text 5")
924
function CastWarpOutlines(TARGET)
925
	coroutine.resume(coroutine.create(function()
926
		local T = TARGET:GetChildren()
927
		for i = 1, #T do
928
			local child = T[i]
929
			if child.ClassName == "Part" or child.ClassName == "MeshPart" then
930
				do
931
					local clone = child:Clone()
932
					clone.Parent = Effects
933
					clone.Anchored = true
934
					clone.CanCollide = false
935
					clone:ClearAllChildren()
936
					clone.CFrame = child.CFrame
937
					if clone.Name == "Head" then
938
						clone.Size = VT(clone.Size.Y, clone.Size.Y, clone.Size.Y)
939
					end
940
					if clone.ClassName == "MeshPart" then
941
						clone.TextureID = ""
942
					end
943
					clone.Color = C3(1, 0, 0)
944
					clone.Material = "Neon"
945
					coroutine.resume(coroutine.create(function()
946
						for i = 1, 100 do
947
							Swait()
948
							clone.Transparency = clone.Transparency + 0.01
949
							clone.Size = clone.Size + VT(0.001, 0.001, 0.001)
950
						end
951
						clone:remove()
952
					end))
953
				end
954
			end
955
		end
956
	end))
957
end
958
function killnearest(position, range, maxstrength)
959
	for i, v in ipairs(workspace:GetChildren()) do
960
		local body = v:GetChildren()
961
		for part = 1, #body do
962
			if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude and v.ClassName == "Model" then
963
				CastWarpOutlines(v)
964
				v:remove()
965
				if game.Players:FindFirstChild(v.Name) then
966
					local Value = IT("BoolValue", Delete)
967
					Value.Name = v.Name
968
				end
969
			end
970
		end
971
	end
972
end
973
function CastProperRay(StartPos, Vec, Length, Ignore)
974
	local Direction = CFrame.new(StartPos, Vec).lookVector
975
	local Ignore = type(Ignore) == "table" and Ignore or {Ignore}
976
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
977
	return RayHit, RayPos, RayNormal
978
end
979
function Debree(POS, SWAIT)
980
	coroutine.resume(coroutine.create(function()
981
		local HOLDER = IT("Model", Effects)
982
		HOLDER.Name = "Debree"
983
		local HITFLOOR = Raycast(POS, CF(POS, POS + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
984
		MagicSphere(VT(15, 1, 15), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
985
		MagicSphere(VT(13, 1, 13), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
986
		MagicSphere(VT(12, 1, 12), SWAIT, CF(POS), "Really red", VT(0, 0, 0))
987
		repeat
988
			Swait()
989
		until HITFLOOR ~= nil
990
		local O = 0
991
		for i = 1, 18 do
992
			do
993
				local Part = CreatePart(3, HOLDER, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(3, 3, 3))
994
				Part.CFrame = CF(CF(POS) * CF(10 - i, 0, O).p) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
995
				O = O - 2.25 + i / 4
996
				coroutine.resume(coroutine.create(function()
997
					Swait(SWAIT)
998
					for i = 1, 60 do
999
						Swait()
1000
						local RayHit, Way = CastProperRay(Part.Position, POS, 0.1, workspace)
1001
						Part.CFrame = CF(Way) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1002
					end
1003
					for i = 1, 50 do
1004
						Swait()
1005
						Part.Size = Part.Size * 0.9
1006
					end
1007
				end))
1008
			end
1009
		end
1010
		local O = 0
1011
		for i = 1, 18 do
1012
			do
1013
				local Part = CreatePart(3, HOLDER, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(3, 3, 3))
1014
				Part.CFrame = CF(CF(POS) * CF(10 - i, 0, O).p) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1015
				O = O + 2.25 - i / 4
1016
				coroutine.resume(coroutine.create(function()
1017
					Swait(SWAIT)
1018
					for i = 1, 60 do
1019
						Swait()
1020
						local RayHit, Way = CastProperRay(Part.Position, POS, 0.1, workspace)
1021
						Part.CFrame = CF(Way) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1022
					end
1023
					for i = 1, 50 do
1024
						Swait()
1025
						Part.Size = Part.Size * 0.9
1026
					end
1027
				end))
1028
			end
1029
		end
1030
		Swait(SWAIT + 110)
1031
		HOLDER:remove()
1032
	end))
1033
end
1034
function Intro()
1035
	coroutine.resume(coroutine.create(function()
1036
		ATTACK = true
1037
		Rooted = true
1038
		for i = 0, 3, 0.1 / Animation_Speed do
1039
			Swait()
1040
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1041
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1042
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1043
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1044
			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)
1045
			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)
1046
		end
1047
		CreateSound("649634100", Head, 10, 0.5)
1048
		for i = 0, 1, 0.1 / Animation_Speed do
1049
			Swait()
1050
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.5 / Animation_Speed)
1051
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1052
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1053
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1054
			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)
1055
			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)
1056
		end
1057
		local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1058
		repeat
1059
			Swait()
1060
			HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1061
		until HITFLOOR ~= nil
1062
		for i = 0, 0.5, 0.1 / Animation_Speed do
1063
			Swait()
1064
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(-5), RAD(0)), 0.5 / Animation_Speed)
1065
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1066
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0, -0.3) * ANGLES(RAD(0), RAD(0), RAD(8)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1067
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1068
			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)
1069
			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)
1070
		end
1071
		CreateSound("289842971", RightArm, 10, 1)
1072
		Debree(CF(RightArm.Position) * CF(0, -0.75, 0).p, 200)
1073
		Swait(45)
1074
		local Gun = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Gun", VT(0, 0, 0), false)
1075
		local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "430198390", "430198451", VT(0.02, 0.02, 0.02), VT(0, 0, 0))
1076
		local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.7, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
1077
		GunPoint = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Point blank", VT(0, 0, 0), false)
1078
		local HandleWeld = CreateWeldOrSnapOrMotor("Weld", GunPoint, RightArm, GunPoint, CF(0, -3.1, -0.8) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
1079
		local sick = Instance.new("Sound", Character)
1080
		sick.SoundId = "rbxassetid://1140442110"
1081
		sick.Looped = true
1082
		sick.Pitch = 1
1083
		sick.Volume = 1
1084
		sick:Play()
1085
		Swait(5)
1086
		for i = 0, 1, 0.1 / Animation_Speed do
1087
			Swait()
1088
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.5 / Animation_Speed)
1089
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1090
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1.25, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1091
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1092
			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)
1093
			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)
1094
		end
1095
		VALUE1 = true
1096
		Swait(10)
1097
		ATTACK = false
1098
		Rooted = false
1099
	end))
1100
end
1101
function BanishingBullet()
1102
	ATTACK = true
1103
	Rooted = false
1104
	for i = 0, 0.4, 0.1 / Animation_Speed do
1105
		Swait()
1106
		turnto(Mouse.Hit.p)
1107
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1108
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1109
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1110
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1111
		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)
1112
		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)
1113
	end
1114
	repeat
1115
		for i = 0, 0.2, 0.1 / Animation_Speed do
1116
			Swait()
1117
			turnto(Mouse.Hit.p)
1118
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1119
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1120
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1121
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1122
			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)
1123
			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)
1124
		end
1125
		CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
1126
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1127
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1128
		local RayHit, Way = CastProperRay(GunPoint.Position, Mouse.Hit.p, 1500, Character)
1129
		local distance = (GunPoint.Position - Way).magnitude
1130
		for i = 1, 5 do
1131
			local laser = Instance.new("Part", Effects)
1132
			laser.Transparency = 0
1133
			laser.CanCollide = false
1134
			laser.Anchored = true
1135
			laser.Color = C3(1, 0, 0)
1136
			laser.Material = "Neon"
1137
			laser.formFactor = Enum.FormFactor.Custom
1138
			laser.Size = Vector3.new(0.15, 0.15, distance)
1139
			laser.CFrame = CFrame.new(GunPoint.Position, Way) * CFrame.new(0, 0, -distance / 2)
1140
			MagicSphere(VT(0.1, 0.1, 0.1), 45, CF(Way), "Really red", VT(0.05, 0.05, 0.05))
1141
			for i = 1, 5 do
1142
				MagicSphere(VT(0.2, 0.2, 1), 65, CF(CF(Way) * CF(MRANDOM(-1, 1), MRANDOM(-1, 1), MRANDOM(-1, 1)).p, Way), "Really red", VT(0.001, 0.001, 0), 0.5)
1143
			end
1144
			table.insert(Effects2, {
1145
				laser,
1146
				"Disappear",
1147
				0.1,
1148
				1,
1149
				1,
1150
				1,
1151
				2
1152
			})
1153
			if RayHit ~= nil then
1154
				local v = RayHit.Parent
1155
				if v ~= nil and v.ClassName == "Model" then
1156
					CastWarpOutlines(v)
1157
					v.Parent = nil
1158
					if game.Players:FindFirstChild(v.Name) then
1159
						local Value = IT("BoolValue", Delete)
1160
						Value.Name = v.Name
1161
					end
1162
				end
1163
			end
1164
		end
1165
		for i = 0, 0.3, 0.1 / Animation_Speed do
1166
			Swait()
1167
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1168
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1169
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1170
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1171
			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)
1172
			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)
1173
		end
1174
	until KEYHOLD == false
1175
	ATTACK = false
1176
	Rooted = false
1177
end
1178
function WarpVector()
1179
	ATTACK = true
1180
	Rooted = true
1181
	for i = 0, 1, 0.1 / Animation_Speed do
1182
		Swait()
1183
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1184
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1185
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1186
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1187
		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.5 / Animation_Speed)
1188
		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.5 / Animation_Speed)
1189
	end
1190
	Debree(CF(RootPart.Position) * CF(0, -2.8, 0).p, 75)
1191
	UNANCHOR = false
1192
	RootPart.Anchored = true
1193
	for i = 0, 2, 0.1 / Animation_Speed do
1194
		Swait()
1195
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -10 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1196
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1197
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1198
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1199
		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.5 / Animation_Speed)
1200
		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.5 / Animation_Speed)
1201
	end
1202
	local POS = RootPart.Position
1203
	RootPart.CFrame = CF(CF(Mouse.Hit.p) * CF(0, 2.8, 0).p, POS)
1204
	Debree(CF(RootPart.Position) * CF(0, -2.5, 0).p, 150)
1205
	for i = 0, 2, 0.1 / Animation_Speed do
1206
		Swait()
1207
		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)
1208
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1209
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1210
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1211
		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.5 / Animation_Speed)
1212
		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.5 / Animation_Speed)
1213
	end
1214
	ATTACK = false
1215
	Rooted = false
1216
end
1217
function BanishingRampage()
1218
	ATTACK = true
1219
	Rooted = false
1220
	chatfunc("Be gone...", 3)
1221
	for i = 0, 2, 0.1 / Animation_Speed do
1222
		Swait()
1223
		turnto(Mouse.Hit.p)
1224
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.5 / Animation_Speed)
1225
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
1226
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -0.3) * ANGLES(RAD(25), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1227
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1228
		RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1229
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1230
	end
1231
	local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1232
	repeat
1233
		Swait()
1234
		HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1235
	until HITFLOOR ~= nil
1236
	CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
1237
	local SOUND = CreateSound("415700134", Effects, 10, 1.6)
1238
	CreateSound("138677306", Effects, 7, 1.2)
1239
	coroutine.resume(coroutine.create(function()
1240
		local CFRAME = RootPart.CFrame * CF(0, -1.2, -3)
1241
		local SIZE = 1
1242
		while true do
1243
			Swait()
1244
			for i = 1, 2 do
1245
				MagicSphere(VT(SIZE / 5, SIZE / 5, SIZE * 2), 65, CF(CFRAME * CF(MRANDOM(-5, 5), MRANDOM(-5, 5), MRANDOM(-5, 5)).p, CFRAME.p), "Really red", VT(0.001, 0.001, 0), 0.5)
1246
			end
1247
			do
1248
				local Part = CreatePart(3, Effects, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(SIZE / 5, SIZE / 5, SIZE / 5))
1249
				Part.CFrame = CFRAME * CF(SIZE / 1.5, -0.7, 0) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1250
				coroutine.resume(coroutine.create(function()
1251
					Swait(200)
1252
					Part.Anchored = false
1253
				end))
1254
				local Part = CreatePart(3, Effects, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(SIZE / 5, SIZE / 5, SIZE / 5))
1255
				Part.CFrame = CFRAME * CF(-SIZE / 1.5, -0.7, 0) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1256
				coroutine.resume(coroutine.create(function()
1257
					Swait(200)
1258
					Part.Anchored = false
1259
				end))
1260
				MagicSphere(VT(SIZE, SIZE, SIZE), 75, CFRAME, "Really red", VT(-SIZE / 75, -SIZE / 75, -SIZE / 75))
1261
				killnearest(CFRAME.p, SIZE, 0)
1262
				SIZE = SIZE + 2
1263
				CFRAME = CFRAME * CF(0, 0, -2)
1264
				if SOUND.Playing == false then
1265
					break
1266
				end
1267
			end
1268
		end
1269
	end))
1270
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1271
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1272
	for i = 0, 3, 0.1 / Animation_Speed do
1273
		Swait()
1274
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.5 / Animation_Speed)
1275
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(10), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
1276
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -0.3) * ANGLES(RAD(55), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1277
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1278
		RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1279
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1280
	end
1281
	ATTACK = false
1282
	Rooted = false
1283
end
1284
function SpectralBanishing()
1285
	ATTACK = true
1286
	Rooted = false
1287
	chatfunc("If you desire to be a ghost...", 20)
1288
	for i = 0, 5, 0.1 / Animation_Speed do
1289
		Swait()
1290
		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)
1291
		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)
1292
		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)
1293
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
1294
		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)
1295
		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)
1296
	end
1297
	chatfunc("Then move on to the afterlife!", 6)
1298
	CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
1299
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1300
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1301
	local RayHit, Way = CastProperRay(GunPoint.Position, CF(GunPoint.Position) * CF(0, 1500, 0).p, 1500, Character)
1302
	local distance = (GunPoint.Position - Way).magnitude
1303
	for i = 1, 5 do
1304
		local laser = Instance.new("Part", Effects)
1305
		laser.Transparency = 0
1306
		laser.CanCollide = false
1307
		laser.Anchored = true
1308
		laser.Color = C3(1, 0, 0)
1309
		laser.Material = "Neon"
1310
		laser.formFactor = Enum.FormFactor.Custom
1311
		laser.Size = Vector3.new(0.15, 0.15, distance)
1312
		laser.CFrame = CFrame.new(GunPoint.Position, Way) * CFrame.new(0, 0, -distance / 2)
1313
		table.insert(Effects2, {
1314
			laser,
1315
			"Disappear",
1316
			0.1,
1317
			1,
1318
			1,
1319
			1,
1320
			2
1321
		})
1322
	end
1323
	coroutine.resume(coroutine.create(function()
1324
		Swait(15)
1325
		local FILTER = IT("ColorCorrectionEffect", game.Lighting)
1326
		for i = 1, 25 do
1327
			Swait()
1328
			FILTER.TintColor = C3(1, 1 - i / 50, 1 - i / 50)
1329
		end
1330
		local GAME = game.Players:GetChildren()
1331
		for PLAYER = 1, #GAME do
1332
			do
1333
				local PLAY = GAME[PLAYER]
1334
				if PLAY.Character ~= nil and PLAY.Character.Parent ~= workspace then
1335
					PLAY.Character.Parent = nil
1336
					coroutine.resume(coroutine.create(function()
1337
						if PLAY.Character:FindFirstChild("HumanoidRootPart") then
1338
							PLAY.Character.Parent = workspace
1339
							local Value = IT("BoolValue", Delete)
1340
							Value.Name = PLAY.Name
1341
						end
1342
					end))
1343
				end
1344
			end
1345
		end
1346
		for i = 1, 25 do
1347
			Swait()
1348
			FILTER.TintColor = C3(1, 0.4980392156862745 + i / 50, 0.4980392156862745 + i / 50)
1349
		end
1350
	end))
1351
	for i = 0, 2, 0.1 / Animation_Speed do
1352
		Swait()
1353
		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)
1354
		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)
1355
		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)
1356
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
1357
		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)
1358
		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)
1359
	end
1360
	ATTACK = false
1361
	Rooted = false
1362
end
1363
function Taunt()
1364
	ATTACK = true
1365
	Rooted = true
1366
	CreateSound("649634100", Head, 10, 0.5)
1367
	for i = 1, 3 do
1368
		for i = 0, 0.7, 0.1 / Animation_Speed do
1369
			Swait()
1370
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
1371
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.5 / Animation_Speed)
1372
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(145)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.5)
1373
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-145)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * LEFTSHOULDERC0, 0.5)
1374
			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)
1375
			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)
1376
		end
1377
		for i = 0, 0.7, 0.1 / Animation_Speed do
1378
			Swait()
1379
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
1380
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
1381
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(145)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.5)
1382
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-145)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * LEFTSHOULDERC0, 0.5)
1383
			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)
1384
			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)
1385
		end
1386
	end
1387
	ATTACK = false
1388
	Rooted = false
1389
end
1390
function MouseDown(Mouse)
1391
	if ATTACK == false then
1392
	end
1393
end
1394
function MouseUp(Mouse)
1395
	HOLD = false
1396
end
1397
function KeyDown(Key)
1398
	KEYHOLD = true
1399
	if Key == "z" and ATTACK == false then
1400
		BanishingBullet()
1401
	end
1402
	if Key == "b" and ATTACK == false then
1403
		BanishingRampage()
1404
	end
1405
	if Key == "c" and ATTACK == false then
1406
		WarpVector()
1407
	end
1408
	if Key == "v" and ATTACK == false then
1409
		SpectralBanishing()
1410
	end
1411
	if Key == "x" and ATTACK == false then
1412
		chatfunc("I will show you mercy.", 2)
1413
		Delete:ClearAllChildren()
1414
	end
1415
	if Key == "t" and ATTACK == false then
1416
		Taunt()
1417
	end
1418
end
1419
function KeyUp(Key)
1420
	KEYHOLD = false
1421
end
1422
Mouse.Button1Down:connect(function(NEWKEY)
1423
	MouseDown(NEWKEY)
1424
end)
1425
Mouse.Button1Up:connect(function(NEWKEY)
1426
	MouseUp(NEWKEY)
1427
end)
1428
Mouse.KeyDown:connect(function(NEWKEY)
1429
	KeyDown(NEWKEY)
1430
end)
1431
Mouse.KeyUp:connect(function(NEWKEY)
1432
	KeyUp(NEWKEY)
1433
end)
1434
function unanchor()
1435
	if UNANCHOR == true then
1436
		g = Character:GetChildren()
1437
		for i = 1, #g do
1438
			if g[i].ClassName == "Part" then
1439
				g[i].Anchored = false
1440
			end
1441
		end
1442
	end
1443
end
1444
Humanoid.Changed:connect(function(Jump)
1445
	if Jump == "Jump" and Disable_Jump == true then
1446
		Humanoid.Jump = false
1447
	end
1448
end)
1449
local BOLT
1450
local FF = IT("ForceField", Character)
1451
FF.Visible = false
1452
while true do
1453
	Swait()
1454
	if BOLT ~= nil then
1455
		BOLT:remove()
1456
	end
1457
	ANIMATE.Parent = nil
1458
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1459
	IDLEANIMATION:Play()
1460
	SINE = SINE + CHANGE
1461
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1462
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1463
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1464
	local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1465
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1466
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1467
		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)
1468
		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)
1469
		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)
1470
		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)
1471
	elseif ANIM ~= "Walk" or TORSOVELOCITY < 1 then
1472
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1473
		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)
1474
		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)
1475
		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)
1476
	end
1477
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1478
		ANIM = "Jump"
1479
		if ATTACK == false then
1480
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1481
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1482
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1483
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1484
			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)
1485
			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)
1486
		end
1487
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1488
		ANIM = "Fall"
1489
		if ATTACK == false then
1490
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1491
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1492
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(55), RAD(0), RAD(55)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1493
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1494
			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)
1495
			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)
1496
		end
1497
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1498
		ANIM = "Idle"
1499
		if ATTACK == false then
1500
			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)
1501
			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)
1502
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1503
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1504
			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)
1505
			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)
1506
		end
1507
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1508
		ANIM = "Walk"
1509
		WALK = WALK + 1 / Animation_Speed
1510
		if WALK >= 15 - 5 * (Humanoid.WalkSpeed / 16 / Player_Size) then
1511
			WALK = 0
1512
			if WALKINGANIM == true then
1513
				WALKINGANIM = false
1514
			elseif WALKINGANIM == false then
1515
				WALKINGANIM = true
1516
			end
1517
		end
1518
		if ATTACK == false then
1519
			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)
1520
			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)
1521
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1522
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1523
			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)
1524
			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)
1525
		end
1526
	end
1527
	if #Effects2 > 0 then
1528
		for e = 1, #Effects2 do
1529
			if Effects2[e] ~= nil then
1530
				local Thing = Effects2[e]
1531
				if Thing ~= nil then
1532
					local Part = Thing[1]
1533
					local Mode = Thing[2]
1534
					local Delay = Thing[3]
1535
					local IncX = Thing[4]
1536
					local IncY = Thing[5]
1537
					local IncZ = Thing[6]
1538
					local Part2 = Thing[8]
1539
					if Thing[1].Transparency <= 1 then
1540
						if Thing[2] == "Block1" then
1541
							Thing[1].CFrame = Thing[1].CFrame
1542
							Mesh = Thing[1].Mesh
1543
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1544
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1545
						elseif Thing[2] == "Cylinder" then
1546
							Mesh = Thing[1].Mesh
1547
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1548
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1549
						elseif Thing[2] == "Blood" then
1550
							Mesh = Thing[7]
1551
							Thing[1].CFrame = Thing[1].CFrame * CF(0, 0.5, 0)
1552
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1553
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1554
						elseif Thing[2] == "Elec" then
1555
							Mesh = Thing[1].Mesh
1556
							Mesh.Scale = Mesh.Scale + VT(Thing[7], Thing[8], Thing[9])
1557
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1558
						elseif Thing[2] == "Disappear" then
1559
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1560
						end
1561
					else
1562
						Part.Parent = nil
1563
						table.remove(Effects2, e)
1564
					end
1565
				end
1566
			end
1567
		end
1568
	end
1569
	unanchor()
1570
	Humanoid.MaxHealth = "inf"
1571
	Humanoid.Health = "inf"
1572
	if Rooted == false then
1573
		Disable_Jump = false
1574
		Humanoid.WalkSpeed = Speed
1575
	elseif Rooted == true then
1576
		Disable_Jump = true
1577
		Humanoid.WalkSpeed = 0
1578
	end
1579
	if VALUE1 == true then
1580
		local RayData = Zap({
1581
			SegmentLength = 0.6,
1582
			Offset = 0.3,
1583
			Size = 0.05,
1584
			MaxRange = 1.5,
1585
			StartPosition = GunPoint.Position,
1586
			TargetPosition = RightArm.Position,
1587
			Character = workspace,
1588
			Color = "Really red",
1589
			Individual = true
1590
		})
1591
		BOLT = RayData.LightningModel
1592
		MagicSphere(VT(0.5, 0.5, 0.5), 15, GunPoint.CFrame, "Really red", VT(-0.03333333333333333, -0.03333333333333333, -0.03333333333333333))
1593
		SKILL1TEXT.TextTransparency = 0
1594
		SKILL2TEXT.TextTransparency = 0
1595
		SKILL3TEXT.TextTransparency = 0
1596
		SKILL4TEXT.TextTransparency = 0
1597
		SKILL5TEXT.TextTransparency = 0
1598
	elseif VALUE1 == false then
1599
		if ATTACK == false then
1600
			Intro()
1601
		end
1602
		SKILL1TEXT.TextTransparency = 1
1603
		SKILL2TEXT.TextTransparency = 1
1604
		SKILL3TEXT.TextTransparency = 1
1605
		SKILL4TEXT.TextTransparency = 1
1606
		SKILL5TEXT.TextTransparency = 1
1607
	end
1608
	local MATHS = {"0", "1"}
1609
	Humanoid.Name = MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)] .. MATHS[MRANDOM(1, #MATHS)]
1610
	Humanoid.PlatformStand = false
1611
	local GAME = game.Players:GetChildren()
1612
	for PLAYER = 1, #GAME do
1613
		local PLAY = GAME[PLAYER]
1614
		if PLAY.Character ~= nil and Delete:FindFirstChild(PLAY.Name) then
1615
			PLAY.Character:remove()
1616
		end
1617
	end
1618
end