View difference between Paste ID: LhUy1HqB and Tw0bsgjA
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7-
Player = game:GetService("Players").LocalPlayer
7+
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13-
Mouse = Player:GetMouse()
13+
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = owner
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
87
--//====================================================\\--
88
--||			   CREATED BY SHACKLUSTER
89
--\\====================================================//--
90
91
wait(0.2)
92
93
Player = owner
94
PlayerGui = Player.PlayerGui
95
Cam = workspace.CurrentCamera
96
Backpack = Player.Backpack
97
Character = Player.Character
98
Humanoid = Character.Humanoid
99
RootPart = Character["HumanoidRootPart"]
100
Torso = Character["Torso"]
101
Head = Character["Head"]
102
RightArm = Character["Right Arm"]
103
LeftArm = Character["Left Arm"]
104
RightLeg = Character["Right Leg"]
105
LeftLeg = Character["Left Leg"]
106
RootJoint = RootPart["RootJoint"]
107
Neck = Torso["Neck"]
108
RightShoulder = Torso["Right Shoulder"]
109
LeftShoulder = Torso["Left Shoulder"]
110
RightHip = Torso["Right Hip"]
111
LeftHip = Torso["Left Hip"]
112
Character.Archivable = true
113
Player:ClearCharacterAppearance()
114
115
IT = Instance.new
116
CF = CFrame.new
117
VT = Vector3.new
118
RAD = math.rad
119
C3 = Color3.new
120
UD2 = UDim2.new
121
BRICKC = BrickColor.new
122
ANGLES = CFrame.Angles
123
EULER = CFrame.fromEulerAnglesXYZ
124
COS = math.cos
125
ACOS = math.acos
126
SIN = math.sin
127
ASIN = math.asin
128
ABS = math.abs
129
MRANDOM = math.random
130
FLOOR = math.floor
131
132
--//=================================\\
133
--|| 	      USEFUL VALUES
134
--\\=================================//
135
136
Animation_Speed = 3
137
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
138
local Speed = 20
139
local SIZE = 1.4
140
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
141
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
142
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
143
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
144
local DAMAGEMULTIPLIER = 1
145
local ANIM = "Idle"
146
local ATTACK = false
147
local EQUIPPED = false
148
local HOLD = false
149
local COMBO = 1
150
local Rooted = false
151
local SINE = 0
152
local KEYHOLD = false
153
local CHANGE = 2 / Animation_Speed
154
local WALKINGANIM = false
155
local VALUE1 = false
156
local VALUE2 = false
157
local ROBLOXIDLEANIMATION = IT("Animation")
158
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
159
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
160
local ATANIM = IT("Animation")
161
ATANIM.Name = "Attack Animation"
162
ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
163
--ROBLOXIDLEANIMATION.Parent = Humanoid
164
local WEAPONGUI = IT("ScreenGui", PlayerGui)
165
WEAPONGUI.Name = "Weapon GUI"
166
local Weapon = IT("Model")
167
Weapon.Name = "Adds"
168
local Effects = IT("Folder", Weapon)
169
Effects.Name = "Effects"
170
local ANIMATOR = Humanoid.Animator
171
local ANIMATE = Character.Animate
172
local UNANCHOR = true
173
local CLOCKLOOP = 0
174
local SONG = 510580450
175
local CLOCKTARGET = nil
176
local CLOCKSPEED = 30
177
script.Parent = WEAPONGUI
178
local CLONE = Character:Clone()
179
CLONE.Parent = nil
180
Character.Archivable = false
181
local sick = Instance.new("Sound",Torso)
182
183
--//=================================\\
184
--\\=================================//
185
186
187
--//=================================\\
188
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
189
--\\=================================//
190
191
ArtificialHB = Instance.new("BindableEvent", script)
192
ArtificialHB.Name = "ArtificialHB"
193
194
script:WaitForChild("ArtificialHB")
195
196
frame = Frame_Speed
197
tf = 0
198
allowframeloss = false
199
tossremainder = false
200
lastframe = tick()
201
script.ArtificialHB:Fire()
202
203
game:GetService("RunService").Heartbeat:connect(function(s, p)
204
	tf = tf + s
205
	if tf >= frame then
206
		if allowframeloss then
207
			script.ArtificialHB:Fire()
208
			lastframe = tick()
209
		else
210
			for i = 1, math.floor(tf / frame) do
211
				script.ArtificialHB:Fire()
212
			end
213
		lastframe = tick()
214
		end
215
		if tossremainder then
216
			tf = 0
217
		else
218
			tf = tf - frame * math.floor(tf / frame)
219
		end
220
	end
221
end)
222
223
--//=================================\\
224
--\\=================================//
225
226
--//=================================\\
227
--|| 	      SOME FUNCTIONS
228
--\\=================================//
229
230
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
231
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
232
end
233
234
function PositiveAngle(NUMBER)
235
	if NUMBER >= 0 then
236
		NUMBER = 0
237
	end
238
	return NUMBER
239
end
240
241
function NegativeAngle(NUMBER)
242
	if NUMBER <= 0 then
243
		NUMBER = 0
244
	end
245
	return NUMBER
246
end
247
248
function Swait(NUMBER)
249
	if NUMBER == 0 or NUMBER == nil then
250
		ArtificialHB.Event:wait()
251
	else
252
		for i = 1, NUMBER do
253
			ArtificialHB.Event:wait()
254
		end
255
	end
256
end
257
258
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
259
	local NEWMESH = IT(MESH)
260
	if MESH == "SpecialMesh" then
261
		NEWMESH.MeshType = MESHTYPE
262
		if MESHID ~= "nil" and MESHID ~= "" then
263
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
264
		end
265
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
266
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
267
		end
268
	end
269
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
270
	NEWMESH.Scale = SCALE
271
	NEWMESH.Parent = PARENT
272
	return NEWMESH
273
end
274
275
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
276
	local NEWPART = IT("Part")
277
	NEWPART.formFactor = FORMFACTOR
278
	NEWPART.Reflectance = REFLECTANCE
279
	NEWPART.Transparency = TRANSPARENCY
280
	NEWPART.CanCollide = false
281
	NEWPART.Locked = true
282
	NEWPART.Anchored = true
283
	if ANCHOR == false then
284
		NEWPART.Anchored = false
285
	end
286
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
287
	NEWPART.Name = NAME
288
	NEWPART.Size = SIZE
289
	NEWPART.Position = Torso.Position
290
	NEWPART.Material = MATERIAL
291
	NEWPART:BreakJoints()
292
	NEWPART.Parent = PARENT
293
	return NEWPART
294
end
295
296
	local function weldBetween(a, b)
297
	    local weldd = Instance.new("ManualWeld")
298
	    weldd.Part0 = a
299
	    weldd.Part1 = b
300
	    weldd.C0 = CFrame.new()
301
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
302
	    weldd.Parent = a
303
	    return weldd
304
	end
305
306
307
function QuaternionFromCFrame(cf)
308
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
309
	local trace = m00 + m11 + m22
310
	if trace > 0 then 
311
		local s = math.sqrt(1 + trace)
312
		local recip = 0.5 / s
313
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
314
	else
315
		local i = 0
316
		if m11 > m00 then
317
			i = 1
318
		end
319
		if m22 > (i == 0 and m00 or m11) then
320
			i = 2
321
		end
322
		if i == 0 then
323
			local s = math.sqrt(m00 - m11 - m22 + 1)
324
			local recip = 0.5 / s
325
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
326
		elseif i == 1 then
327
			local s = math.sqrt(m11 - m22 - m00 + 1)
328
			local recip = 0.5 / s
329
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
330
		elseif i == 2 then
331
			local s = math.sqrt(m22 - m00 - m11 + 1)
332
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
333
		end
334
	end
335
end
336
 
337
function QuaternionToCFrame(px, py, pz, x, y, z, w)
338
	local xs, ys, zs = x + x, y + y, z + z
