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