View difference between Paste ID: ncepZD39 and e6k183pN
SHOW: | | - or go back to the newest paste.
1
2-
--||			   CREATED BY SHACKLUSTER
2+
3-
--\\====================================================//--
3+
4
5-
print'Pandora Edit By UndeniableInfinity.'
5+
Player = game:GetService("Players").lolfarmer
6-
print'Script name: "INSANITY PANDORA"'
6+
7-
print'Insanity Pandora is an edit which makes it more op.'
7+
8-
print'The Upgrades are:'
8+
9-
warn'More Magic Bullets, which is now named Bullet Hell.'
9+
10-
warn'Much Bigger Impact Of "Warp Meteor" which is now named "Warp Apocalypse"'
10+
11-
warn'"Times up", which is now named "Game Over" has now Ultra-Fast Wave/Pulse Killing.'
11+
12-
warn'WAVES ARE NOW INSANELY FAST. at this point i do not know if anyone can touch you. except Ghosts.'
12+
13-
warn'Chained Punch was only SLIGHTLY buffed.'
13+
14-
warn'"Pandoras Box", which is now named "Insanity Box", has now;'
14+
15-
warn'More "Ghosts" Spawn.'
15+
16-
warn'Bigger Black Hole And Gravity Orb...thing.'
16+
17-
warn'Bigger Box Explosion.'
17+
18-
warn'Added Two Moves that came from OTHER Shackluster Scripts.'
18+
19-
print'MOVES BELOW'
19+
20-
warn'[Z] Bullet Hell'
20+
21-
warn'[B] Game Over'
21+
22-
warn'[V] Warp Apocalypse'
22+
23-
warn'[C] Chained Punch'
23+
24-
warn'[X] Insanity Box'
24+
25-
warn'[Q] Isolation (Warden Lock)'
25+
26-
warn'[E] Void Blast (Ravager Beam)'
26+
27-
print'Welp, Thats it all covered up.'
27+
28-
print'Credits to Shackluster, as there are some moves from other scripts he did too. this may be a Minor Mix, and kind of major edit.'
28+
29
VT = Vector3.new
30
RAD = math.rad
31
C3 = Color3.new
32-
Player = game:GetService("Players").LocalPlayer
32+
33
BRICKC = BrickColor.new
34
ANGLES = CFrame.Angles
35
EULER = CFrame.fromEulerAnglesXYZ
36
COS = math.cos
37
ACOS = math.acos
38-
Mouse = Player:GetMouse()
38+
39
ASIN = math.asin
40
ABS = math.abs
41
MRANDOM = math.random
42
FLOOR = math.floor
43
44
--//=================================\\
45
--|| 	      USEFUL VALUES
46
--\\=================================//
47
48
Animation_Speed = 3
49
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
50
local Speed = 20
51
local SIZE = 1.4
52
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
53
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
54
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
55
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
56
local DAMAGEMULTIPLIER = 1
57
local ANIM = "Idle"
58
local ATTACK = false
59
local EQUIPPED = false
60
local HOLD = false
61
local COMBO = 1
62
local Rooted = false
63
local SINE = 0
64
local KEYHOLD = false
65
local CHANGE = 2 / Animation_Speed
66
local WALKINGANIM = false
67
local VALUE1 = false
68
local VALUE2 = false
69
local ROBLOXIDLEANIMATION = IT("Animation")
70
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
71
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
72
local ATANIM = IT("Animation")
73
ATANIM.Name = "Attack Animation"
74
ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
75
--ROBLOXIDLEANIMATION.Parent = Humanoid
76
local WEAPONGUI = IT("ScreenGui", PlayerGui)
77
WEAPONGUI.Name = "Weapon GUI"
78
local Weapon = IT("Model")
79
Weapon.Name = "Adds"
80
local Effects = IT("Folder", Weapon)
81
Effects.Name = "Effects"
82
local ANIMATOR = Humanoid.Animator
83
local ANIMATE = Character.Animate
84
local UNANCHOR = true
85
local CLOCKLOOP = 0
86
local SONG = 1382488262
87
local CLOCKTARGET = nil
88
local CLOCKSPEED = 50
89
script.Parent = WEAPONGUI
90
local CLONE = Character:Clone()
91
CLONE.Parent = nil
92
Character.Archivable = false
93
local sick = Instance.new("Sound",Torso)
94
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
95
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
96
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
97
local HITBLOCKSOUNDS = {"199148933", "199148947"}
98
99
--//=================================\\
100
--\\=================================//
101
102
103
--//=================================\\
104
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
105
--\\=================================//
106
107
ArtificialHB = Instance.new("BindableEvent", script)
108
ArtificialHB.Name = "ArtificialHB"
109
110
script:WaitForChild("ArtificialHB")
111
112
frame = Frame_Speed
113
tf = 0
114
allowframeloss = false
115
tossremainder = false
116
lastframe = tick()
117
script.ArtificialHB:Fire()
118
119
game:GetService("RunService").Heartbeat:connect(function(s, p)
120
	tf = tf + s
121
	if tf >= frame then
122
		if allowframeloss then
123
			script.ArtificialHB:Fire()
124
			lastframe = tick()
125
		else
126
			for i = 1, math.floor(tf / frame) do
127
				script.ArtificialHB:Fire()
128
			end
129
		lastframe = tick()
130
		end
131
		if tossremainder then
132
			tf = 0
133
		else
134
			tf = tf - frame * math.floor(tf / frame)
135
		end
136
	end
137
end)
138
139
--//=================================\\
140
--\\=================================//
141
142
--//=================================\\
143
--|| 	      SOME FUNCTIONS
144
--\\=================================//
145
function Reappear()
146
	for _, c in pairs(Character:GetChildren()) do
147
		if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
148
			c.Transparency = 0
149
			if c:FindFirstChildOfClass("Decal") then
150
				c:FindFirstChildOfClass("Decal").Transparency = 0
151
			end
152
			if c:FindFirstChildOfClass("ParticleEmitter") then
153
				c:FindFirstChildOfClass("ParticleEmitter").Enabled = true
154
			end
155
		elseif c.ClassName == "Accessory" then
156
			c.Handle.Transparency = 0
157
			if c.Handle:FindFirstChildOfClass("ParticleEmitter") then
158
				c.Handle:FindFirstChildOfClass("ParticleEmitter").Enabled = true
159
			end
160
		end
161
	end
162
end
163
164
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
165
	if FLOOR ~= nil then
166
		coroutine.resume(coroutine.create(function()
167
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Really red", "DebreeCenter", VT(0,0,0))
168
			PART.CFrame = CF(POSITION)
169
			for i = 1, 45 do
170
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Really red", "DebreePart", BLOCKSIZE)
171
				RingPiece.Material = FLOOR.Material
172
				RingPiece.Color = FLOOR.Color
173
				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)))
174
				Debris:AddItem(RingPiece,SWAIT)
175
			end
176
			PART:remove()
177
		end))
178
	end
179
end
180
181
function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
182
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
183
	local mesh = IT("SpecialMesh",wave)
184
	mesh.MeshType = "FileMesh"
185
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
186
	mesh.Scale = SIZE
187
	mesh.Offset = VT(0,0,0)
188
	wave.CFrame = CFRAME
189
	coroutine.resume(coroutine.create(function(PART)
190
		for i = 1, WAIT do
191
			Swait()
192
			mesh.Scale = mesh.Scale + GROW
193
			if DOESROT == true then
194
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
195
			end
196
			wave.Transparency = wave.Transparency + (0.5/WAIT)
197
			if wave.Transparency > 0.99 then
198
				wave:remove()
199
			end
200
		end
201
	end))
202
end
203
204
function VanishPlayer()
205
	for _, c in pairs(Character:GetChildren()) do
206
		if c.ClassName == "Part" then
207
			c.Transparency = 1
208
			if c:FindFirstChildOfClass("Decal") then
209
				c:FindFirstChildOfClass("Decal").Transparency = 1
210
			end
211
			if c:FindFirstChildOfClass("ParticleEmitter") then
212
				c:FindFirstChildOfClass("ParticleEmitter").Enabled = false
213
			end
214
		elseif c.ClassName == "Accessory" then
215
			c.Handle.Transparency = 1
216
			if c.Handle:FindFirstChildOfClass("ParticleEmitter") then
217
				c.Handle:FindFirstChildOfClass("ParticleEmitter").Enabled = false
218
			end
219
		end
220
	end
221
end
222
223
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
224
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
225
end
226
227
function PositiveAngle(NUMBER)
228
	if NUMBER >= 0 then
229
		NUMBER = 0
230
	end
231
	return NUMBER
232
end
233
234
function NegativeAngle(NUMBER)
235
	if NUMBER <= 0 then
236
		NUMBER = 0
237
	end
238
	return NUMBER
239
end
240
241
function Swait(NUMBER)
242
	if NUMBER == 0 or NUMBER == nil then
243
		ArtificialHB.Event:wait()
244
	else
245
		for i = 1, NUMBER do
246
			ArtificialHB.Event:wait()
247
		end
248
	end
249
end
250
251
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
252
	local NEWMESH = IT(MESH)
253
	if MESH == "SpecialMesh" then
254
		NEWMESH.MeshType = MESHTYPE
255
		if MESHID ~= "nil" and MESHID ~= "" then
256
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
257
		end
258
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
259
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
260
		end
261
	end
262
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
263
	NEWMESH.Scale = SCALE
264
	NEWMESH.Parent = PARENT
265
	return NEWMESH
266
end
267
268
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
269
	local NEWPART = IT("Part")
270
	NEWPART.formFactor = FORMFACTOR
271
	NEWPART.Reflectance = REFLECTANCE
272
	NEWPART.Transparency = TRANSPARENCY
273
	NEWPART.CanCollide = false
274
	NEWPART.Locked = true
275
	NEWPART.Anchored = true
276
	if ANCHOR == false then
277
		NEWPART.Anchored = false
278
	end
279
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
280
	NEWPART.Name = NAME
281
	NEWPART.Size = SIZE
282
	NEWPART.Position = Torso.Position
283
	NEWPART.Material = MATERIAL
284
	NEWPART:BreakJoints()
285
	NEWPART.Parent = PARENT
286
	return NEWPART
287
end
288
289
	local function weldBetween(a, b)
290
	    local weldd = Instance.new("ManualWeld")
291
	    weldd.Part0 = a
292
	    weldd.Part1 = b
293
	    weldd.C0 = CFrame.new()
294
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
295
	    weldd.Parent = a
296
	    return weldd
297
	end
298
299
300
function QuaternionFromCFrame(cf)
301
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
302
	local trace = m00 + m11 + m22
303
	if trace > 0 then 
304
		local s = math.sqrt(1 + trace)
305
		local recip = 0.5 / s