339
	local wx, wy, wz = w * xs, w * ys, w * zs
340
	local xx = x * xs
341
	local xy = x * ys
342
	local xz = x * zs
343
	local yy = y * ys
344
	local yz = y * zs
345
	local zz = z * zs
346
	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))
347
end
348
 
349
function QuaternionSlerp(a, b, t)
350
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
351
	local startInterp, finishInterp;
352
	if cosTheta >= 0.0001 then
353
		if (1 - cosTheta) > 0.0001 then
354
			local theta = ACOS(cosTheta)
355
			local invSinTheta = 1 / SIN(theta)
356
			startInterp = SIN((1 - t) * theta) * invSinTheta
357
			finishInterp = SIN(t * theta) * invSinTheta
358
		else
359
			startInterp = 1 - t
360
			finishInterp = t
361
		end
362
	else
363
		if (1 + cosTheta) > 0.0001 then
364
			local theta = ACOS(-cosTheta)
365
			local invSinTheta = 1 / SIN(theta)
366
			startInterp = SIN((t - 1) * theta) * invSinTheta
367
			finishInterp = SIN(t * theta) * invSinTheta
368
		else
369
			startInterp = t - 1
370
			finishInterp = t
371
		end
372
	end
373
	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
374
end
375
376
function Clerp(a, b, t)
377
	local qa = {QuaternionFromCFrame(a)}
378
	local qb = {QuaternionFromCFrame(b)}
379
	local ax, ay, az = a.x, a.y, a.z
380
	local bx, by, bz = b.x, b.y, b.z
381
	local _t = 1 - t
382
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
383
end
384
385
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
386
	local frame = IT("Frame")
387
	frame.BackgroundTransparency = TRANSPARENCY
388
	frame.BorderSizePixel = BORDERSIZEPIXEL
389
	frame.Position = POSITION
390
	frame.Size = SIZE
391
	frame.BackgroundColor3 = COLOR
392
	frame.BorderColor3 = BORDERCOLOR
393
	frame.Name = NAME
394
	frame.Parent = PARENT
395
	return frame
396
end
397
398
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
399
	local label = IT("TextLabel")
400
	label.BackgroundTransparency = 1
401
	label.Size = UD2(1, 0, 1, 0)
402
	label.Position = UD2(0, 0, 0, 0)
403
	label.TextColor3 = TEXTCOLOR
404
	label.TextStrokeTransparency = STROKETRANSPARENCY
405
	label.TextTransparency = TRANSPARENCY
406
	label.FontSize = TEXTFONTSIZE
407
	label.Font = TEXTFONT
408
	label.BorderSizePixel = BORDERSIZEPIXEL
409
	label.TextStrokeColor3 = C3(1,1,1)
410
	label.TextScaled = false
411
	label.Text = TEXT
412
	label.Name = NAME
413
	label.Parent = PARENT
414
	return label
415
end
416
417
function NoOutlines(PART)
418
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
419
end
420
421
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
422
	local NEWWELD = IT(TYPE)
423
	NEWWELD.Part0 = PART0
424
	NEWWELD.Part1 = PART1
425
	NEWWELD.C0 = C0
426
	NEWWELD.C1 = C1
427
	NEWWELD.Parent = PARENT
428
	return NEWWELD
429
end
430
431
local S = IT("Sound")
432
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
433
	local NEWSOUND = nil
434
	coroutine.resume(coroutine.create(function()
435
		NEWSOUND = S:Clone()
436
		NEWSOUND.Parent = PARENT
437
		NEWSOUND.Volume = VOLUME
438
		NEWSOUND.Pitch = PITCH
439
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
440
		NEWSOUND:play()
441
		if DOESLOOP == true then
442
			NEWSOUND.Looped = true
443
		else
444
			repeat wait(1) until NEWSOUND.Playing == false
445
			NEWSOUND:remove()
446
		end
447
	end))
448
	return NEWSOUND
449
end
450
451
function CFrameFromTopBack(at, top, back)
452
	local right = top:Cross(back)
453
	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)
454
end
455
456
--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})
457
function WACKYEFFECT(Table)
458
	local TYPE = (Table.EffectType or "Sphere")
459
	local SIZE = (Table.Size or VT(1,1,1))
460
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
461
	local TRANSPARENCY = (Table.Transparency or 0)
462
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
463
	local CFRAME = (Table.CFrame or Torso.CFrame)
464
	local MOVEDIRECTION = (Table.MoveToPos or nil)
465
	local ROTATION1 = (Table.RotationX or 0)
466
	local ROTATION2 = (Table.RotationY or 0)
467
	local ROTATION3 = (Table.RotationZ or 0)
468
	local MATERIAL = (Table.Material or "Neon")
469
	local COLOR = (Table.Color or C3(1,1,1))
470
	local TIME = (Table.Time or 45)
471
	local SOUNDID = (Table.SoundID or nil)
472
	local SOUNDPITCH = (Table.SoundPitch or nil)
473
	local SOUNDVOLUME = (Table.SoundVolume or nil)
474
	coroutine.resume(coroutine.create(function()
475
		local PLAYSSOUND = false
476
		local SOUND = nil
477
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
478
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
479
			PLAYSSOUND = true
480
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
481
		end
482
		EFFECT.Color = COLOR
483
		local MSH = nil
484
		if TYPE == "Sphere" then
485
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
486
		elseif TYPE == "Block" then
487
			MSH = IT("BlockMesh",EFFECT)
488
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
489
		elseif TYPE == "Wave" then
490
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
491
		elseif TYPE == "Ring" then
492
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
493
		elseif TYPE == "Slash" then
494
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
495
		elseif TYPE == "Round Slash" then
496
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
497
		elseif TYPE == "Swirl" then
498
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
499
		elseif TYPE == "Skull" then
500
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
501
		elseif TYPE == "Crystal" then
502
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
503
		end
504
		if MSH ~= nil then
505
			local MOVESPEED = nil
506
			if MOVEDIRECTION ~= nil then
507
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
508
			end
509
			local GROWTH = SIZE - ENDSIZE
510
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
511
			if TYPE == "Block" then
512
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
513
			else
514
				EFFECT.CFrame = CFRAME
515
			end
516
			for LOOP = 1, TIME+1 do
517
				Swait()
518
				MSH.Scale = MSH.Scale - GROWTH/TIME
519
				if TYPE == "Wave" then
520
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
521
				end
522
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
523
				if TYPE == "Block" then
524
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
525
				else
526
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
527
				end
528
				if MOVEDIRECTION ~= nil then
529
					local ORI = EFFECT.Orientation
530-
tecks2.Text = "Gaster!"
530+
531
					EFFECT.Orientation = ORI
532
				end
533
			end
534
			if PLAYSSOUND == false then
535
				EFFECT:remove()
536
			else
537
				repeat Swait() until SOUND.Playing == false
538
				EFFECT:remove()
539
			end
540
		else
541
			if PLAYSSOUND == false then
542
				EFFECT:remove()
543
			else
544
				repeat Swait() until SOUND.Playing == false
545
				EFFECT:remove()
546
			end
547
		end
548
	end))
549
end
550
551
function MakeForm(PART,TYPE)
552
	if TYPE == "Cyl" then
553
		local MSH = IT("CylinderMesh",PART)
554
	elseif TYPE == "Ball" then
555
		local MSH = IT("SpecialMesh",PART)
556
		MSH.MeshType = "Sphere"
557
	elseif TYPE == "Wedge" then
558
		local MSH = IT("SpecialMesh",PART)
559
		MSH.MeshType = "Wedge"
560
	end
561
end
562
563
Debris = game:GetService("Debris")
564
565
function CastProperRay(StartPos, EndPos, Distance, Ignore)
566
	local DIRECTION = CF(StartPos,EndPos).lookVector
