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