306
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
307
	else
308
		local i = 0
309
		if m11 > m00 then
310
			i = 1
311
		end
312
		if m22 > (i == 0 and m00 or m11) then
313
			i = 2
314
		end
315
		if i == 0 then
316
			local s = math.sqrt(m00 - m11 - m22 + 1)
317
			local recip = 0.5 / s
318
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
319
		elseif i == 1 then
320
			local s = math.sqrt(m11 - m22 - m00 + 1)
321
			local recip = 0.5 / s
322
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
323
		elseif i == 2 then
324
			local s = math.sqrt(m22 - m00 - m11 + 1)
325
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
326
		end
327
	end
328
end
329
 
330
function QuaternionToCFrame(px, py, pz, x, y, z, w)
331
	local xs, ys, zs = x + x, y + y, z + z
332
	local wx, wy, wz = w * xs, w * ys, w * zs
333
	local xx = x * xs
334
	local xy = x * ys
335
	local xz = x * zs
336
	local yy = y * ys
337
	local yz = y * zs
338
	local zz = z * zs
339
	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))
340
end
341
 
342
function QuaternionSlerp(a, b, t)
343
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
344
	local startInterp, finishInterp;
345
	if cosTheta >= 0.0001 then
346
		if (1 - cosTheta) > 0.0001 then
347
			local theta = ACOS(cosTheta)
348
			local invSinTheta = 1 / SIN(theta)
349
			startInterp = SIN((1 - t) * theta) * invSinTheta
350
			finishInterp = SIN(t * theta) * invSinTheta
351
		else
352
			startInterp = 1 - t
353
			finishInterp = t
354
		end
355
	else
356
		if (1 + cosTheta) > 0.0001 then
357
			local theta = ACOS(-cosTheta)
358
			local invSinTheta = 1 / SIN(theta)
359
			startInterp = SIN((t - 1) * theta) * invSinTheta
360
			finishInterp = SIN(t * theta) * invSinTheta
361
		else
362
			startInterp = t - 1
363
			finishInterp = t
364
		end
365
	end
366
	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
367
end
368
369
function Clerp(a, b, t)
370
	local qa = {QuaternionFromCFrame(a)}
371
	local qb = {QuaternionFromCFrame(b)}
372
	local ax, ay, az = a.x, a.y, a.z
373
	local bx, by, bz = b.x, b.y, b.z
374
	local _t = 1 - t
375
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
376
end
377
378
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
379
	local frame = IT("Frame")
380
	frame.BackgroundTransparency = TRANSPARENCY
381
	frame.BorderSizePixel = BORDERSIZEPIXEL
382
	frame.Position = POSITION
383
	frame.Size = SIZE
384
	frame.BackgroundColor3 = COLOR
385
	frame.BorderColor3 = BORDERCOLOR
386
	frame.Name = NAME
387
	frame.Parent = PARENT
388
	return frame
389
end
390
391
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
392
	local label = IT("TextLabel")
393
	label.BackgroundTransparency = 1
394
	label.Size = UD2(1, 0, 1, 0)
395
	label.Position = UD2(0, 0, 0, 0)
396
	label.TextColor3 = TEXTCOLOR
397
	label.TextStrokeTransparency = STROKETRANSPARENCY
398
	label.TextTransparency = TRANSPARENCY
399
	label.FontSize = TEXTFONTSIZE
400
	label.Font = TEXTFONT
401
	label.BorderSizePixel = BORDERSIZEPIXEL
402
	label.TextStrokeColor3 = C3(1,1,1)
403
	label.TextScaled = false
404
	label.Text = TEXT
405
	label.Name = NAME
406
	label.Parent = PARENT
407
	return label
408
end
409
410
function NoOutlines(PART)
411
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
412
end
413
414
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
415
	local NEWWELD = IT(TYPE)
416
	NEWWELD.Part0 = PART0
417
	NEWWELD.Part1 = PART1
418
	NEWWELD.C0 = C0
419
	NEWWELD.C1 = C1
420
	NEWWELD.Parent = PARENT
421
	return NEWWELD
422
end
423
424
local S = IT("Sound")
425
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
426
	local NEWSOUND = nil
427
	coroutine.resume(coroutine.create(function()
428
		NEWSOUND = S:Clone()
429
		NEWSOUND.Parent = PARENT
430
		NEWSOUND.Volume = VOLUME
431
		NEWSOUND.Pitch = PITCH
432
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
433
		NEWSOUND:play()
434
		if DOESLOOP == true then
435
			NEWSOUND.Looped = true
436
		else
437
			repeat wait(1) until NEWSOUND.Playing == false
438
			NEWSOUND:remove()
439
		end
440
	end))
441
	return NEWSOUND
442
end
443
444
function CFrameFromTopBack(at, top, back)
445
	local right = top:Cross(back)
446
	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)
447
end
448
449
--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})
450
function WACKYEFFECT(Table)
451
	local TYPE = (Table.EffectType or "Sphere")
452
	local SIZE = (Table.Size or VT(1,1,1))
453
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
454
	local TRANSPARENCY = (Table.Transparency or 0)
455
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
456
	local CFRAME = (Table.CFrame or Torso.CFrame)
457
	local MOVEDIRECTION = (Table.MoveToPos or nil)
458
	local ROTATION1 = (Table.RotationX or 0)
459
	local ROTATION2 = (Table.RotationY or 0)
460
	local ROTATION3 = (Table.RotationZ or 0)
461
	local MATERIAL = (Table.Material or "Neon")
462
	local COLOR = (Table.Color or C3(1,1,1))
463
	local TIME = (Table.Time or 45)
464
	local SOUNDID = (Table.SoundID or nil)
465
	local SOUNDPITCH = (Table.SoundPitch or nil)
466
	local SOUNDVOLUME = (Table.SoundVolume or nil)
467
	coroutine.resume(coroutine.create(function()
468
		local PLAYSSOUND = false
469
		local SOUND = nil
470
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
471
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
472
			PLAYSSOUND = true
473
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
474
		end
475
		EFFECT.Color = COLOR
476
		local MSH = nil
477
		if TYPE == "Sphere" then
478
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
479
		elseif TYPE == "Block" then
480
			MSH = IT("BlockMesh",EFFECT)
481
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
482
		elseif TYPE == "Wave" then
483
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
484
		elseif TYPE == "Ring" then
485
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
486
		elseif TYPE == "Slash" then
487
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
488
		elseif TYPE == "Round Slash" then
489
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
490
		elseif TYPE == "Swirl" then
491
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
492
		elseif TYPE == "Skull" then
493
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
494
		elseif TYPE == "Crystal" then
495
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
496
		end
497
		if MSH ~= nil then
498
			local MOVESPEED = nil
499
			if MOVEDIRECTION ~= nil then
500
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
501
			end
502
			local GROWTH = SIZE - ENDSIZE
503
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
504
			if TYPE == "Block" then
505
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
506
			else
507
				EFFECT.CFrame = CFRAME
508
			end
509
			for LOOP = 1, TIME+1 do
510
				Swait()
511
				MSH.Scale = MSH.Scale - GROWTH/TIME
512
				if TYPE == "Wave" then
513
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
514
				end
515
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
516
				if TYPE == "Block" then
517
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
518
				else
519
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
520
				end
521
				if MOVEDIRECTION ~= nil then
522
					local ORI = EFFECT.Orientation
523
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
524
					EFFECT.Orientation = ORI
525
				end
526
			end
527
			if PLAYSSOUND == false then
528
				EFFECT:remove()
529
			else
530
				repeat Swait() until SOUND.Playing == false
531
				EFFECT:remove()
532
			end
533
		else
534
			if PLAYSSOUND == false then
535
				EFFECT:remove()
536
			else
537
				repeat Swait() until SOUND.Playing == false
538
				EFFECT:remove()
539
			end
540
		end
541
	end))
542
end
543
function killnearest(position,range,maxstrength)
544
	for i,v in ipairs(workspace:GetChildren()) do
545
	local body = v:GetChildren()
546
		for part = 1, #body do
547
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
548
				if(body[part].Position - position).Magnitude < range then
549
					if v.ClassName == "Model" then
550
						v:BreakJoints()
551
					end
552
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
553
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
554
				end
555
			end
556
		end
557
		if v.ClassName == "Part" then
558
			if v.Anchored == false and (v.Position - position).Magnitude < range then
559
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
560
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
561
			end
562
		end
563
	end
564
end
565
566
function CheckTableForString(Table, String)
567
	for i, v in pairs(Table) do
568
		if string.find(string.lower(String), string.lower(v)) then
569
			return true
570
		end
571
	end
572
	return false
573
end
574
575
function CheckIntangible(Hit)
576
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
577
	if Hit and Hit.Parent then
578
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
579
			return true
580
		end
581
	end
582
	return false
583
end
584
585
function MakeForm(PART,TYPE)
586
	if TYPE == "Cyl" then
587
		local MSH = IT("CylinderMesh",PART)
588
	elseif TYPE == "Ball" then
589
		local MSH = IT("SpecialMesh",PART)
590
		MSH.MeshType = "Sphere"
591
	elseif TYPE == "Wedge" then
592
		local MSH = IT("SpecialMesh",PART)
593
		MSH.MeshType = "Wedge"
594
	end
595
end
596
597
Debris = game:GetService("Debris")
598
599
function CastProperRay(StartPos, EndPos, Distance, Ignore)
600
	local DIRECTION = CF(StartPos,EndPos).lookVector
601
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
602
end
603
604
function turnto(position)
605
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
606
end
607
608
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
609
	PLAYMAINANIM = false
610
	if WhichPose == "Cast1" then
611
		for i=0, Time, 0.1 / Animation_Speed do
612
			Swait()
613
			if Magic == true then
614
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
615
			end
616
			if Gyro ~= nil and Gyro ~= false then
617
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
618
			end
619
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
620
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
621
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
622
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
623
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
624
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
625
		end
626
	elseif WhichPose == "Cast2" then
627
		for i=0, Time, 0.1 / Animation_Speed do
628
			Swait()
629
			if Magic == true then
630
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
631
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
632
			end
633
			if Gyro ~= nil and Gyro ~= false then
634
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
635
			end
636
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
637
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
638
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
639
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
640
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
641
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
642
		end
643
	elseif WhichPose == "RightArmUp" then
644
		for i=0, Time, 0.1 / Animation_Speed do
645
			Swait()
646
			if Magic == true then
647
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
648
			end
649
			if Gyro ~= nil and Gyro ~= false then
650
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
651
			end
652
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
653
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
654
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
655
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
656
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
657
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
658
		end
659
	elseif WhichPose == "Taunt" then
660
		for i=0, Time, 0.1 / Animation_Speed do
661
			Swait()