567
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
568
end
569
570
function turnto(position)
571
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
572
end
573
574
--//=================================\\
575
--||	     WEAPON CREATION
576
--\\=================================//
577
578
Humanoid.Parent = nil
579
RootPart.Size = RootPart.Size*SIZE
580
Torso.Size = Torso.Size*SIZE
581
RightArm.Size = RightArm.Size*SIZE
582
RightLeg.Size = RightLeg.Size*SIZE
583
LeftArm.Size = LeftArm.Size*SIZE
584
LeftLeg.Size = LeftLeg.Size*SIZE
585
RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
586
RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
587
Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
588
Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
589
RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
590
LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
591
RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
592
LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
593
RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
594
LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
595
Head.Size = Head.Size*SIZE
596
RootJoint.Parent = RootPart
597
Neck.Parent = Torso
598
RightShoulder.Parent = Torso
599
LeftShoulder.Parent = Torso
600
RightHip.Parent = Torso
601
LeftHip.Parent = Torso
602
603
Humanoid.DisplayDistanceType = "None"
604
local naeeym2 = IT("BillboardGui",Character)
605
naeeym2.AlwaysOnTop = true
606
naeeym2.Size = UDim2.new(5,35,2,15)
607
naeeym2.StudsOffset = Vector3.new(0,2,0)
608
naeeym2.MaxDistance = 75
609
naeeym2.Adornee = Character.Head
610
naeeym2.Name = "Name"
611
local tecks2 = IT("TextLabel",naeeym2)
612
tecks2.BackgroundTransparency = 1
613
tecks2.TextScaled = true
614
tecks2.BorderSizePixel = 0
615
tecks2.Text = "Gaster"
616
tecks2.Font = "Fantasy"
617
tecks2.TextSize = 30
618
tecks2.TextStrokeTransparency = 0
619
tecks2.TextColor3 = C3(1,1,1)
620
tecks2.TextStrokeColor3 = C3(0/0, 0/0, 0/0)
621
tecks2.Size = UDim2.new(1,0,0.5,0)
622
tecks2.Parent = naeeym2
623
local top = Instance.new("Shirt")
624
top.ShirtTemplate = "rbxassetid://1070896702"
625
top.Parent = Character
626
top.Name = "Cloth"
627
local bottom = Instance.new("Pants")
628
bottom.PantsTemplate = "rbxassetid://1227314211"
629
bottom.Parent = Character
630
bottom.Name = "Cloth"
631
local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Really White", "Hat", VT(1,1,1),false)
632
PRT.Color = C3(0,0,0)
633
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
634
CreateMesh("SpecialMesh", PRT, "FileMesh", "", "", VT(1,1,1)*SIZE, VT(0,0,0))
635
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Detail", VT(1,1,1),false)
636
PRT.Color = C3(1,1,1)
637
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
638
CreateMesh("SpecialMesh", PRT, "FileMesh", "13520257", "", VT(1,1,1)*SIZE, VT(0,0,0))
639
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(1,1.2,0.2),false)
640
PRT.Color = C3(0/0, 0/0, 0/0)
641
MakeForm(PRT,"Ball")
642
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
643
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.4,0.5),false)
644
PRT.Color = C3(0/0, 0/0, 0/0)
645
MakeForm(PRT,"Ball")
646
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
647
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
648
PRT.Color = C3(0/0, 0/0, 0/0)
649
MakeForm(PRT,"Ball")
650
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
651
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
652
PRT.Color = C3(0/0, 0/0, 0/0)
653
MakeForm(PRT,"Ball")
654
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
655
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
656
PRT.Color = C3(0/0, 0/0, 0/0)
657
MakeForm(PRT,"Ball")
658
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(15), RAD(0)), CF(0, 0, 0))
659
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
660
PRT.Color = C3(0/0, 0/0, 0/0)
661
MakeForm(PRT,"Ball")
662
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(-15), RAD(0)), CF(0, 0, 0))
663
664
665
666
667
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
668
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
669
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
670
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
671
MakeForm(PRT,"Cyl")
672
local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Mid gray", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
673
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
674
MakeForm(PRT,"Cyl")
675
PRT.Color = C3(159/255, 111/255, 183/255)
676
local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
677
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
678
MakeForm(RING,"Cyl")
679
RING.Color = C3(0,0,0)
680
for i = 1, 12 do
681
	local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0)*SIZE,false)
682
	PRT.Color = C3(0,0,0)
683
	local MSH = IT("BlockMesh",PRT)
684
	MSH.Scale = VT(0.6,1,1)
685
	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))
686
end
687
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15)*SIZE,false)
688
PRT.Color = C3(0,0,0)
689
local MSH = IT("BlockMesh",PRT)
690
MSH.Scale = VT(0.4,1,1)
691
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))
692
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
693
PRT.Color = C3(0,0,0)
694
local MSH = IT("BlockMesh",PRT)
695
MSH.Scale = VT(0.4,1,1)
696
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))
697
coroutine.resume(coroutine.create(function()
698
	while true do
699
		Swait()
700
		CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
701
		WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
702
		WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
703
		if CLOCKLOOP <= -150 then
704
			if VALUE1 == false then
705
				CLOCKLOOP = 0
706
				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(0/0, 0/0, 0/0), SoundID = 141606337, SoundPitch = 1.2, SoundVolume = 4})
707
				local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
708
				ApplyAoE(HITPOS,10,15,45,75,false)
709
				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(0/0, 0/0, 0/0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
710
				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(0/0, 0/0, 0/0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
711
				if CLOCKTARGET ~= nil then
712
					CLOCKTARGET.Health = CLOCKTARGET.Health - 20
713
					if CLOCKTARGET.Torso ~= nil then
714
						CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
715
					end
716
					if CLOCKTARGET.Health == 0 then
717
						CLOCKTARGET = nil
718
					end
719
				end
720
			end
721
		end
722
	end
723
end))
724
725
for _, c in pairs(Weapon:GetChildren()) do
726
	if c.ClassName == "Part" then
727
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
728
	end
729
end
730
731
Neck.Name = "Weld"
732
RootJoint.Name = "Weld"
733
RightShoulder.Name = "Weld"
734
LeftShoulder.Name = "Weld"
735
RightHip.Name = "Weld"
736
LeftHip.Name = "Weld"
737
738
local SKILLTEXTCOLOR = C3(159/255, 111/255, 183/255)
739
local SKILLFONT = "Fantasy"
740
local SKILLTEXTSIZE = 7
741
742
Weapon.Parent = Character
743
Humanoid.Parent = Character
744
745
Humanoid.Died:connect(function()
746
	ATTACK = true
747
end)
748
749
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23-.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
750
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50+.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
751
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
752
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
753
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
754
755
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Magic Missiles", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
756
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Times up", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
757
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Chained Punch", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
758
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warp Meteor", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
759
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Pandora's Box", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
760
761
--//=================================\\
762
--||			DAMAGING
763
--\\=================================//
764
765
function ApplyDamage(Humanoid,Damage,TorsoPart)
766
	local defence = Instance.new("BoolValue",Humanoid.Parent)
767
	defence.Name = ("HitBy"..Player.Name)
768
	game:GetService("Debris"):AddItem(defence, 0.001)
769
	Damage = Damage * DAMAGEMULTIPLIER
770
	if Humanoid.Health ~= 0 then
771
		local CritChance = MRANDOM(1,100)
772
		if Damage > Humanoid.Health then
773
			Damage = math.ceil(Humanoid.Health)
774
			if Damage == 0 then
775
				Damage = 0.1
776
			end
777
		end
778
		Humanoid.Health = Humanoid.Health - Damage
779
	end
780
end
781
782
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
783
	local CHILDREN = workspace:GetDescendants()
784
	for index, CHILD in pairs(CHILDREN) do
785
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
786
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
787
			if HUM then
788
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
789
				if TORSO then
790
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
791
						if INSTAKILL == true then
792
							CHILD:BreakJoints()
793
						else
794
							local DMG = MRANDOM(MINDMG,MAXDMG)
795
							ApplyDamage(HUM,DMG,TORSO)
796
						end
797
						if FLING > 0 then
798
							for _, c in pairs(CHILD:GetChildren()) do
799
								if c:IsA("BasePart") then
800
									local bv = Instance.new("BodyVelocity") 
801
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
802
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
803
									bv.Parent = c
804
									Debris:AddItem(bv,0.05)
805
								end
806
							end
807
						end
808
					end
809
				end
810
			end
811
		end
812
	end
813
end
814
815
--//=================================\\
816
--||	ATTACK FUNCTIONS AND STUFF
817
--\\=================================//
818
819
function MagicMissiles()
820
	ATTACK = true
821
	Rooted = true
822
	local SELECTING = true
823
	local SPOTS = {}
824
	coroutine.resume(coroutine.create(function()
825
		local LOOP = 0
826
		repeat
827
			LOOP = LOOP + 1
828
			Swait()
829
			if LOOP >= 10 then
830
				LOOP = 0
831
				for i = 1, #SPOTS do
832
					if SPOTS[i] ~= nil then
833
						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})
834
						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})
835
					end
836
				end
837
			end
838
			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)
839
			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)
840
			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)
841
			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)
842
			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)
843
			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)
844
		until SELECTING == false
845
		Rooted = false
846
		repeat
847
			LOOP = LOOP + 1
848
			Swait()
849
			if LOOP >= 10 then
850
				LOOP = 0
851
				for i = 1, #SPOTS do
852
					if SPOTS[i] ~= nil then
853
						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})
854
						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})
855
					end
856
				end
857
			end
858
			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)
859
			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)
860
			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)
861
			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)
862
			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)
863
			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)
864
		until ATTACK == false
865
	end))
866
	repeat
867
		repeat Swait() until HOLD == true
868
			local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
869
			if DIST > 65 then
870
				DIST = 65
871
			end
872
			local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
873
			local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)	
874
			if HITFLOOR ~= nil then
875
				table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
876
				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})
877
				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})
878
			end
879
		repeat Swait() until HOLD == false
880
	until #SPOTS == 5
881
	SELECTING = false
882
	for i = 1, #SPOTS do
883
		if SPOTS[i] ~= nil then
884
			local POS = SPOTS[i]
885
			coroutine.resume(coroutine.create(function()
886
				local MISSILE = IT("Model",Effects)
887
				MISSILE.Name = "Missile"
888
				local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,2,2))
889
				MakeForm(BASEPART,"Cyl")
890
				MISSILE.PrimaryPart = BASEPART
891
				BASEPART.CFrame = POS*CF(0,-30*3,0)
892
				local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,4,2))
893
				MakeForm(HEAD,"Ball")
894
				HEAD.CFrame = BASEPART.CFrame*CF(0,1,0)
895
				local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2.5,0.1,2.5))
896
				MakeForm(TAIL,"Cyl")
897
				TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
898
				for i = 1, 10 do
899
					Swait()
900
					for _, c in pairs(MISSILE:GetChildren()) do
901
						if c.ClassName == "Part" then
902
							c.Transparency = c.Transparency - 1/10
903
						end
904
					end
905
				end
906
				for i = 1, 15*1.5 do
907
					Swait()
908
					MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
909
				end
910
				ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
911
				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})
912
				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})
913
				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})
914
				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})
915
				MISSILE:remove()
916
			end))
917
		end
918
	end
919
	wait(0.6)
920
	ATTACK = false
921
	Rooted = false
922
end
923
924
function TimesUp()
925
	CLOCKTARGET = nil
926
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
927
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
928
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
929
		if TORSO then
930
			ATTACK = true
931
			Rooted = false
932
			coroutine.resume(coroutine.create(function()
933
				repeat
934
					Swait()
935
					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)
936
					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)
937
					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)
938
					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)
939
					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)
940
					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)
941
				until ATTACK == false
942
			end))
943
			if Effects:FindFirstChild("NeonDoll") then
944
				repeat Swait() until Effects:FindFirstChild("NeonDoll") == nil
945
			end
946
			wait(0.5)
947
			local FAKECHARACTER = IT("Model",Effects)
948
			FAKECHARACTER.Name = "NeonDoll"
949
			local TORS = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.3,0.3,0.15),false)
950
			CreateWeldOrSnapOrMotor("Weld", RING, RING, TORS, CF(0,0.6,0), CF(0,0,0))
951
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
952
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0,0.15,0))
953
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
954
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(-0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0,0.15,0))
955
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
956
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0,0.15,0))
957
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.3,0.15),false)
958
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(-0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0,0.15,0))
959
			local HEAD = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Alder", "Part", VT(0.15,0.15,0.15),false)
960
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, HEAD, CF(0,0.225,0), CF(0,0,0))
961
			CreateSound(201858045, TORS, 5, 0.4, false)
962
			for i = 1, 150 do
963
				Swait()
964
				CLOCKSPEED = 6
965
				for _, c in pairs(FAKECHARACTER:GetChildren()) do
966
					if c.ClassName == "Part" then
967
						c.Transparency = c.Transparency - 0.5/150
968
					end
969
				end
970
			end
971
			CLOCKTARGET = HUM
972
			coroutine.resume(coroutine.create(function()
973
				repeat Swait() CLOCKSPEED = 2 until CLOCKTARGET == nil
974
				for i = 1, 25 do
975
					Swait()
976
					for _, c in pairs(FAKECHARACTER:GetChildren()) do
977
						if c.ClassName == "Part" then
978
							c.Transparency = c.Transparency + 0.5/25
979
						end
980
					end
981
				end
982
				CLOCKSPEED = 1
983
				FAKECHARACTER:remove()
984
			end))
985
			wait(0.5)
986
			ATTACK = false
987
			Rooted = false
988
		end
989
	end
990
end
991
992
function ChainPunch()
993
	ATTACK = true
994
	Rooted = false
995
	local GYRO = IT("BodyGyro",RootPart)
996
	GYRO.D = 25
997
	GYRO.P = 2000
998
	GYRO.MaxTorque = VT(0,40000,0)
999
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1000
	repeat
1001
		Swait()
1002
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1003
		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)
1004
		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)
1005
		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)
1006
		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)
1007
		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)
1008
		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)
1009
	until HOLD == true
1010
	local POS = Mouse.Hit.p
1011
	local CHAINS = false
1012
	local CHAINLINKS = {}
1013
	local A = IT("Attachment",RightArm)
1014
	A.Position = VT(1,-1,0)*SIZE
1015
	A.Orientation = VT(-90, -89.982, 0)
1016
	local B = IT("Attachment",RightArm)
1017
	B.Position = VT(-1,-1,0)*SIZE
1018
	B.Orientation = VT(-90, 89.988, 0)
1019
	local C = IT("Attachment",RightArm)
1020
	C.Position = VT(0.5,-1.3,0)*SIZE
1021
	C.Orientation = VT(-90, -89.982, 0)
1022
	local D = IT("Attachment",RightArm)
1023
	D.Position = VT(-0.5,-1.3,0)*SIZE
1024
	D.Orientation = VT(-90, 89.988, 0)
1025
	local LIGHT = IT("Attachment",RightArm)
1026
	LIGHT.Position = VT(0,-1,0)*SIZE
1027
	local LIGHT2 = IT("PointLight",LIGHT)
1028
	LIGHT2.Range = 7
1029
	LIGHT2.Brightness = 5
1030
	LIGHT2.Color = SKILLTEXTCOLOR
1031
	for i = 1, 2 do
1032
		local TWIST = -2
1033
		local START = A
1034
		local END = B
1035
		if i == 1 then
1036
			START = B
1037
			END = A
1038
		end
1039
		local ChainLink = IT("Beam",Torso)
1040
		ChainLink.Texture = "rbxassetid://73042633"
1041
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1042
		ChainLink.TextureSpeed = 1