662
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
663
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
664
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
665
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
666
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
667
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
668
		end
669
		HATWELD.Part0 = RightArm
670
		HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
671
		CreateSound(221057812,Torso,10,1,false)
672
		for i=0, Time*2, 0.1 / Animation_Speed do
673
			Swait()
674
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
675
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
676
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
677
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
678
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
679
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
680
		end
681
		for i=0, Time, 0.1 / Animation_Speed do
682
			Swait()
683
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
684
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
685
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
686
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
687
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
688
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
689
			HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
690
		end
691
		HATWELD.Part0 = Head
692
		HATWELD.C0 = CF(0,0.35,0)
693
	elseif WhichPose == "Prepare key" then
694
		for i=0, Time, 0.1 / Animation_Speed do
695
			Swait()
696
			if Gyro ~= nil and Gyro ~= false then
697
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
698
			end
699
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
700
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
701
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
702
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
703
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
704
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
705
		end
706
	elseif WhichPose == "Turn key" then
707
		for i=0, Time, 0.1 / Animation_Speed do
708
			Swait()
709
			if Gyro ~= nil and Gyro ~= false then
710
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
711
			end
712
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
713
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
714
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
715
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
716
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
717
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
718
		end
719
	end
720
	PLAYMAINANIM = true
721
end
722
723
--Lightning({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})
724
function Lightning(Table)
725
	local Color = Table.Color or C3(1,1,1)
726
	local StartPos = Table.Start or Torso.Position
727
	local EndPos = Table.End or Mouse.Hit.p
728
	local SegmentLength = Table.SegmentL or 2
729
	local Thickness = Table.Thickness or 0.1
730
	local Dissapear = Table.DoesFade or false
731
	local Parent = Table.Ignore or Character
732
	local MaxDist = Table.MaxDist or 400
733
	local Branches = Table.Branches or false
734
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
735
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
736
	local LIGHTNINGMODEL = IT("Model",Effects)
737
	LIGHTNINGMODEL.Name = "Lightning"
738
	local LastBolt = nil
739
	for E = 1, DISTANCE do
740
		local ExtraSize = (DISTANCE-E)/15
741
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
742
		PART.Color = Color
743
		MakeForm(PART,"Cyl")
744
		if LastBolt == nil then
745
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
746
		else
747
			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,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
748
		end
749
		LastBolt = PART
750
		if Branches == true then
751
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
752
			if CHOICE == 1 then
753
				local LASTBRANCH = nil
754
				for i = 1, MRANDOM(2,5) do
755
					local ExtraSize2 = ((DISTANCE-E)/25)/i
756
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
757
					PART.Color = Color
758
					MakeForm(PART,"Cyl")
759
					if LASTBRANCH == nil then
760
						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)
761
					else
762
						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)
763
					end
764
					LASTBRANCH = PART
765
				end
766
			end
767
		end
768
	end
769
	if Dissapear == true then
770
		coroutine.resume(coroutine.create(function()
771
			for i = 1, 10 do
772
				Swait()
773
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
774
					if c.ClassName == "Part" then
775
						c.Transparency = i/10
776
					end
777
				end
778
			end
779
			LIGHTNINGMODEL:remove()
780
		end))
781
	elseif Dissapear == false then
782
		Debris:AddItem(LIGHTNINGMODEL,0.1)
783
	end
784
	return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
785
end
786
787
--//=================================\\
788
--||	     WEAPON CREATION
789
--\\=================================//
790
791
RootPart.Size = RootPart.Size*SIZE
792
Torso.Size = Torso.Size*SIZE
793
RightArm.Size = RightArm.Size*SIZE
794
RightLeg.Size = RightLeg.Size*SIZE
795
LeftArm.Size = LeftArm.Size*SIZE
796
LeftLeg.Size = LeftLeg.Size*SIZE
797
RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
798
RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
799
Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
800
Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
801
RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
802
LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
803
RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
804
LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
805
RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
806
LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
807
Head.Size = Head.Size*SIZE
808
RootJoint.Parent = RootPart
809
Neck.Parent = Torso
810
RightShoulder.Parent = Torso
811
LeftShoulder.Parent = Torso
812
RightHip.Parent = Torso
813
LeftHip.Parent = Torso
814
815
Humanoid.DisplayDistanceType = "None"
816
local naeeym2 = IT("BillboardGui",Character)
817
naeeym2.AlwaysOnTop = true
818
naeeym2.Size = UDim2.new(5,35,2,15)
819
naeeym2.StudsOffset = Vector3.new(0,2,0)
820
naeeym2.MaxDistance = 75
821
naeeym2.Adornee = Character.Head
822
naeeym2.Name = "Name"
823
local tecks2 = IT("TextLabel",naeeym2)
824
tecks2.BackgroundTransparency = 1
825
tecks2.TextScaled = true
826
tecks2.BorderSizePixel = 0
827
tecks2.Text = "!Insanity! Pandora"
828
tecks2.Font = "Fantasy"
829
tecks2.TextSize = 30
830
tecks2.TextStrokeTransparency = 0
831
tecks2.TextColor3 = C3(1,1,1)
832
tecks2.TextStrokeColor3 = C3(159/255, 111/255, 183/255)
833
tecks2.Size = UDim2.new(1,0,0.5,0)
834
tecks2.Parent = naeeym2
835
local top = Instance.new("Shirt")
836
top.ShirtTemplate = "rbxassetid://1533635803"
837
top.Parent = Character
838
top.Name = "Cloth"
839
local bottom = Instance.new("Pants")
840
bottom.PantsTemplate = "rbxassetid://1460022985"
841
bottom.Parent = Character
842
bottom.Name = "Cloth"
843
local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Really black", "Hat", VT(1,1,1),false)
844
PRT.Color = C3(0,0,0)
845
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
846
CreateMesh("SpecialMesh", PRT, "FileMesh", "26768040", "", VT(1,1,1)*SIZE, VT(0,0,0))
847
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Detail", VT(1,1,1),false)
848
PRT.Color = C3(1,1,1)
849
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
850
CreateMesh("SpecialMesh", PRT, "FileMesh", "13520257", "", VT(1,1,1)*SIZE, VT(0,0,0))
851
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(1,1.2,0.2),false)
852
PRT.Color = C3(159/255, 111/255, 183/255)
853
MakeForm(PRT,"Ball")
854
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
855
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(0.5,0.4,0.5),false)
856
PRT.Color = C3(159/255, 111/255, 183/255)
857
MakeForm(PRT,"Ball")
858
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
859
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(0.5,0.3,0.3),false)
860
PRT.Color = C3(159/255, 111/255, 183/255)
861
MakeForm(PRT,"Ball")
862
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
863
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(0.5,0.3,0.3),false)
864
PRT.Color = C3(159/255, 111/255, 183/255)
865
MakeForm(PRT,"Ball")
866
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
867
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(0.4,0.4,0.3),false)
868
PRT.Color = C3(159/255, 111/255, 183/255)
869
MakeForm(PRT,"Ball")
870
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(15), RAD(0)), CF(0, 0, 0))
871
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Detail", VT(0.4,0.4,0.3),false)
872
PRT.Color = C3(159/255, 111/255, 183/255)
873
MakeForm(PRT,"Ball")
874
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(-15), RAD(0)), CF(0, 0, 0))
875
876
local LASTPART = Head
877
for i = 1, 24 do
878
	local MATH = (1-(i/30))
879
	if LASTPART == Head then
880
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
881
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(220), RAD(90)), CF(0, 0, 0))
882
		LASTPART = Horn
883
		Horn.Color = C3(0,0,0)
884
	else
885
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
886
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(5), RAD(3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
887
		LASTPART = Horn
888
		Horn.Color = C3(0,0,0)
889
	end
890
end
891
local LASTPART = Head
892
for i = 1, 24 do
893
	local MATH = (1-(i/30))
894
	if LASTPART == Head then
895
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
896
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(-220), RAD(-90)), CF(0, 0, 0))
897
		LASTPART = Horn
898
		Horn.Color = C3(0,0,0)
899
	else
900
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
901
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(5), RAD(-3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
902
		LASTPART = Horn
903
		Horn.Color = C3(0,0,0)
904
	end
905
end
906
local LASTPART = Head
907
for i = 1, 8 do
908
	local MATH = (1-(i/14))
909
	if LASTPART == Head then
910
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
911
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(250), RAD(90)), CF(0, 0, 0))
912
		LASTPART = Horn
913
		Horn.Color = C3(0,0,0)
914
	else
915
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
916
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(10), RAD(3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
917
		LASTPART = Horn
918
		Horn.Color = C3(0,0,0)
919
	end
920
end
921
local LASTPART = Head
922
for i = 1, 8 do
923
	local MATH = (1-(i/14))
924
	if LASTPART == Head then
925
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
926
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(-250), RAD(-90)), CF(0, 0, 0))
927
		LASTPART = Horn
928
		Horn.Color = C3(0,0,0)
929
	else
930
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
931
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(10), RAD(-3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
932
		LASTPART = Horn
933
		Horn.Color = C3(0,0,0)
934
	end
935
end
936
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
937
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
938
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
939
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
940
MakeForm(PRT,"Cyl")
941
local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
942
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
943
MakeForm(PRT,"Cyl")
944
PRT.Color = C3(159/255, 111/255, 183/255)
945
local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
946
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
947
MakeForm(RING,"Cyl")
948
RING.Color = C3(0,0,0)
949
for i = 1, 12 do
950
	local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Watch", VT(0,0.15,0)*SIZE,false)
951
	PRT.Color = C3(0,0,0)
952
	local MSH = IT("BlockMesh",PRT)
953
	MSH.Scale = VT(0.6,1,1)
954
	CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD((360/12)*i), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.2*SIZE))
955
end
956
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Watch", VT(0,0.15,0.15)*SIZE,false)
957
PRT.Color = C3(0,0,0)
958
local MSH = IT("BlockMesh",PRT)
959
MSH.Scale = VT(0.4,1,1)
960
local WATCH1 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.075*SIZE))
961
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
962
PRT.Color = C3(0,0,0)
963
local MSH = IT("BlockMesh",PRT)
964
MSH.Scale = VT(0.4,1,1)
965
local WATCH2 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -(0.075/1.5)*SIZE))
966
coroutine.resume(coroutine.create(function()
967
	while true do
968
		Swait()
969
		CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
970
		WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
971
		WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
972
		if CLOCKLOOP <= -150 then
973
			if VALUE1 == false then
974
				CLOCKLOOP = 0
975
				WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = RING.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 743521450, SoundPitch = 1.2, SoundVolume = 4})
976
				local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
977
				ApplyAoE(HITPOS,10,15,45,75,false)
978
				WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(15,2,15), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
979
				WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