1043
		ChainLink.Width0 = 1
1044
		ChainLink.Width1 = 1
1045
		ChainLink.TextureLength = 2.5
1046
		ChainLink.Attachment0 = START
1047
		ChainLink.Attachment1 = END
1048
		ChainLink.CurveSize0 = TWIST
1049
		ChainLink.CurveSize1 = TWIST
1050
		--ChainLink.FaceCamera = true
1051
		ChainLink.Segments = 45
1052
		ChainLink.Transparency = NumberSequence.new(1)
1053
		table.insert(CHAINLINKS,ChainLink)
1054
	end
1055
	for i = 1, 2 do
1056
		local TWIST = -1
1057
		local START = C
1058
		local END = D
1059
		if i == 1 then
1060
			START = D
1061
			END = C
1062
		end
1063
		local ChainLink = IT("Beam",Torso)
1064
		ChainLink.Texture = "rbxassetid://73042633"
1065
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1066
		ChainLink.TextureSpeed = 1
1067
		ChainLink.Width0 = 1
1068
		ChainLink.Width1 = 1
1069
		ChainLink.TextureLength = 5
1070
		ChainLink.Attachment0 = START
1071
		ChainLink.Attachment1 = END
1072
		ChainLink.CurveSize0 = TWIST
1073
		ChainLink.CurveSize1 = TWIST
1074
		--ChainLink.FaceCamera = true
1075
		ChainLink.Segments = 25
1076
		ChainLink.LightEmission = 0.5
1077
		ChainLink.Transparency = NumberSequence.new(1)
1078
		table.insert(CHAINLINKS,ChainLink)
1079
	end
1080
	coroutine.resume(coroutine.create(function()
1081
		repeat
1082
			Swait()
1083
			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)
1084
			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)
1085
			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)
1086
			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)
1087
			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)
1088
			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)
1089
		until CHAINS == true
1090
		repeat
1091
			Swait()
1092
			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)
1093
			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)
1094
			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)
1095
			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)
1096
			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)
1097
			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)
1098
		until ATTACK == false
1099
		for e = 1, 15 do
1100
			Swait()
1101
			for i = 1, #CHAINLINKS do
1102
				CHAINLINKS[i].Transparency = NumberSequence.new((e/15))
1103
			end
1104
		end
1105
		A:remove()
1106
		B:remove()
1107
		C:remove()
1108
		D:remove()
1109
	end))
1110
	CreateSound(233856115, RightArm, 5, 1.2, false)
1111
	for e = 1, 15 do
1112
		Swait()
1113
		for i = 1, #CHAINLINKS do
1114
			CHAINLINKS[i].Transparency = NumberSequence.new(1-(e/15))
1115
		end
1116
	end
1117
	CHAINS = true
1118
	Rooted = true
1119
	wait(0.25)
1120
	local FIST = CreatePart(3, Effects, "Neon", 0, 0.5, "Alder", "Part", VT(2,2,2))
1121
	FIST.Color = C3(1, 215/255, 1)
1122
	FIST.CFrame = CF(RightArm.CFrame*CF(0,-1.3*SIZE,0).p,POS) * ANGLES(RAD(90), RAD(0), RAD(0)) 
1123
	local LIGHT3 = IT("PointLight",FIST)
1124
	LIGHT3.Range = 7
1125
	LIGHT3.Brightness = 5
1126
	LIGHT3.Color = SKILLTEXTCOLOR
1127
	CreateMesh("SpecialMesh", FIST, "FileMesh", "465130943", "", VT(10,10,10), VT(0,0,0))
1128
	local FISTA = IT("Attachment",FIST)
1129
	FISTA.Position = VT(0.062, 0.977, 0)
1130
	local ChainLink = IT("Beam",Torso)
1131
	ChainLink.Texture = "rbxassetid://304369964"
1132
	ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1133
	ChainLink.TextureSpeed = 0
1134
	ChainLink.Width0 = 3
1135
	ChainLink.Width1 = 3
1136
	ChainLink.TextureLength = 12
1137
	ChainLink.Attachment0 = LIGHT
1138
	ChainLink.Attachment1 = FISTA
1139
	ChainLink.FaceCamera = true
1140
	ChainLink.Segments = 45
1141
	ChainLink.LightEmission = 0.5
1142
	ChainLink.Transparency = NumberSequence.new(0.25)
1143
	local FISTSOUND = CreateSound(288641686, FIST, 5, 1.2, false)
1144
	for i = 1, 85 do
1145
		Swait()
1146
		FIST.CFrame = FIST.CFrame*CF(0,-2,0)
1147
		ChainLink.TextureLength = 12+(i*2)
1148
		ApplyAoE(FIST.Position,10,15,25,100,false)
1149
		WACKYEFFECT({Time = 5, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), 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})
1150
		local HITFLOOR = Raycast(FIST.Position, (CF(FIST.Position, FIST.CFrame*CF(0,-1,0).p)).lookVector, 2.1, Character)
1151
		if HITFLOOR ~= nil then
1152
			HITFLOOR:BreakJoints()
1153
			coroutine.resume(coroutine.create(function()
1154
				for i = 1, 15 do
1155
					Swait()
1156
					FISTSOUND.Volume = FISTSOUND.Volume - 0.15
1157
					ApplyAoE(FIST.Position,10+(i*2),5,15,5,false)
1158
					WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), 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})
1159
				end
1160
			end))
1161
			break
1162
		end
1163
	end
1164
	coroutine.resume(coroutine.create(function()
1165
		for i = 1, 50 do
1166
			Swait()
1167
			FIST.Transparency = FIST.Transparency + 0.5/50
1168
			LIGHT3.Range = LIGHT3.Range - 7/50
1169
		end
1170
		FIST:remove()
1171
	end))
1172
	LIGHT:remove()
1173
	GYRO:remove()
1174
	ATTACK = false
1175
	Rooted = false
1176
end
1177
1178
function WarpMeteor()
1179
	local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
1180
	if DIST > 180 then
1181
		DIST = 180
1182
	end
1183
	local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
1184
	local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,45,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 75*SIZE, Character)
1185
	if HITFLOOR then
1186
		local POS = HITPOS	
1187
		ATTACK = true
1188
		Rooted = true
1189
		local WARPED = false
1190
		local SMASHED = false
1191
		local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
1192
		coroutine.resume(coroutine.create(function()
1193
			repeat
1194
				Swait()
1195
				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)
1196
				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)
1197
				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)
1198
				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)
1199
				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)
1200
				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)
1201
			until WARPED == true
1202
			repeat
1203
				Swait()
1204
				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)
1205
				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)
1206
				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)
1207
				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)
1208
				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)
1209
				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)
1210
			until SMASHED == true
1211
			repeat
1212
				Swait()
1213
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
1214
			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)
1215
			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)
1216
			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)
1217
			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)
1218
			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)
1219
			until ATTACK == false
1220
		end))
1221
		VALUE1 = true
1222
		CreateSound(233856115, Torso, 5, 1.6, false)
1223
		for i = 1, 25 do
1224
			Swait()
1225
			for _, c in pairs(Character:GetChildren()) do
1226
				if c.ClassName == "Part" then
1227
					c.Transparency = c.Transparency + 1/25
1228
				end
1229
			end
1230
			for _, c in pairs(Weapon:GetChildren()) do
1231
				if c.ClassName == "Part" then
1232
					c.Transparency = c.Transparency + 1/25
1233
				end
1234
			end
1235
		end
1236
		UNANCHOR = false
1237
		RootPart.Anchored = true
1238
		RootPart.Velocity = VT(0,0,0)
1239
		local ROOTPOS = RootPart.Position
1240
		RootPart.CFrame = CF(POS+VT(0,300,0),VT(ROOTPOS.X,POS.Y+300,ROOTPOS.Z))
1241
		WARPED = true
1242
		for i = 1, 25 do
1243
			Swait()
1244
			for _, c in pairs(Character:GetChildren()) do
1245
				if c.ClassName == "Part" then
1246
					c.Transparency = c.Transparency - 1/25
1247
				end
1248
			end
1249
			for _, c in pairs(Weapon:GetChildren()) do
1250
				if c.ClassName == "Part" then
1251
					c.Transparency = c.Transparency - 1/25
1252
				end
1253
			end
1254
		end
1255
		local SHELL = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Part", VT(0,0,0))
1256
		SHELL.CFrame = RootPart.CFrame
1257
		MakeForm(SHELL,"Ball")
1258
		CreateSound(402981977, SHELL, 5, 1.6, false)
1259
		for i = 1, 10 do
1260
			Swait()
1261
			SHELL.Transparency = SHELL.Transparency - 1/10
1262
			SHELL.Size = SHELL.Size + VT(0.6,0.6,0.6)*1.8
1263
		end
1264
		for i = 1, math.ceil(75/2) do
1265
			Swait()
1266
			RootPart.CFrame = RootPart.CFrame*CF(0,-3.5*2,0)
1267
			SHELL.CFrame = CF(RootPart.Position)
1268
			WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(5,3,5), 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})
1269
		end
1270
		RootPart.CFrame = CF(POS+VT(0,1,0),VT(ROOTPOS.X,HITPOS.Y+1,ROOTPOS.Z))
1271
		SHELL.CFrame = CF(RootPart.Position)
1272
		WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(35,35,35)*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})
1273
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*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})
1274
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*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})
1275
		for i = 1, 5 do
1276
			WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*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})
1277
		end
1278
		SHELL:remove()
1279
		ApplyAoE(RootPart.Position,75,35,75,175,false)
1280
		SMASHED = true
1281
		wait(1)
1282
		VALUE1 = false
1283
		UNANCHOR = true
1284
		ATTACK = false
1285
		Rooted = false
1286
	end
1287
end
1288
1289
function PandorasBox()
1290
	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)
1291
	if HITFLOOR ~= nil then
1292
		ATTACK = true
1293
		Rooted = true
1294
		local RINGSPIN = true
1295
		local CONSTRUCTING = true
1296
		local RING = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Ring", VT(0,0,0))
1297
		RING.Color = C3(0,0,0)
1298
		MakeForm(RING,"Cyl")
1299
		RING.CFrame = CF(HITPOS)
1300
		CreateSound(402981977, RING, 5, 1.2, false)
1301
		coroutine.resume(coroutine.create(function()
1302
			repeat
1303
				Swait()
1304
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1305
				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)
1306
				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)
1307
				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)
1308
				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)
1309
				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)
1310
				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)
1311
			until CONSTRUCTING == false
1312
			repeat 
1313
				Swait() 
1314
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1315
			until RINGSPIN == false
1316
			for i = 1, 25 do
1317
				Swait()
1318
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1319
				RING.Size = RING.Size - VT(0.15,0,0.15)
1320
				--DECAL.Transparency = DECAL.Transparency + 1/25
1321
				RING.Transparency = RING.Transparency + 1/25
1322
			end
1323
			RING:remove()
1324
		end))
1325
		for i = 1, 15 do
1326
			Swait()
1327
			RING.Size = RING.Size + VT(0.75,0,0.75)
1328
			RING.Transparency = RING.Transparency - 1/15
1329
		end
1330
		local BOXSPIN = true
1331
		local PANDORASBOX = IT("Model",Effects)
1332
		PANDORASBOX.Name = "Pandora's Box"
1333
		local BOX = IT("Model",PANDORASBOX)
1334
		BOX.Name = "Body"
1335
		local LID = IT("Model",PANDORASBOX)
1336
		LID.Name = "Lid"
1337
		--BUILDING THE BOX--
1338
			local BASE = CreatePart(3, BOX, "Neon", 0, 0, "Alder", "Black", VT(2,1.8,2))
1339
			BASE.Color = C3(0,0,0)
1340
			PANDORASBOX.PrimaryPart = BASE
1341
			BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
1342
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1343
			WOOD.CFrame = BASE.CFrame*CF(1,0,1)
1344
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1345
			WOOD.CFrame = BASE.CFrame*CF(1,0,-1)
1346
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1347
			WOOD.CFrame = BASE.CFrame*CF(-1,0,1)
1348
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1349
			WOOD.CFrame = BASE.CFrame*CF(-1,0,-1)
1350
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1351
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,1)
1352
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1353
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,-1)
1354
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1355
			WOOD.CFrame = BASE.CFrame*CF(1,0.9,0)
1356
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1357
			WOOD.CFrame = BASE.CFrame*CF(-1,0.9,0)
1358
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1359
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,1)
1360
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1361
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,-1)
1362
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1363
			WOOD.CFrame = BASE.CFrame*CF(1,-0.9,0)
1364
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1365
			WOOD.CFrame = BASE.CFrame*CF(-1,-0.9,0)
1366
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
1367
			WOOD.CFrame = BASE.CFrame*CF(0,0,1)
1368
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
1369
			WOOD.CFrame = BASE.CFrame*CF(0,0,-1)
1370
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
1371
			WOOD.CFrame = BASE.CFrame*CF(1,0,0)
1372
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
1373
			WOOD.CFrame = BASE.CFrame*CF(-1,0,0)
1374
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
1375
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,0)
1376
			-------------
1377
			local LIDPART = CreatePart(3, LID, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
1378
			LIDPART.CFrame = BASE.CFrame*CF(0,1,0)
1379
			LID.PrimaryPart = LIDPART
1380
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1381
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,-1)
1382
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1383
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,1)
1384
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1385
			WOOD.CFrame = LIDPART.CFrame*CF(1,0,0)
1386
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1387
			WOOD.CFrame = LIDPART.CFrame*CF(-1,0,0)
1388
			local DECAL = IT("Decal",LIDPART)
1389
			DECAL.Face = "Top"
1390
			DECAL.Texture = "http://www.roblox.com/asset/?id=1501226061"
1391
			DECAL.Color3 = C3(0,0,0)
1392
		--BUILDING THE BOX--
1393
		coroutine.resume(coroutine.create(function()
1394
			repeat
1395
				Swait()
1396
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * ANGLES(RAD(0), RAD(2.45), RAD(0)))
1397
			until BOXSPIN == false
1398
		end))
1399
		for i = 1, 25 do
1400
			Swait()
1401
			PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,1.5-(i/12.5),0))
1402
		end
1403
		wait(0.5)
1404
		BOXSPIN = false
1405
		CONSTRUCTING = false	
1406
		coroutine.resume(coroutine.create(function()
1407
			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})
1408
			--[[for i = 1, 45 do
1409
				Swait()
1410
				LID:SetPrimaryPartCFrame(LIDPART.CFrame * CF(0,1.5-(i/12.5),0.5) * ANGLES(RAD(0.7), RAD(0), RAD(0)))
1411
			end-
1412
			LID:remove()]]--
1413
			for _, c in pairs(LID:GetChildren()) do
1414
				if c.ClassName == "Part" then
1415
					c.Anchored = false
1416
					c.CanCollide = true
1417
					if c ~= LIDPART then
1418
						weldBetween(LIDPART,c)
1419
					end
1420
				end
1421
			end
1422
			LIDPART.Velocity = CF(LIDPART.Position,LIDPART.CFrame*CF(15,25,0).p).lookVector*65
1423
			Debris:AddItem(LID,15)
1424
			wait(0.5)
1425
			local RANDOMEFFECT = MRANDOM(1,4)
1426
			if RANDOMEFFECT == 1 then
1427
				for i = 1, 45 do
1428
					wait((2-(i/15))/15)
1429
					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})
1430
				end	
1431
				wait(1)
1432
				WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35)*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})
1433
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*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})
1434
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*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})
1435
				for i = 1, 5 do
1436
					WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*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})
1437
				end