980
				if CLOCKTARGET ~= nil then
981
					CLOCKTARGET.Health = CLOCKTARGET.Health - 20
982
					if CLOCKTARGET.Torso ~= nil then
983
						CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
984
					end
985
					if CLOCKTARGET.Health == 0 then
986
						CLOCKTARGET = nil
987
					end
988
				end
989
			end
990
		end
991
	end
992
end))
993
994
for _, c in pairs(Weapon:GetChildren()) do
995
	if c.ClassName == "Part" then
996
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
997
	end
998
end
999
1000
Neck.Name = "Weld"
1001
RootJoint.Name = "Weld"
1002
RightShoulder.Name = "Weld"
1003
LeftShoulder.Name = "Weld"
1004
RightHip.Name = "Weld"
1005
LeftHip.Name = "Weld"
1006
1007
local SKILLTEXTCOLOR = C3(255/255, 0/255, 0/255)
1008
local SKILLFONT = "Fantasy"
1009
local SKILLTEXTSIZE = 7
1010
1011
Weapon.Parent = Character
1012
Humanoid.Parent = Character
1013
1014
Humanoid.Died:connect(function()
1015
	ATTACK = true
1016
end)
1017
1018
--//=================================\\
1019
--||			DAMAGING
1020
--\\=================================//
1021
1022
function ApplyDamage(Humanoid,Damage,TorsoPart)
1023
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1024
	defence.Name = ("HitBy"..Player.Name)
1025
	game:GetService("Debris"):AddItem(defence, 0.001)
1026
	Damage = Damage * DAMAGEMULTIPLIER
1027
	if Humanoid.Health ~= 0 then
1028
		local CritChance = MRANDOM(1,100)
1029
		if Damage > Humanoid.Health then
1030
			Damage = math.ceil(Humanoid.Health)
1031
			if Damage == 0 then
1032
				Damage = 0.1
1033
			end
1034
		end
1035
		Humanoid.Health = Humanoid.Health - Damage
1036
	end
1037
end
1038
1039
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1040
	local CHILDREN = workspace:GetDescendants()
1041
	for index, CHILD in pairs(CHILDREN) do
1042
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1043
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1044
			if HUM then
1045
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1046
				if TORSO then
1047
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1048
						if INSTAKILL == true then
1049
							CHILD:BreakJoints()
1050
						else
1051
							local DMG = MRANDOM(MINDMG,MAXDMG)
1052
							ApplyDamage(HUM,DMG,TORSO)
1053
						end
1054
						if FLING > 0 then
1055
							for _, c in pairs(CHILD:GetChildren()) do
1056
								if c:IsA("BasePart") then
1057
									local bv = Instance.new("BodyVelocity") 
1058
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1059
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1060
									bv.Parent = c
1061
									Debris:AddItem(bv,0.05)
1062
								end
1063
							end
1064
						end
1065
					end
1066
				end
1067
			end
1068
		end
1069
	end
1070
end
1071
1072
function MagicSphere2(size,waitt,cframe,color)
1073
	local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(1,1,1))
1074
	local mesh = IT("SpecialMesh",wave)
1075
	mesh.MeshType = "Sphere"
1076
	mesh.Scale = VT(size,size,size)
1077
	mesh.Offset = VT(0,0,0)
1078
	wave.CFrame = cframe
1079
	coroutine.resume(coroutine.create(function(PART)
1080
		for i = 1, waitt do
1081
			Swait()
1082
			mesh.Scale = mesh.Scale - VT(size/waitt,size/waitt,size/waitt)
1083
			wave.Transparency = wave.Transparency - (1/waitt)
1084
		end
1085
		wave:remove()
1086
	end))
1087
end
1088
1089
function MagicSphere(size,waitt,cframe,color)
1090
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
1091
	local mesh = IT("SpecialMesh",wave)
1092
	mesh.MeshType = "Sphere"
1093
	mesh.Scale = VT(size,size,size)
1094
	mesh.Offset = VT(0,0,0)
1095
	wave.CFrame = cframe
1096
	coroutine.resume(coroutine.create(function(PART)
1097
		for i = 1, waitt do
1098
			Swait()
1099
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
1100
			wave.Transparency = wave.Transparency + (1/waitt)
1101
			if wave.Transparency > 0.99 then
1102
				wave:remove()
1103
			end
1104
		end
1105
	end))
1106
end
1107
1108
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
1109
	local Direction = CFrame.new(StartPos, Vec).lookVector
1110
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
1111
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
1112
	if RayHit and CheckIntangible(RayHit) then
1113
		if DelayIfHit then
1114
			wait()
1115
		end
1116
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
1117
	end
1118
	return RayHit, RayPos, RayNormal
1119
end
1120
1121
function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
1122
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
1123
	local mesh = IT("SpecialMesh",wave)
1124
	mesh.MeshType = "FileMesh"
1125
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
1126
	mesh.Scale = VT(size,size,size)
1127
	wave.CFrame = cframe
1128
	coroutine.resume(coroutine.create(function(PART)
1129
		for i = 1, waitt do
1130
			Swait()
1131
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
1132
			if doesrotate == true then
1133
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
1134
			end
1135
			wave.Transparency = wave.Transparency + (0.5/waitt)
1136
			if wave.Transparency > 0.99 then
1137
				wave:remove()
1138
			end
1139
		end
1140
	end))
1141
end
1142
1143
--//=================================\\
1144
--||	ATTACK FUNCTIONS AND STUFF
1145
--\\=================================//
1146
1147
function MagicMissiles()
1148
	ATTACK = true
1149
	Rooted = true
1150
	local SELECTING = true
1151
	local SPOTS = {}
1152
	coroutine.resume(coroutine.create(function()
1153
		local LOOP = 0
1154
		repeat
1155
			LOOP = LOOP + 1
1156
			Swait()
1157
			if LOOP >= 20 then
1158
				LOOP = 0
1159
				for i = 1, #SPOTS do
1160
					if SPOTS[i] ~= nil then
1161
						WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1162
						WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1163
					end
1164
				end
1165
			end
1166
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1167
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1168
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1169
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1170
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1171
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1172
		until SELECTING == false
1173
		Rooted = false
1174
		repeat
1175
			LOOP = LOOP + 1
1176
			Swait()
1177
			if LOOP >= 20 then
1178
				LOOP = 0
1179
				for i = 1, #SPOTS do
1180
					if SPOTS[i] ~= nil then
1181
						WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1182
						WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1183
					end
1184
				end
1185
			end
1186
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1187
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
1188
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1189
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1190
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1191
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1192
		until ATTACK == false
1193
	end))
1194
	repeat
1195
		repeat Swait() until HOLD == true
1196
			local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
1197
			if DIST > 9999 then
1198
				DIST = 9999
1199
			end
1200
			local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
1201
			local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)	
1202
			if HITFLOOR ~= nil then
1203
				table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
1204
				WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,2,6), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 90655239, SoundPitch = 1, SoundVolume = 6})
1205
				WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(4,3,4), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1206
			end
1207
		repeat Swait() until HOLD == false
1208
	until #SPOTS == 15
1209
	SELECTING = false
1210
	for i = 1, #SPOTS do
1211
		if SPOTS[i] ~= nil then
1212
			local POS = SPOTS[i]
1213
			coroutine.resume(coroutine.create(function()
1214
				local MISSILE = IT("Model",Effects)
1215
				MISSILE.Name = "Missile"
1216
				local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,2,2))
1217
				MakeForm(BASEPART,"Cyl")
1218
				MISSILE.PrimaryPart = BASEPART
1219
				BASEPART.CFrame = POS*CF(0,-30*3,0)
1220
				local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,4,2))
1221
				MakeForm(HEAD,"Ball")
1222
				HEAD.CFrame = BASEPART.CFrame*CF(0,1,0)
1223
				local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2.5,0.1,2.5))
1224
				MakeForm(TAIL,"Cyl")
1225
				TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
1226
				for i = 1, 10 do
1227
					Swait()
1228
					for _, c in pairs(MISSILE:GetChildren()) do
1229
						if c.ClassName == "Part" then
1230
							c.Transparency = c.Transparency - 1/10
1231
						end
1232
					end
1233
				end
1234
				for i = 1, 15*1.5 do
1235
					Swait()
1236
					MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
1237
				end
1238
				ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
1239
				WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(75,1,75), Transparency = 0.5, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
1240
				WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 4})
1241
				WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(22,2,22), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1242
				WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(20,3,20), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1243
				MISSILE:remove()
1244
			end))
1245
		end
1246
	end
1247
	wait(0.6)
1248
	ATTACK = false
1249
	Rooted = false
1250
end
1251
1252
1253
1254
function TimesUp()
1255
	CLOCKTARGET = nil
1256
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
1257
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
1258
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
1259
		if TORSO then
1260
			ATTACK = true
1261
			Rooted = false
1262
			coroutine.resume(coroutine.create(function()
1263
				repeat
1264
					Swait()
1265
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1266
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1267
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.5*SIZE, -0.2*SIZE) * ANGLES(RAD(75), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1268
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1269
					RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1270
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1271
				until ATTACK == false
1272
			end))
1273
			if Effects:FindFirstChild("NeonDoll") then
1274
				repeat Swait() until Effects:FindFirstChild("NeonDoll") == nil
1275
			end
1276
			wait(0.5)
1277
			local FAKECHARACTER = IT("Model",Effects)
1278
			FAKECHARACTER.Name = "NeonDoll"
1279
			local TORS = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.3,0.3,0.15),false)
1280
			CreateWeldOrSnapOrMotor("Weld", RING, RING, TORS, CF(0,0.6,0), CF(0,0,0))
1281
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
1282
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0,0.15,0))
1283
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
1284
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(-0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0,0.15,0))
1285
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
1286
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0,0.15,0))
1287
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
1288
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(-0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0,0.15,0))
1289
			local HEAD = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.15,0.15),false)
1290
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, HEAD, CF(0,0.225,0), CF(0,0,0))
1291
			CreateSound(201858045, TORS, 5, 0.4, false)
1292
			for i = 1, 150 do
1293
				Swait()
1294
				CLOCKSPEED = 100
1295
				for _, c in pairs(FAKECHARACTER:GetChildren()) do
1296
					if c.ClassName == "Part" then
1297
						c.Transparency = c.Transparency - 0.5/150
1298
					end
1299
				end
1300
			end
1301
			CLOCKTARGET = HUM
1302
			coroutine.resume(coroutine.create(function()
1303
				repeat Swait() CLOCKSPEED = 100 until CLOCKTARGET == nil
1304
				for i = 1, 25 do
1305
					Swait()
1306
					for _, c in pairs(FAKECHARACTER:GetChildren()) do
1307
						if c.ClassName == "Part" then
1308
							c.Transparency = c.Transparency + 0.5/25
1309
						end
1310
					end
1311
				end
1312
				CLOCKSPEED = 100
1313
				FAKECHARACTER:remove()
1314
			end))
1315
			wait(0.5)
1316
			ATTACK = false
1317
			Rooted = false
1318
		end
1319
	end
1320
end
1321
1322
function ChainPunch()
1323
	ATTACK = true
1324
	Rooted = false
1325
	local GYRO = IT("BodyGyro",RootPart)
1326
	GYRO.D = 25
1327
	GYRO.P = 2000
1328
	GYRO.MaxTorque = VT(0,40000,0)
1329
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1330
	repeat
1331
		Swait()
1332
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1333
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1334
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
1335
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1336
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1337
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1338
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1339
	until HOLD == true
1340
	local POS = Mouse.Hit.p
1341
	local CHAINS = false
1342
	local CHAINLINKS = {}
1343
	local A = IT("Attachment",RightArm)
1344
	A.Position = VT(1,-1,0)*SIZE
1345
	A.Orientation = VT(-90, -89.982, 0)
1346
	local B = IT("Attachment",RightArm)
1347
	B.Position = VT(-1,-1,0)*SIZE
1348
	B.Orientation = VT(-90, 89.988, 0)
1349
	local C = IT("Attachment",RightArm)
1350
	C.Position = VT(0.5,-1.3,0)*SIZE
1351
	C.Orientation = VT(-90, -89.982, 0)
1352
	local D = IT("Attachment",RightArm)
1353
	D.Position = VT(-0.5,-1.3,0)*SIZE
1354
	D.Orientation = VT(-90, 89.988, 0)
1355
	local LIGHT = IT("Attachment",RightArm)
1356
	LIGHT.Position = VT(0,-1,0)*SIZE
1357
	local LIGHT2 = IT("PointLight",LIGHT)
1358
	LIGHT2.Range = 7
1359
	LIGHT2.Brightness = 5
1360
	LIGHT2.Color = SKILLTEXTCOLOR
1361
	for i = 1, 2 do
1362
		local TWIST = -2
1363
		local START = A
1364
		local END = B
1365
		if i == 1 then
1366
			START = B
1367
			END = A
1368
		end
1369
		local ChainLink = IT("Beam",Torso)
1370
		ChainLink.Texture = "rbxassetid://73042633"
1371
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1372
		ChainLink.TextureSpeed = 1
1373
		ChainLink.Width0 = 1
1374
		ChainLink.Width1 = 1
1375
		ChainLink.TextureLength = 2.5
1376
		ChainLink.Attachment0 = START
1377
		ChainLink.Attachment1 = END
1378
		ChainLink.CurveSize0 = TWIST
1379
		ChainLink.CurveSize1 = TWIST
1380
		--ChainLink.FaceCamera = true
1381
		ChainLink.Segments = 45
1382
		ChainLink.Transparency = NumberSequence.new(1)
1383
		table.insert(CHAINLINKS,ChainLink)
1384
	end
1385
	for i = 1, 2 do
1386
		local TWIST = -1
1387
		local START = C
1388
		local END = D
1389
		if i == 1 then
1390
			START = D
1391
			END = C
1392
		end
1393
		local ChainLink = IT("Beam",Torso)
1394
		ChainLink.Texture = "rbxassetid://73042633"
1395
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1396
		ChainLink.TextureSpeed = 1
1397
		ChainLink.Width0 = 1
1398
		ChainLink.Width1 = 1
1399
		ChainLink.TextureLength = 5
1400
		ChainLink.Attachment0 = START
1401
		ChainLink.Attachment1 = END
1402
		ChainLink.CurveSize0 = TWIST
1403
		ChainLink.CurveSize1 = TWIST
1404
		--ChainLink.FaceCamera = true
1405
		ChainLink.Segments = 25
1406
		ChainLink.LightEmission = 0.5
1407
		ChainLink.Transparency = NumberSequence.new(1)
1408
		table.insert(CHAINLINKS,ChainLink)
1409
	end
1410
	coroutine.resume(coroutine.create(function()
1411
		repeat
1412
			Swait()
1413
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1414
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 0.15 / Animation_Speed)
1415
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0.2*SIZE) * ANGLES(RAD(60), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1416
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1417
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1418
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1419
		until CHAINS == true
1420
		repeat
1421
			Swait()
1422
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1423
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
1424
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, -0.2*SIZE) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1425
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1426
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1427
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1428
		until ATTACK == false
1429
		for e = 1, 15 do
1430
			Swait()
1431
			for i = 1, #CHAINLINKS do
1432
				CHAINLINKS[i].Transparency = NumberSequence.new((e/15))
1433
			end
1434
		end
1435
		A:remove()
1436
		B:remove()
1437
		C:remove()
1438
		D:remove()
1439
	end))
1440
	CreateSound(233856115, RightArm, 5, 1.2, false)
1441
	for e = 1, 15 do
1442
		Swait()
1443
		for i = 1, #CHAINLINKS do
1444
			CHAINLINKS[i].Transparency = NumberSequence.new(1-(e/15))
1445
		end
1446
	end
1447
	CHAINS = true
1448
	Rooted = true
1449
	wait(0.25)
1450
	local FIST = CreatePart(3, Effects, "Neon", 0, 0.5, "Alder", "Part", VT(2,2,2))
1451
	FIST.Color = C3(1, 215/255, 1)
1452
	FIST.CFrame = CF(RightArm.CFrame*CF(0,-1.3*SIZE,0).p,POS) * ANGLES(RAD(90), RAD(0), RAD(0)) 
1453
	local LIGHT3 = IT("PointLight",FIST)
1454
	LIGHT3.Range = 7
1455
	LIGHT3.Brightness = 5
1456
	LIGHT3.Color = SKILLTEXTCOLOR
1457
	CreateMesh("SpecialMesh", FIST, "FileMesh", "90718752", "", VT(10,10,10), VT(0,0,0))
1458
	local FISTA = IT("Attachment",FIST)
1459
	FISTA.Position = VT(0.062, 0.977, 0)
1460
	local ChainLink = IT("Beam",Torso)
1461
	ChainLink.Texture = "rbxassetid://73042633"
1462
	ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1463
	ChainLink.TextureSpeed = 0
1464
	ChainLink.Width0 = 3
1465
	ChainLink.Width1 = 3
1466
	ChainLink.TextureLength = 12
1467
	ChainLink.Attachment0 = LIGHT
1468
	ChainLink.Attachment1 = FISTA
1469
	ChainLink.FaceCamera = true
1470
	ChainLink.Segments = 45
1471
	ChainLink.LightEmission = 0.5
1472
	ChainLink.Transparency = NumberSequence.new(0.25)
1473
	local FISTSOUND = CreateSound(288641686, FIST, 5, 1.2, false)
1474
	for i = 1, 85 do
1475
		Swait()
1476
		FIST.CFrame = FIST.CFrame*CF(0,-2,0)
1477
		ChainLink.TextureLength = 12+(i*2)
1478
		ApplyAoE(FIST.Position,40,15,20,100,false)
1479
		WACKYEFFECT({Time = 5, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(20,0,20), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame*CF(0,-1,0) * ANGLES(RAD(0), RAD(i*15), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1480
		local HITFLOOR = Raycast(FIST.Position, (CF(FIST.Position, FIST.CFrame*CF(0,-1,0).p)).lookVector, 2.1, Character)
1481
		if HITFLOOR ~= nil then
1482
			HITFLOOR:BreakJoints()
1483
			coroutine.resume(coroutine.create(function()
1484
				for i = 1, 15 do
1485
					Swait()
1486
					FISTSOUND.Volume = FISTSOUND.Volume - 0.15
1487
					ApplyAoE(FIST.Position,10+(i*2),5,15,5,false)
1488
					WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(60,3,60), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1489
				end
1490
			end))
1491
			break
1492
		end
1493
	end
1494
	coroutine.resume(coroutine.create(function()
1495
		for i = 1, 50 do
1496
			Swait()
1497
			FIST.Transparency = FIST.Transparency + 0.5/50
1498
			LIGHT3.Range = LIGHT3.Range - 7/50
1499
		end
1500
		FIST:remove()
1501
	end))
1502
	LIGHT:remove()
1503
	GYRO:remove()
1504
	ATTACK = false
1505
	Rooted = false
1506
end
1507
1508
function WarpMeteor()
1509
	local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
1510
	if DIST > 180 then
1511
		DIST = 180
1512
	end
1513
	local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
1514
	local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,45,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 75*SIZE, Character)
1515
	if HITFLOOR then
1516
		local POS = HITPOS	
1517
		ATTACK = true
1518
		Rooted = true
1519
		local WARPED = false
1520
		local SMASHED = false
1521
		local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
1522
		coroutine.resume(coroutine.create(function()
1523
			repeat
1524
				Swait()
1525
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1526
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1527
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1528
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1529
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1530
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1531
			until WARPED == true
1532
			repeat
1533
				Swait()
1534
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1535
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1536
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1537
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1538
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE + 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1539
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1540
			until SMASHED == true
1541
			repeat
1542
				Swait()
1543
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
1544
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-40), RAD(0), RAD(0)), 1 / Animation_Speed)
1545
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(-15), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1546
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(15), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1547
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
1548
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1549
			until ATTACK == false
1550
		end))
1551
		VALUE1 = true
1552
		CreateSound(233856115, Torso, 5, 1.6, false)
1553
		for i = 1, 25 do
1554
			Swait()
1555
			for _, c in pairs(Character:GetChildren()) do
1556
				if c.ClassName == "Part" then
1557
					c.Transparency = c.Transparency + 1/25
1558
				end
1559
			end
1560
			for _, c in pairs(Weapon:GetChildren()) do
1561
				if c.ClassName == "Part" then
1562
					c.Transparency = c.Transparency + 1/25
1563
				end
1564
			end
1565
		end
1566
		UNANCHOR = false
1567
		RootPart.Anchored = true
1568
		RootPart.Velocity = VT(0,0,0)
1569
		local ROOTPOS = RootPart.Position
1570
		RootPart.CFrame = CF(POS+VT(0,300,0),VT(ROOTPOS.X,POS.Y+300,ROOTPOS.Z))
1571
		WARPED = true
1572
		for i = 1, 25 do
1573
			Swait()
1574
			for _, c in pairs(Character:GetChildren()) do
1575
				if c.ClassName == "Part" then
1576
					c.Transparency = c.Transparency - 1/25
1577
				end
1578
			end
1579
			for _, c in pairs(Weapon:GetChildren()) do
1580
				if c.ClassName == "Part" then
1581
					c.Transparency = c.Transparency - 1/25
1582
				end
1583
			end
1584
		end