1438
				ApplyAoE(BASE.Position,50,1,200,375,false)
1439
				ApplyAoE(BASE.Position,250,35,75,175,false)
1440
			elseif RANDOMEFFECT == 2 then
1441
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
1442
				FIELD.CFrame = BASE.CFrame
1443
				MakeForm(FIELD,"Ball")
1444
				for i = 1, 50 do
1445
					Swait()
1446
					FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
1447
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1448
				end
1449
				wait(0.2)
1450
				local LOOP = CreateSound(1393698948, FIELD, 0, 1.2, true)
1451
				coroutine.resume(coroutine.create(function()
1452
					for i = 1, 75 do
1453
						Swait()
1454
						LOOP.Volume = LOOP.Volume + 10/75
1455
						LOOP.Parent = FIELD
1456
						local CHILDREN = workspace:GetDescendants()
1457
						for index, CHILD in pairs(CHILDREN) do
1458
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1459
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1460
								if HUM then
1461
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1462
									if TORSO then
1463
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1464
											HUM.Health = HUM.Health - 0.1
1465
											TORSO.Velocity = VT(0,5,0)
1466
											HUM.PlatformStand = true
1467
											if TORSO.RotVelocity.Magnitude < 15 then
1468
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1469
											end
1470
										end
1471
									end
1472
								end
1473
							end
1474
						end
1475
						FIELD.Size = FIELD.Size + VT(3,3,3)
1476
						FIELD.Transparency = FIELD.Transparency + 0.8/75
1477
					end
1478
					for i = 1, 500 do
1479
						Swait()
1480
						LOOP.Parent = FIELD
1481
						local CHILDREN = workspace:GetDescendants()
1482
						for index, CHILD in pairs(CHILDREN) do
1483
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1484
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1485
								if HUM then
1486
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1487
									if TORSO then
1488
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1489
											TORSO.Velocity = VT(0,5,0)
1490
											HUM.Health = HUM.Health - 0.1
1491
											HUM.PlatformStand = true
1492
											if TORSO.RotVelocity.Magnitude < 15 then
1493
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1494
											end
1495
										end
1496
									end
1497
								end
1498
							end
1499
						end
1500
					end
1501
					for i = 1, 25 do
1502
						Swait()
1503
						LOOP.Volume = LOOP.Volume + 10/25
1504
						LOOP.Parent = FIELD
1505
						local CHILDREN = workspace:GetDescendants()
1506
						for index, CHILD in pairs(CHILDREN) do
1507
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1508
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1509
								if HUM then
1510
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1511
									if TORSO then
1512
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
1513
											TORSO.Velocity = VT(0,5,0)
1514
											HUM.Health = HUM.Health - 0.1
1515
											HUM.PlatformStand = false
1516
											if TORSO.RotVelocity.Magnitude < 15 then
1517
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1518
											end
1519
										end
1520
									end
1521
								end
1522
							end
1523
						end
1524
						FIELD.Size = FIELD.Size - VT(3,3,3)
1525
						FIELD.Transparency = FIELD.Transparency + 0.2/25
1526
					end	
1527
					FIELD:remove()
1528
				end))
1529
			elseif RANDOMEFFECT == 3 then
1530
				for i = 1, 10 do
1531
					wait(0.15)
1532
					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})
1533
					coroutine.resume(coroutine.create(function()
1534
						local MINION = CLONE:Clone()
1535
						MINION.Parent = Effects
1536
						MINION.Name = "Shadow"
1537
						MINION.HumanoidRootPart.CFrame = BASE.CFrame*CF(0,5,0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
1538
						MINION.HumanoidRootPart.Velocity = CF(MINION.HumanoidRootPart.Position,MINION.HumanoidRootPart.CFrame*CF(0,8,-15).p).lookVector*MRANDOM(55,100)
1539
						for _, c in pairs(MINION:GetChildren()) do
1540
							if c.ClassName == "Part" then
1541
								c.Material = "Neon"
1542
								c.Color = C3(0,0,0)
1543
								c.Transparency = 0.25
1544
								if c.Name == "Head" then
1545
									c:ClearAllChildren()
1546
									local MSH = IT("BlockMesh",c)
1547
									MSH.Scale = VT(0.5,1,1)
1548
								end
1549
							end
1550
						end
1551
						local TORSO = MINION.Torso
1552
						local HUMAN = MINION.Humanoid
1553
						HUMAN.WalkSpeed = 50
1554
						HUMAN.MaxHealth = math.huge
1555
						HUMAN.Health = math.huge
1556
						HUMAN.DisplayDistanceType = "None"
1557
						HUMAN.Died:connect(function()
1558
							MINION:remove()
1559
							--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 3, 0.5, false)
1560
						end)
1561
						wait(1)
1562
						local findNearestTorso = function(POS)
1563
							local list = game.Workspace:GetDescendants()
1564
							local torso = nil
1565
							local dist = 500
1566
							local temp = nil
1567
							local human = nil
1568
							local temp2 = nil
1569
							for x = 1, #list do
1570
								temp2 = list[x]
1571
								if (temp2.className == "Model") and (temp2 ~= Character) and (temp2.Parent ~= Effects) then
1572
									temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
1573
									human = temp2:findFirstChildOfClass("Humanoid")
1574
									if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
1575
										if (temp.Position - POS).magnitude < dist then
1576
											torso = temp
1577
											dist = (temp.Position - POS).magnitude
1578
										end
1579
									end
1580
								end
1581
							end
1582
							return torso, dist
1583
						end
1584
						for i = 1, 40 do
1585
							if HUMAN.Health == 0 then
1586
								break
1587
							end
1588
							wait(0.3)
1589
							local target,dist= findNearestTorso(TORSO.Position)
1590
							if target then
1591
								HUMAN:MoveTo(target.Position)
1592
								if dist < 25 then
1593
									CreateSound(348663022, TORSO, 10, 1, true)
1594
									wait(2)
1595
									--local ANIM = HUMAN:LoadAnimation(ATANIM)
1596
									--ANIM:Play()
1597
									--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 1, 1, false)
1598
									ApplyAoE(TORSO.Position,10,0,0,85,true)
1599
									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})
1600
									for i = 1, 5 do
1601
										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})
1602
									end
1603
									break
1604
								end
1605
							end
1606
						end
1607
						MINION:remove()
1608
					end))
1609
				end
1610
			elseif RANDOMEFFECT == 4 then
1611
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
1612
				FIELD.Color = C3(0,0,0)
1613
				FIELD.CFrame = BASE.CFrame
1614
				MakeForm(FIELD,"Ball")
1615
				FIELD.CanCollide = true
1616
				for i = 1, 50 do
1617
					Swait()
1618
					FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
1619
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1620
				end
1621
				wait(0.2)
1622
				local LOOP = CreateSound(487214658, FIELD, 0, 1, true)
1623
				coroutine.resume(coroutine.create(function()
1624
					local E = 0
1625
					for i = 1, 75 do
1626
						E = E + 1
1627
						Swait()
1628
						if E >= 35 then
1629
							E = 0
1630
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, 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})
1631
						end
1632
						LOOP.Volume = LOOP.Volume + 10/75
1633
						LOOP.Parent = FIELD
1634
						local CHILDREN = workspace:GetDescendants()
1635
						for index, CHILD in pairs(CHILDREN) do
1636
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1637
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1638
								if HUM then
1639
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1640
									if TORSO then
1641
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
1642
											for _, c in pairs(CHILD:GetChildren()) do
1643
												if c:IsA("BasePart") then
1644
													local bv = Instance.new("BodyVelocity") 
1645
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1646
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
1647
													bv.Parent = c
1648
													Debris:AddItem(bv,0.05)
1649
												end
1650
											end
1651
											HUM.Health = HUM.Health - 0.3
1652
										end
1653
									end
1654
								end
1655
							end
1656
						end
1657
						FIELD.Size = FIELD.Size + VT(0.3,0.3,0.3)/5