1585
		local SHELL = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Part", VT(0,0,0))
1586
		SHELL.CFrame = RootPart.CFrame
1587
		MakeForm(SHELL,"Ball")
1588
		CreateSound(402981977, SHELL, 5, 1.6, false)
1589
		for i = 1, 10 do
1590
			Swait()
1591
			SHELL.Transparency = SHELL.Transparency - 1/10
1592
			SHELL.Size = SHELL.Size + VT(2,2,2)*1.8
1593
		end
1594
		for i = 1, math.ceil(75/2) do
1595
			Swait()
1596
			RootPart.CFrame = RootPart.CFrame*CF(0,-3.5*2,0)
1597
			SHELL.CFrame = CF(RootPart.Position)
1598
			WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(10,6,10), Transparency = 0.5, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = SHELL.Position+VT(0,15,0), RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1599
		end
1600
		RootPart.CFrame = CF(POS+VT(0,1,0),VT(ROOTPOS.X,HITPOS.Y+1,ROOTPOS.Z))
1601
		SHELL.CFrame = CF(RootPart.Position)
1602
		WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(100,100,100)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
1603
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(60,6,60)*3.8, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1604
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(60,6,60)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1605
		for i = 1, 5 do
1606
			WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(50,5,50)*4, Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1607
		end
1608
		SHELL:remove()
1609
		ApplyAoE(RootPart.Position,75,35,75,300,false)
1610
		SMASHED = true
1611
		wait(1)
1612
		VALUE1 = false
1613
		UNANCHOR = true
1614
		ATTACK = false
1615
		Rooted = false
1616
	end
1617
end
1618
1619
function PandorasBox()
1620
	local HITFLOOR,HITPOS = Raycast(RootPart.CFrame*CF(0,0,-6.5).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
1621
	if HITFLOOR ~= nil then
1622
		ATTACK = true
1623
		Rooted = true
1624
		local RINGSPIN = true
1625
		local CONSTRUCTING = true
1626
		local RING = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Ring", VT(0,0,0))
1627
		RING.Color = C3(0,0,0)
1628
		MakeForm(RING,"Cyl")
1629
		RING.CFrame = CF(HITPOS)
1630
		CreateSound(402981977, RING, 5, 1.2, false)
1631
		coroutine.resume(coroutine.create(function()
1632
			repeat
1633
				Swait()
1634
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1635
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1636
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1637
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1638
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1639
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1640
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1641
			until CONSTRUCTING == false
1642
			repeat 
1643
				Swait() 
1644
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1645
			until RINGSPIN == false
1646
			for i = 1, 25 do
1647
				Swait()
1648
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1649
				RING.Size = RING.Size - VT(0.15,0,0.15)
1650
				--DECAL.Transparency = DECAL.Transparency + 1/25
1651
				RING.Transparency = RING.Transparency + 1/25
1652
			end
1653
			RING:remove()
1654
		end))
1655
		for i = 1, 15 do
1656
			Swait()
1657
			RING.Size = RING.Size + VT(0.75,0,0.75)
1658
			RING.Transparency = RING.Transparency - 1/15
1659
		end
1660
		local BOXSPIN = true
1661
		local PANDORASBOX = IT("Model",Effects)
1662
		PANDORASBOX.Name = "Pandora's Box"
1663
		local BOX = IT("Model",PANDORASBOX)
1664
		BOX.Name = "Body"
1665
		local LID = IT("Model",PANDORASBOX)
1666
		LID.Name = "Lid"
1667
		--BUILDING THE BOX--
1668
			local BASE = CreatePart(3, BOX, "Neon", 0, 0, "Alder", "Black", VT(2,1.8,2))
1669
			BASE.Color = C3(0,0,0)
1670
			PANDORASBOX.PrimaryPart = BASE
1671
			BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
1672
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1673
			WOOD.CFrame = BASE.CFrame*CF(1,0,1)
1674
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1675
			WOOD.CFrame = BASE.CFrame*CF(1,0,-1)
1676
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1677
			WOOD.CFrame = BASE.CFrame*CF(-1,0,1)
1678
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1679
			WOOD.CFrame = BASE.CFrame*CF(-1,0,-1)
1680
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1681
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,1)
1682
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1683
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,-1)
1684
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1685
			WOOD.CFrame = BASE.CFrame*CF(1,0.9,0)
1686
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1687
			WOOD.CFrame = BASE.CFrame*CF(-1,0.9,0)
1688
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1689
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,1)
1690
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1691
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,-1)
1692
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1693
			WOOD.CFrame = BASE.CFrame*CF(1,-0.9,0)
1694
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1695
			WOOD.CFrame = BASE.CFrame*CF(-1,-0.9,0)
1696
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
1697
			WOOD.CFrame = BASE.CFrame*CF(0,0,1)
1698
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
1699
			WOOD.CFrame = BASE.CFrame*CF(0,0,-1)
1700
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
1701
			WOOD.CFrame = BASE.CFrame*CF(1,0,0)
1702
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
1703
			WOOD.CFrame = BASE.CFrame*CF(-1,0,0)
1704
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
1705
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,0)
1706
			-------------
1707
			local LIDPART = CreatePart(3, LID, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
1708
			LIDPART.CFrame = BASE.CFrame*CF(0,1,0)
1709
			LID.PrimaryPart = LIDPART
1710
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1711
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,-1)
1712
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1713
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,1)
1714
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1715
			WOOD.CFrame = LIDPART.CFrame*CF(1,0,0)
1716
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1717
			WOOD.CFrame = LIDPART.CFrame*CF(-1,0,0)
1718
			local DECAL = IT("Decal",LIDPART)
1719
			DECAL.Face = "Top"
1720
			DECAL.Texture = "http://www.roblox.com/asset/?id=1501226061"
1721
			DECAL.Color3 = C3(0,0,0)
1722
		--BUILDING THE BOX--
1723
		coroutine.resume(coroutine.create(function()
1724
			repeat
1725
				Swait()
1726
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * ANGLES(RAD(0), RAD(2.45), RAD(0)))
1727
			until BOXSPIN == false
1728
		end))
1729
		for i = 1, 25 do
1730
			Swait()
1731
			PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,1.5-(i/12.5),0))
1732
		end
1733
		wait(0.5)
1734
		BOXSPIN = false
1735
		CONSTRUCTING = false	
1736
		coroutine.resume(coroutine.create(function()
1737
			WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = LIDPART.Size, Size2 = VT(3,0,3)*4, Transparency = 0, Transparency2 = 1, CFrame = LIDPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 168586586, SoundPitch = 1.3, SoundVolume = 6})
1738
			--[[for i = 1, 45 do
1739
				Swait()
1740
				LID:SetPrimaryPartCFrame(LIDPART.CFrame * CF(0,1.5-(i/12.5),0.5) * ANGLES(RAD(0.7), RAD(0), RAD(0)))
1741
			end-
1742
			LID:remove()]]--
1743
			for _, c in pairs(LID:GetChildren()) do
1744
				if c.ClassName == "Part" then
1745
					c.Anchored = false
1746
					c.CanCollide = true
1747
					if c ~= LIDPART then
1748
						weldBetween(LIDPART,c)
1749
					end
1750
				end
1751
			end
1752
			LIDPART.Velocity = CF(LIDPART.Position,LIDPART.CFrame*CF(15,25,0).p).lookVector*65
1753
			Debris:AddItem(LID,15)
1754
			wait(0.5)
1755
			local RANDOMEFFECT = MRANDOM(1,4)
1756
			if RANDOMEFFECT == 1 then
1757
				for i = 1, 45 do
1758
					wait((2-(i/15))/15)
1759
					WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,MRANDOM(12,15),0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,MRANDOM(1,5)), MoveToPos = BASE.Position, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.8, SoundVolume = 6})
1760
				end	
1761
				wait(1)
1762
				WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(70,70,70)*12, Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
1763
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(60,6,60)*10, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 469345336, SoundPitch = 0.75, SoundVolume = 6})
1764
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(60,6,60)*9, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1765
				for i = 1, 5 do
1766
					WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(60,6,60)*12, Transparency = 0.5, Transparency2 = 1, CFrame = BASE.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1767
				end
1768
				ApplyAoE(BASE.Position,50,1,200,375,false)
1769
				ApplyAoE(BASE.Position,250,35,75,475,false)
1770
			elseif RANDOMEFFECT == 2 then
1771
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
1772
				FIELD.CFrame = BASE.CFrame
1773
				MakeForm(FIELD,"Ball")
1774
				for i = 1, 50 do
1775
					Swait()
1776
					FIELD.Size = FIELD.Size + VT(1,1,1)
1777
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1778
				end
1779
				wait(0.2)
1780
				local LOOP = CreateSound(1393698948, FIELD, 0, 1.2, true)
1781
				coroutine.resume(coroutine.create(function()
1782
					for i = 1, 75 do
1783
						Swait()
1784
						LOOP.Volume = LOOP.Volume + 10/75
1785
						LOOP.Parent = FIELD
1786
						local CHILDREN = workspace:GetDescendants()
1787
						for index, CHILD in pairs(CHILDREN) do
1788
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1789
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1790
								if HUM then
1791
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1792
									if TORSO then
1793
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1794
											HUM.Health = HUM.Health - 0.1
1795
											TORSO.Velocity = VT(0,5,0)
1796
											HUM.PlatformStand = true
1797
											if TORSO.RotVelocity.Magnitude < 15 then
1798
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1799
											end
1800
										end
1801
									end
1802
								end
1803
							end
1804
						end
1805
						FIELD.Size = FIELD.Size + VT(6,6,6)
1806
						FIELD.Transparency = FIELD.Transparency + 0.8/75
1807
					end
1808
					for i = 1, 500 do
1809
						Swait()
1810
						LOOP.Parent = FIELD
1811
						local CHILDREN = workspace:GetDescendants()
1812
						for index, CHILD in pairs(CHILDREN) do
1813
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1814
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1815
								if HUM then
1816
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1817
									if TORSO then
1818
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1819
											TORSO.Velocity = VT(0,5,0)
1820
											HUM.Health = HUM.Health - 0.1
1821
											HUM.PlatformStand = true
1822
											if TORSO.RotVelocity.Magnitude < 15 then
1823
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1824
											end
1825
										end
1826
									end
1827
								end
1828
							end
1829
						end
1830
					end
1831
					for i = 1, 25 do
1832
						Swait()
1833
						LOOP.Volume = LOOP.Volume + 10/25
1834
						LOOP.Parent = FIELD
1835
						local CHILDREN = workspace:GetDescendants()
1836
						for index, CHILD in pairs(CHILDREN) do
1837
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1838
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1839
								if HUM then
1840
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1841
									if TORSO then
1842
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
1843
											TORSO.Velocity = VT(0,5,0)
1844
											HUM.Health = HUM.Health - 0.1
1845
											HUM.PlatformStand = false
1846
											if TORSO.RotVelocity.Magnitude < 15 then
1847
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1848
											end
1849
										end
1850
									end
1851
								end
1852
							end
1853
						end
1854
						FIELD.Size = FIELD.Size - VT(9,9,9)
1855
						FIELD.Transparency = FIELD.Transparency + 0.2/25
1856
					end	
1857
					FIELD:remove()
1858
				end))
1859
			elseif RANDOMEFFECT == 3 then
1860
				for i = 1, 20 do
1861
					wait(0.15)
1862
					WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(3,8,3), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,0.3,0), MoveToPos = BASE.Position+VT(0,6,0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 90655239, SoundPitch = 0.8, SoundVolume = 6})
1863
					coroutine.resume(coroutine.create(function()
1864
						local MINION = CLONE:Clone()
1865
						MINION.Parent = Effects
1866
						MINION.Name = "Shadow"
1867
						MINION.HumanoidRootPart.CFrame = BASE.CFrame*CF(0,5,0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
1868
						MINION.HumanoidRootPart.Velocity = CF(MINION.HumanoidRootPart.Position,MINION.HumanoidRootPart.CFrame*CF(0,8,-15).p).lookVector*MRANDOM(55,100)
1869
						for _, c in pairs(MINION:GetChildren()) do
1870
							if c.ClassName == "Part" then
1871
								c.Material = "Neon"
1872
								c.Color = C3(0,0,0)
1873
								c.Transparency = 0.25
1874
								if c.Name == "Head" then
1875
									c:ClearAllChildren()
1876
									local MSH = IT("BlockMesh",c)
1877
									MSH.Scale = VT(0.5,1,1)
1878
								end
1879
							end
1880
						end
1881
						local TORSO = MINION.Torso
1882
						local HUMAN = MINION.Humanoid
1883
						HUMAN.WalkSpeed = 20
1884
						HUMAN.MaxHealth = math.huge
1885
						HUMAN.Health = math.huge
1886
						HUMAN.DisplayDistanceType = "None"
1887
						HUMAN.Died:connect(function()
1888
							MINION:remove()
1889
							--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 3, 0.5, false)
1890
						end)
1891
						wait(1)
1892
						local findNearestTorso = function(POS)
1893
							local list = game.Workspace:GetDescendants()
1894
							local torso = nil
1895
							local dist = 500
1896
							local temp = nil
1897
							local human = nil
1898
							local temp2 = nil
1899
							for x = 1, #list do
1900
								temp2 = list[x]
1901
								if (temp2.className == "Model") and (temp2 ~= Character) and (temp2.Parent ~= Effects) then
1902
									temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
1903
									human = temp2:findFirstChildOfClass("Humanoid")
1904
									if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
1905
										if (temp.Position - POS).magnitude < dist then
1906
											torso = temp
1907
											dist = (temp.Position - POS).magnitude
1908
										end
1909
									end
1910
								end
1911
							end
1912
							return torso, dist
1913
						end
1914
						for i = 1, 40 do
1915
							if HUMAN.Health == 0 then
1916
								break
1917
							end
1918
							wait(0.3)
1919
							local target,dist= findNearestTorso(TORSO.Position)
1920
							if target then
1921
								HUMAN:MoveTo(target.Position)
1922
								if dist < 25 then
1923
									CreateSound(348663022, TORSO, 10, 1, true)
1924
									wait(2)
1925
									--local ANIM = HUMAN:LoadAnimation(ATANIM)
1926
									--ANIM:Play()
1927
									--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 1, 1, false)
1928
									ApplyAoE(TORSO.Position,10,0,0,85,true)
1929
									WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 201858087, SoundPitch = 0.8, SoundVolume = 10})
1930
									for i = 1, 5 do
1931
										WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = TORSO.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-15,15)/7.5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1932
									end
1933
									break
1934
								end
1935
							end
1936
						end
1937
						MINION:remove()
1938
					end))
1939
				end
1940
			elseif RANDOMEFFECT == 4 then
1941
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
1942
				FIELD.Color = C3(0,0,0)
1943
				FIELD.CFrame = BASE.CFrame
1944
				MakeForm(FIELD,"Ball")
1945
				FIELD.CanCollide = true
1946
				for i = 1, 50 do
1947
					Swait()
1948
					FIELD.Size = FIELD.Size + VT(1,1,1)
1949
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1950
				end
1951
				wait(0.2)
1952
				local LOOP = CreateSound(487214658, FIELD, 0, 1, true)
1953
				coroutine.resume(coroutine.create(function()
1954
					local E = 0
1955
					for i = 1, 75 do
1956
						E = E + 1
1957
						Swait()
1958
						if E >= 60 then
1959
							E = 0
1960
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*80, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
1961
						end
1962
						LOOP.Volume = LOOP.Volume + 10/75
1963
						LOOP.Parent = FIELD
1964
						local CHILDREN = workspace:GetDescendants()
1965
						for index, CHILD in pairs(CHILDREN) do
1966
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1967
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1968
								if HUM then
1969
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1970
									if TORSO then
1971
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
1972
											for _, c in pairs(CHILD:GetChildren()) do
1973
												if c:IsA("BasePart") then
1974
													local bv = Instance.new("BodyVelocity") 
1975
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1976
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
1977
													bv.Parent = c
1978
													Debris:AddItem(bv,0.05)
1979
												end
1980
											end
1981
											HUM.Health = HUM.Health - 0.3
1982
										end
1983
									end
1984
								end
1985
							end
1986
						end
1987
						FIELD.Size = FIELD.Size + VT(10,10,10)/5
1988
					end
1989
					for i = 1, 180 do
1990
						E = E + 1
1991
						Swait()
1992
						if E >= 60 then
1993
							E = 0
1994
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*60, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
1995
						end
1996
						LOOP.Parent = FIELD
1997
						local CHILDREN = workspace:GetDescendants()
1998
						for index, CHILD in pairs(CHILDREN) do
1999
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2000
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2001
								if HUM then
2002
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2003
									if TORSO then
2004
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
2005
											for _, c in pairs(CHILD:GetChildren()) do
2006
												if c:IsA("BasePart") then
2007
													local bv = Instance.new("BodyVelocity") 
2008
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2009
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
2010
													bv.Parent = c
2011
													Debris:AddItem(bv,0.05)
2012
												end
2013
											end
2014
											HUM.Health = HUM.Health - 0.3
2015
										end
2016
									end
2017
								end
2018
							end
2019
						end
2020
					end
2021
					ApplyAoE(FIELD.Position,40,100,20,400,false)
2022
					WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = FIELD.Size, Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 231917744, SoundPitch = 1, SoundVolume = 6})
2023
					for i = 1, 5 do
2024
						WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIELD.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2025
					end
2026
					FIELD:remove()
2027
				end))
2028
			elseif RANDOMEFFECT == 5 then
2029
			end
2030
			wait(0.5)
2031
			for i = 1, 25 do
2032
				Swait()
2033
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,-0.3,0))
2034
			end
2035
			PANDORASBOX:remove()
2036
			RINGSPIN = false
2037
		end))
2038
		ATTACK = false
2039
		Rooted = false
2040
	end
2041
end
2042
2043
function Taunt()
2044
	ATTACK = true
2045
	local LAUGH = nil
2046
	coroutine.resume(coroutine.create(function()
2047
		repeat
2048
			Swait()
2049
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
2050
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
2051
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE, -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2052
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2053
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2054
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2055
		until LAUGH ~= nil
2056
		repeat
2057
			Swait()
2058
			LAUGH.Parent = Head
2059
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0+(0.1*LAUGH.PlaybackLoudness/75) + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
2060
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE+(0.1*LAUGH.PlaybackLoudness/75)) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
2061
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE+(0.1*LAUGH.PlaybackLoudness/75), -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2062
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE+(0.1*LAUGH.PlaybackLoudness/75), 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2063
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2064
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2065
		until LAUGH.Playing == false
2066
	ATTACK = false
2067
	end))
2068
	wait(0.1)
2069
	sick:Pause()
2070
	LAUGH = CreateSound(525166232, Head, 10, 1, false)
2071
	wait(1)
2072
	sick:Resume()
2073
end
2074
2075
function Prison_Key()
2076
	if Mouse.Target ~= nil then
2077
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2078
			local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
2079
			local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
2080
			local GYRO = IT("BodyGyro",RootPart)
2081
			GYRO.D = 750
2082
			GYRO.P = 20000
2083
			GYRO.MaxTorque = VT(0,40000000,0)
2084
			local grav = Instance.new("BodyPosition",TORSO)
2085
			grav.D = 15
2086
			grav.P = 20000
2087
			grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
2088
			grav.position = TORSO.Position
2089
			local GYRO2 = IT("BodyGyro",TORSO)
2090
			GYRO2.D = 750
2091
			GYRO2.P = 20000
2092
			GYRO2.MaxTorque = VT(0,40000000,0)
2093
			GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
2094
			grav.Name = "Jail"
2095
			local LOCKPARTS = {}
2096
			ATTACK = true
2097
			Rooted = false
2098
			local LOCK = IT("Model",Effects)
2099
			LOCK.Name = "Lock"
2100
			local LOCK2 = IT("Model",LOCK)
2101
			LOCK2.Name = "Metal"
2102
			--CREATE LOCK--
2103
				local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
2104
				LOCK.PrimaryPart = BASE
2105
				BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
2106
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
2107
				PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
2108
				MakeForm(PRT,"Cyl")
2109
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
2110
				PRT.Color = C3(0,0,0)
2111
				PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
2112
				MakeForm(PRT,"Cyl")
2113
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
2114
				PRT.Color = C3(0,0,0)
2115
				PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
2116
				for i = 1, 45 do
2117
					local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
2118
					PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
2119
				end
2120
				local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
2121
				PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
2122
				LOCK2.PrimaryPart = PRT
2123
			---------------
2124
			local CHILDREN = LOCK:GetDescendants()
2125
			for index, CHILD in pairs(CHILDREN) do
2126
				if CHILD:IsA("BasePart") then
2127
					CHILD.Transparency = 1
2128
				end
2129
			end
2130
			for i = 1, 75 do
2131
				LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
2132
				Swait()
2133
				GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
2134
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
2135
				local CHILDREN = LOCK:GetDescendants()
2136
				for index, CHILD in pairs(CHILDREN) do
2137
					if CHILD:IsA("BasePart") then
2138
						CHILD.Transparency = CHILD.Transparency - 1/75
2139
					end
2140
				end
2141
			end
2142
			HUM.DisplayDistanceType = "None"
2143
			local KEY = IT("Model",Effects)