1658
					end
1659
					for i = 1, 180 do
1660
						E = E + 1
1661
						Swait()
1662
						if E >= 35 then
1663
							E = 0
1664
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, 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})
1665
						end
1666
						LOOP.Parent = FIELD
1667
						local CHILDREN = workspace:GetDescendants()
1668
						for index, CHILD in pairs(CHILDREN) do
1669
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1670
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1671
								if HUM then
1672
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1673
									if TORSO then
1674
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
1675
											for _, c in pairs(CHILD:GetChildren()) do
1676
												if c:IsA("BasePart") then
1677
													local bv = Instance.new("BodyVelocity") 
1678
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1679
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
1680
													bv.Parent = c
1681
													Debris:AddItem(bv,0.05)
1682
												end
1683
											end
1684
											HUM.Health = HUM.Health - 0.3
1685
										end
1686
									end
1687
								end
1688
							end
1689
						end
1690
					end
1691
					ApplyAoE(FIELD.Position,40,15,20,375,false)
1692
					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})
1693
					for i = 1, 5 do
1694
						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})
1695
					end
1696
					FIELD:remove()
1697
				end))
1698
			elseif RANDOMEFFECT == 5 then
1699
			end
1700
			wait(0.5)
1701
			for i = 1, 25 do
1702
				Swait()
1703
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,-0.3,0))
1704
			end
1705
			PANDORASBOX:remove()
1706
			RINGSPIN = false
1707
		end))
1708
		ATTACK = false
1709
		Rooted = false
1710
	end
1711
end
1712
1713
function Taunt()
1714
	ATTACK = true
1715
	local LAUGH = nil
1716
	coroutine.resume(coroutine.create(function()
1717
		repeat
1718
			Swait()
1719
			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)
1720
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
1721
			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)
1722
			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)
1723
			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)
1724
			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)
1725
		until LAUGH ~= nil
1726
		repeat
1727
			Swait()
1728
			LAUGH.Parent = Head
1729
			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)
1730
			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)
1731
			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)
1732
			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)
1733
			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)
1734
			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)
1735
		until LAUGH.Playing == false
1736
	ATTACK = false
1737
	end))
1738
	wait(0.1)
1739
	sick:Pause()
1740
	LAUGH = CreateSound(525166232, Head, 10, 1, false)
1741
	wait(1)
1742
	sick:Resume()
1743
end
1744
1745
--//=================================\\
1746
--||	  ASSIGN THINGS TO KEYS
1747
--\\=================================//
1748
1749
function MouseDown(Mouse)
1750
	HOLD = true
1751
	if ATTACK == false then
1752
	end
1753
end
1754
1755
function MouseUp(Mouse)
1756
HOLD = false
1757
end
1758
1759
function KeyDown(Key)
1760
	KEYHOLD = true
1761
	if Key == "z" and ATTACK == false then
1762
		MagicMissiles()
1763
	end
1764
1765
	if Key == "b" and ATTACK == false then
1766
		TimesUp()
1767
	end
1768
1769
	if Key == "c" and ATTACK == false then
1770
		ChainPunch()
1771
	end
1772
1773
	if Key == "v" and ATTACK == false then
1774
		WarpMeteor()
1775
	end
1776
1777
	if Key == "x" and ATTACK == false then
1778
		PandorasBox()
1779
	end
1780
1781
	if Key == "t" and ATTACK == false then
1782
		Taunt()
1783
	end
1784
end
1785
1786
function KeyUp(Key)
1787
	KEYHOLD = false
1788
end
1789
1790
	Mouse.Button1Down:connect(function(NEWKEY)
1791
		MouseDown(NEWKEY)
1792
	end)
1793
	Mouse.Button1Up:connect(function(NEWKEY)
1794
		MouseUp(NEWKEY)
1795
	end)
1796
	Mouse.KeyDown:connect(function(NEWKEY)
1797
		KeyDown(NEWKEY)
1798
	end)
1799
	Mouse.KeyUp:connect(function(NEWKEY)
1800
		KeyUp(NEWKEY)
1801
	end)
1802
1803
--//=================================\\
1804
--\\=================================//
1805
1806
1807
function unanchor()
1808
	if UNANCHOR == true then
1809
		RootPart.Anchored = false
1810
	end
1811
	g = Character:GetChildren()
1812
	for i = 1, #g do
1813
		if g[i].ClassName == "Part" and g[i] ~= RootPart then
1814
			g[i].Anchored = false
1815
		end
1816
	end
1817
	g = Weapon:GetChildren()
1818
	for i = 1, #g do
1819
		if g[i].ClassName == "Part" then
1820
			g[i].Anchored = false
1821
		end
1822
	end
1823
end
1824
1825
1826
--//=================================\\
1827
--||	WRAP THE WHOLE SCRIPT UP
1828
--\\=================================//
1829
1830
Humanoid.Changed:connect(function(Jump)
1831
	if Jump == "Jump" and (Disable_Jump == true) then
1832
		Humanoid.Jump = false
1833
	end
1834
end)
1835
1836
while true do
1837
	Swait()
1838
	script.Parent = WEAPONGUI
1839
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1840
	    v:Stop();
1841
	end
1842
	ANIMATE.Parent = nil
1843
	SINE = SINE + CHANGE*1.5
1844
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1845
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1846
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
1847
	local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
1848
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1849
		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)
1850
		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)
1851
		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)
1852
		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)
1853
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1854
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1855
		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)
1856
		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)
1857
		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)
1858
	end
1859
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1860
		ANIM = "Jump"
1861
		if ATTACK == false then
1862
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1863
			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)
1864
			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)
1865
			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)
1866
			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)
1867
			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)
1868
	    end
1869
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1870
		ANIM = "Fall"
1871
		if ATTACK == false then
1872
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1873
			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)
1874
			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)
1875
			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)
1876
			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)
1877
			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)
1878
		end
1879
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1880
		ANIM = "Idle"
1881
		if ATTACK == false then
1882
			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)
1883
			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)
1884
			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)
1885
			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)
1886
			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)
1887
			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)
1888
		end
1889
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1890
		ANIM = "Walk"
1891
		if ATTACK == false then
1892
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1893
			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)
1894
			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)
1895
			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)
1896
			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)
1897
			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)
1898
		end
1899
	end
1900
	unanchor()
1901
	Humanoid.MaxHealth = "inf"
1902
	Humanoid.Health = "inf"
1903
	if Rooted == false then
1904
		Disable_Jump = false
1905
		Humanoid.WalkSpeed = Speed
1906
	elseif Rooted == true then
1907
		Disable_Jump = true
1908
		Humanoid.WalkSpeed = 0
1909
	end
1910
	for _, c in pairs(Character:GetChildren()) do
1911
		if c.ClassName == "Part" and c.Name ~= "Detail" then
1912
			c.Material = "Fabric"
1913
			if c:FindFirstChildOfClass("ParticleEmitter") then
1914
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1915
			end
1916
			if c ~= Head then
1917
				c.Color = C3(0,0,0)
1918
			else
1919
				c.Color = C3(1,1,1)
1920
			end
1921
			if c == Head then
1922
				if c:FindFirstChild("face") then
1923
					c.face:remove()
1924
				end
1925
			end
1926
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1927
			c:remove()
1928
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1929
			c:remove()
1930
		end
1931
	end
1932
	sick.SoundId = "rbxassetid://"..SONG
1933
	sick.Looped = true
1934
	sick.Pitch = 1
1935
	sick.Volume = 5
1936
	sick.Parent = Torso
1937
	sick:Resume()
1938
	--sick.Playing = false
1939
	Humanoid.Name = "Pandora = "..Player.Name
1940
end
1941
1942
--//=================================\\
1943
--\\=================================//
1944
1945
1946
1947
1948
1949
--//====================================================\\--
1950
--||			  		 END OF SCRIPT
1951
--\\====================================================//--