2144
			KEY.Name = "Key"
2145
			--CREATE KEY--
2146
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "KeyBase", VT(0.1, 1, 0.1),false)
2147
				KEY.PrimaryPart = KBASE
2148
				KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
2149
				local WLD = weldBetween(RightArm,KBASE)
2150
				for i = 1, 45 do
2151
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.1, 0.1, 0.1),false)
2152
					PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
2153
					weldBetween(KBASE,PRT)
2154
				end
2155
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.3, 0.1, 0.1),false)
2156
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
2157
				weldBetween(KBASE,PRT)
2158
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Lavender", "Key", VT(0.3, 0.1, 0.1),false)
2159
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
2160
				weldBetween(KBASE,PRT)
2161
			--------------
2162
			Rooted = true
2163
			Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
2164
			coroutine.resume(coroutine.create(function()
2165
				for i = 1, 10 do
2166
					Swait()
2167
					GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
2168
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
2169
				end
2170
				CreateSound(1149318312,BASE,5,1,false)
2171
				CreateSound(160772554,BASE,3,1,false)
2172
				LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
2173
				for i = 1, 4 do
2174
					WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2175
				end
2176
				WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
2177
				wait(1)
2178
				TORSO.Parent.Parent = LOCK
2179
				for i = 1, 75 do
2180
					Swait()
2181
					local CHILDREN = KEY:GetDescendants()
2182
					for index, CHILD in pairs(CHILDREN) do
2183
						if CHILD:IsA("BasePart") then
2184
							CHILD.Transparency = i/25
2185
						end
2186
					end
2187
					local CHILDREN = LOCK:GetDescendants()
2188
					for index, CHILD in pairs(CHILDREN) do
2189
						if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
2190
							CHILD.Transparency = CHILD.Transparency + 1/75
2191
						elseif CHILD.ClassName == "Decal" then
2192
							CHILD.Transparency = CHILD.Transparency + 1/75
2193
						end
2194
					end
2195
				end
2196
				TORSO.Parent:ClearAllChildren()
2197
				KEY:remove()
2198
				LOCK:remove()
2199
			end))
2200
			Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
2201
			GYRO:remove()
2202
			ATTACK = false
2203
			Rooted = false
2204
		end
2205
	end
2206
end
2207
2208
function RavagingOverthrower()
2209
	ATTACK = true
2210
	Rooted = true
2211
for i=0, 1, 0.1 / Animation_Speed do
2212
		Swait()
2213
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE + 0.05 * COS(SINE / 12) * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2214
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2215
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * SIZE, 0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(180), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2216
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * SIZE, 0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(180), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2217
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * SIZE, -1 * SIZE, -0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2218
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * SIZE, -1 * SIZE, -0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2219
	end
2220
	CreateSound("348663022", Torso, 5, 1)
2221
	local StartPos = RootPart.CFrame * CF(0,10,0).p
2222
	for i = 1, 5 do
2223
		MagicSphere2(25,25,CF(StartPos),"Royal purple")
2224
		Swait(15)
2225
	end
2226
	local soundeffect = IT("Sound",Torso)
2227
	soundeffect.SoundId = "rbxassetid://487186990"
2228
	soundeffect.Looped = true
2229
	soundeffect.Volume = 10
2230
	soundeffect.Playing = true
2231
	repeat
2232
		turnto(Mouse.Hit.p)
2233
		MagicSphere2(25,25,CF(StartPos),"Royal purple")
2234
		MagicSphere(25/10,25,CF(StartPos),"Royal purple")
2235
		local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Mouse.Hit.p, 750, Character, false)
2236
		local distance = (StartPos - RayPos).magnitude
2237
		local RayBeam = IT("Part",Effects)
2238
		RayBeam.Material = "Neon"
2239
		RayBeam.Anchored = true
2240
		RayBeam.BrickColor = BRICKC"Royal purple"
2241
		local mesh = IT("SpecialMesh",RayBeam)
2242
		mesh.MeshType = "Cylinder"
2243
		RayBeam.Size = Vector3.new(distance+10, 5, 5)
2244
		RayBeam.CFrame = CFrame.new(StartPos, RayPos) * CFrame.new(0, 0, -distance/2) * ANGLES(RAD(0),RAD(90),RAD(0))
2245
		MagicSphere(15,5,CF(RayPos),"Royal purple")
2246
		killnearest(RayPos,15,100)
2247
		for i = 1, 3 do
2248
			CreateSwirl(0,25,true,-0.2,5,CF(RayPos) * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))),"Really black")
2249
		end
2250
		Swait()
2251
		if KEYHOLD == false then
2252
			coroutine.resume(coroutine.create(function()
2253
				for i = 1, 5 do
2254
					RayBeam.Transparency = RayBeam.Transparency + 1/5
2255
					Swait()
2256
				end
2257
				RayBeam:remove()
2258
			end))
2259
		else
2260
			RayBeam:remove()
2261
		end
2262
	until KEYHOLD == false
2263
	soundeffect:remove()
2264
	ATTACK = false
2265
	Rooted = false
2266
end
2267
2268
2269
--//=================================\\
2270
--||	  ASSIGN THINGS TO KEYS
2271
--\\=================================//
2272
2273
function MouseDown(Mouse)
2274
	HOLD = true
2275
	if ATTACK == false then
2276
	end
2277
end
2278
2279
function MouseUp(Mouse)
2280
HOLD = false
2281
end
2282
2283
function KeyDown(Key)
2284
	KEYHOLD = true
2285
	if Key == "z" and ATTACK == false then
2286
		MagicMissiles()
2287
	end
2288
2289
	if Key == "b" and ATTACK == false then
2290
		TimesUp()
2291
	end
2292
2293
	if Key == "c" and ATTACK == false then
2294
		ChainPunch()
2295
	end
2296
2297
	if Key == "v" and ATTACK == false then
2298
		WarpMeteor()
2299
	end
2300
2301
	if Key == "x" and ATTACK == false then
2302
		PandorasBox()
2303
	end
2304
2305
	if Key == "t" and ATTACK == false then
2306
		Taunt()
2307
	end
2308
2309
    if Key == "q" and ATTACK == false then
2310
		Prison_Key()
2311
	end
2312
2313
    if Key == "e" and ATTACK == false then
2314
        RavagingOverthrower()
2315
    end
2316
    if Key == "r" and ATTACK == false then
2317
    end
2318
end
2319
2320
function KeyUp(Key)
2321
	KEYHOLD = false
2322
end
2323
2324
	Mouse.Button1Down:connect(function(NEWKEY)
2325
		MouseDown(NEWKEY)
2326
	end)
2327
	Mouse.Button1Up:connect(function(NEWKEY)
2328
		MouseUp(NEWKEY)
2329
	end)
2330
	Mouse.KeyDown:connect(function(NEWKEY)
2331
		KeyDown(NEWKEY)
2332
	end)
2333
	Mouse.KeyUp:connect(function(NEWKEY)
2334
		KeyUp(NEWKEY)
2335
	end)
2336
2337
--//=================================\\
2338
--\\=================================//
2339
2340
2341
function unanchor()
2342
	if UNANCHOR == true then
2343
		RootPart.Anchored = false
2344
	end
2345
	g = Character:GetChildren()
2346
	for i = 1, #g do
2347
		if g[i].ClassName == "Part" and g[i] ~= RootPart then
2348
			g[i].Anchored = false
2349
		end
2350
	end
2351
	g = Weapon:GetChildren()
2352
	for i = 1, #g do
2353
		if g[i].ClassName == "Part" then
2354
			g[i].Anchored = false
2355
		end
2356
	end
2357
end
2358
2359
2360
--//=================================\\
2361
--||	WRAP THE WHOLE SCRIPT UP
2362
--\\=================================//
2363
2364
Humanoid.Changed:connect(function(Jump)
2365
	if Jump == "Jump" and (Disable_Jump == true) then
2366
		Humanoid.Jump = false
2367
	end
2368
end)
2369
2370
while true do
2371
	Swait()
2372
	script.Parent = WEAPONGUI
2373
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
2374
	    v:Stop();
2375
	end
2376
	ANIMATE.Parent = nil
2377
	SINE = SINE + CHANGE*1.5
2378
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2379
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2380
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
2381
	local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
2382
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
2383
		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) / Animation_Speed)
2384
		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) / Animation_Speed)
2385
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2386
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(-25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2387
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
2388
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2389
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2390
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2391
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2392
	end
2393
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2394
		ANIM = "Jump"
2395
		if ATTACK == false then
2396
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2397
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
2398
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2399
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2400
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
2401
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
2402
	    end
2403
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2404
		ANIM = "Fall"
2405
		if ATTACK == false then
2406
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2407
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
2408
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2409
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2410
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
2411
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
2412
		end
2413
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2414
		ANIM = "Idle"
2415
		if ATTACK == false then
2416
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
2417
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2418
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2419
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2420
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2421
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
2422
		end
2423
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2424
		ANIM = "Walk"
2425
		if ATTACK == false then
2426
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
2427
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(15 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 1/ Animation_Speed)
2428
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2429
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2430
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
2431
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
2432
		end
2433
	end
2434
	unanchor()
2435
	Humanoid.MaxHealth = "inf"
2436
	Humanoid.Health = "inf"
2437
	if Rooted == false then
2438
		Disable_Jump = false
2439
		Humanoid.WalkSpeed = Speed
2440
	elseif Rooted == true then
2441
		Disable_Jump = true
2442
		Humanoid.WalkSpeed = 0
2443
	end
2444
	for _, c in pairs(Character:GetChildren()) do
2445
		if c.ClassName == "Part" and c.Name ~= "Detail" then
2446
			c.Material = "Fabric"
2447
			if c:FindFirstChildOfClass("ParticleEmitter") then
2448
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
2449
			end
2450
			if c ~= Head then
2451
				c.Color = C3(0,0,0)
2452
			else
2453
				c.Color = C3(1,1,1)
2454
			end
2455
			if c == Head then
2456
				if c:FindFirstChild("face") then
2457
					c.face:remove()
2458
				end
2459
			end
2460
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
2461
			c:remove()
2462
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
2463
			c:remove()
2464
		end
2465
	end
2466
	sick.SoundId = "rbxassetid://"..SONG
2467
	sick.Looped = true
2468
	sick.Pitch = 1
2469
	sick.Volume = 5
2470
	sick.Parent = Torso
2471
	sick:Resume()
2472
	--sick.Playing = false
2473
	Humanoid.Name = "Pandora = "..Player.Name
2474
end
2475
2476
--//=================================\\
2477
--\\=================================//
2478
2479
2480
2481
2482
2483
--//====================================================\\--
2484
--||			  		 END OF SCRIPT
2485
--\\====================================================//--