View difference between Paste ID: zk1Cg9TQ and 6XuJJ1Gt
SHOW: | | - or go back to the newest paste.
1
 if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use r/ and not rl/") end
2
local Player,game,owner = owner,game
3
local RealPlayer = Player
4
do
5
    print("FE Compatibility code by Mokiros")
6
    local rp = RealPlayer
7
    script.Parent = rp.Character
8
    
9
    --RemoteEvent for communicating
10
    local Event = Instance.new("RemoteEvent")
11
    Event.Name = "UserInput_Event"
12
 
13
    --Fake event to make stuff like Mouse.KeyDown work
14
    local function fakeEvent()
15
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16
        t.connect = t.Connect
17
        return t
18
    end
19
 
20
    --Creating fake input objects with fake variables
21
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
22
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25
    end}
26
    --Merged 2 functions into one by checking amount of arguments
27
    CAS.UnbindAction = CAS.BindAction
28
 
29
    --This function will trigger the events that have been :Connect()'ed
30
    local function te(self,ev,...)
31
        local t = m[ev]
32
        if t and t._fakeEvent then
33
            for _,f in pairs(t.Functions) do
34
                f(...)
35
            end
36
        end
37
    end
38
    m.TrigEvent = te
39
    UIS.TrigEvent = te
40
 
41
    Event.OnServerEvent:Connect(function(plr,io)
42
        if plr~=rp then return end
43
        m.Target = io.Target
44
        m.Hit = io.Hit
45
        if not io.isMouse then
46
            local b = io.UserInputState == Enum.UserInputState.Begin
47
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
            end
50
            for _,t in pairs(CAS.Actions) do
51
                for _,k in pairs(t.Keys) do
52
                    if k==io.KeyCode then
53
                        t.Function(t.Name,io.UserInputState,io)
54
                    end
55
                end
56
            end
57
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
        end
60
    end)
61
    Event.Parent = NLS([==[
62
    local Player = game:GetService("Players").LocalPlayer
63
    local Event = script:WaitForChild("UserInput_Event")
64
 
65
    local Mouse = Player:GetMouse()
66
    local UIS = game:GetService("UserInputService")
67
    local input = function(io,a)
68
        if a then return end
69
        --Since InputObject is a client-side instance, we create and pass table instead
70
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71
    end
72
    UIS.InputBegan:Connect(input)
73
    UIS.InputEnded:Connect(input)
74
 
75
    local h,t
76
    --Give the server mouse data 30 times every second, but only if the values changed
77
    --If player is not moving their mouse, client won't fire events
78
    while wait(1/30) do
79
        if h~=Mouse.Hit or t~=Mouse.Target then
80
            h,t=Mouse.Hit,Mouse.Target
81
            Event:FireServer({isMouse=true,Target=t,Hit=h})
82
        end
83
    end]==],Player.Character)
84
 
85
    ----Sandboxed game object that allows the usage of client-side methods and services
86
    --Real game object
87
    local _rg = game
88
 
89
    --Metatable for fake service
90
    local fsmt = {
91
        __index = function(self,k)
92
            local s = rawget(self,"_RealService")
93
            if s then return s[k] end
94
        end,
95
        __newindex = function(self,k,v)
96
            local s = rawget(self,"_RealService")
97
            if s then s[k]=v end
98
        end,
99
        __call = function(self,...)
100
            local s = rawget(self,"_RealService")
101
            if s then return s(...) end
102
        end
103
    }
104
    local function FakeService(t,RealService)
105
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106
        return setmetatable(t,fsmt)
107
    end
108
 
109
    --Fake game object
110
    local g = {
111
        GetService = function(self,s)
112
            return self[s]
113
        end,
114
        Players = FakeService({
115
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116
        },"Players"),
117
        UserInputService = FakeService(UIS,"UserInputService"),
118
        ContextActionService = FakeService(CAS,"ContextActionService"),
119
    }
120
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121
    g.service = g.GetService
122
    
123
    g.RunService = FakeService({
124
        RenderStepped = _rg:GetService("RunService").Heartbeat,
125
        BindToRenderStep = function(self,name,_,fun)
126
 
127
        end,
128
        UnbindFromRenderStep = function(self,name)
129
            self._btrs[name]:Disconnect()
130
        end,
131
    },"RunService")
132
 
133
    setmetatable(g,{
134
        __index=function(self,s)
135
            return _rg:GetService(s) or typeof(_rg[s])=="function"
136
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137
        end,
138
        __newindex = fsmt.__newindex,
139
        __call = fsmt.__call
140
    })
141
    --Changing owner to fake player object to support owner:GetMouse()
142
    game,owner = g,g.Players.LocalPlayer
143
end
144
print ("Updated 0.1 Fixed and change Smite2 Move")
145
146
--//====================================================\\--
147
--||		The Switcher by WanTH092
148
--\\====================================================//--
149
150
wait(0.2)
151
152
Player = game:GetService("Players").LocalPlayer
153
PlayerGui = Player.PlayerGui
154
Cam = workspace.CurrentCamera
155
Backpack = Player.Backpack
156
Character = Player.Character
157
Humanoid = Character.Humanoid
158
Mouse = Player:GetMouse()
159
RootPart = Character["HumanoidRootPart"]
160
Torso = Character["Torso"]
161
Head = Character["Head"]
162
RightArm = Character["Right Arm"]
163
LeftArm = Character["Left Arm"]
164
RightLeg = Character["Right Leg"]
165
LeftLeg = Character["Left Leg"]
166
RootJoint = RootPart["RootJoint"]
167
Neck = Torso["Neck"]
168
RightShoulder = Torso["Right Shoulder"]
169
LeftShoulder = Torso["Left Shoulder"]
170
RightHip = Torso["Right Hip"]
171
LeftHip = Torso["Left Hip"]
172
Character.Archivable = true
173
Player:ClearCharacterAppearance()
174
175
IT = Instance.new
176
CF = CFrame.new
177
VT = Vector3.new
178
RAD = math.rad
179
C3 = Color3.new
180
UD2 = UDim2.new
181
BRICKC = BrickColor.new
182
ANGLES = CFrame.Angles
183
EULER = CFrame.fromEulerAnglesXYZ
184
COS = math.cos
185
ACOS = math.acos
186
SIN = math.sin
187
ASIN = math.asin
188
ABS = math.abs
189
MRANDOM = math.random
190
FLOOR = math.floor
191
192
--//=================================\\
193
--|| 	      USEFUL VALUES
194
--\\=================================//
195
196
Animation_Speed = 3
197
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
198
local Speed = 25
199
local SIZE = 1.4
200
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
201
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
202
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
203
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
204
local DAMAGEMULTIPLIER = 1
205
local ANIM = "Idle"
206
local ATTACK = false
207
local EQUIPPED = false
208
local HOLD = false
209
local COMBO = 1
210
local Rooted = false
211
local SINE = 0
212
local KEYHOLD = false
213
local CHANGE = 2 / Animation_Speed
214
local WALKINGANIM = false
215
local VALUE1 = false
216
local VALUE2 = false
217
local ROBLOXIDLEANIMATION = IT("Animation")
218
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
219
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
220
local ATANIM = IT("Animation")
221
ATANIM.Name = "Attack Animation"
222
ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
223
--ROBLOXIDLEANIMATION.Parent = Humanoid
224
local WEAPONGUI = IT("ScreenGui", PlayerGui)
225
WEAPONGUI.Name = "Weapon GUI"
226
local Weapon = IT("Model")
227
Weapon.Name = "Adds"
228
local Effects = IT("Folder", Weapon)
229
Effects.Name = "Effects"
230
local ANIMATOR = Humanoid.Animator
231
local ANIMATE = Character.Animate
232
local UNANCHOR = true
233
local CLOCKLOOP = 0
234
local SONG = 1117396305
235
local CLOCKTARGET = nil
236
local CLOCKSPEED = 0
237
script.Parent = WEAPONGUI
238
local CLONE = Character:Clone()
239
CLONE.Parent = nil
240
Character.Archivable = false
241
local sick = Instance.new("Sound",Torso)
242
local TAUNT = false
243
Player_Size = 1.4
244
local PLAYSONG = true
245
local MODE = "Main"
246
247
--//=================================\\
248
--\\=================================//
249
250
251
--//=================================\\
252
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
253
--\\=================================//
254
255
ArtificialHB = Instance.new("BindableEvent", script)
256
ArtificialHB.Name = "ArtificialHB"
257
258
script:WaitForChild("ArtificialHB")
259
260
frame = Frame_Speed
261
tf = 0
262
allowframeloss = false
263
tossremainder = false
264
lastframe = tick()
265
script.ArtificialHB:Fire()
266
267
game:GetService("RunService").Heartbeat:connect(function(s, p)
268
	tf = tf + s
269
	if tf >= frame then
270
		if allowframeloss then
271
			script.ArtificialHB:Fire()
272
			lastframe = tick()
273
		else
274
			for i = 1, math.floor(tf / frame) do
275
				script.ArtificialHB:Fire()
276
			end
277
		lastframe = tick()
278
		end
279
		if tossremainder then
280
			tf = 0
281
		else
282
			tf = tf - frame * math.floor(tf / frame)
283
		end
284
	end
285
end)
286
287
--//=================================\\
288
--\\=================================//
289
290
--//=================================\\
291
--||          SOME TAG EDIT
292
--\\=================================//
293
294
m = game.Players.LocalPlayer
295
char = m.Character
296
local txt = Instance.new("BillboardGui", char)
297
txt.Adornee = char.Head
298
txt.Name = "_status"
299
txt.Size = UDim2.new(2, 0, 1.2, 0)
300
txt.StudsOffset = Vector3.new(-9, 8, 0)
301
local text = Instance.new("TextLabel", txt)
302
text.Size = UDim2.new(10, 0, 7, 0)
303
text.FontSize = "Size24"
304
text.TextScaled = true
305
text.TextTransparency = 0
306
text.BackgroundTransparency = 1
307
text.TextTransparency = 0
308
text.TextStrokeTransparency = 0
309
text.Font = "Bodoni"
310
text.TextStrokeColor3 = Color3.new(0, 0, 0)
311
v = Instance.new("Part")
312
v.Name = "ColorBrick"
313
v.Parent = m.Character
314
v.FormFactor = "Symmetric"
315
v.Anchored = true
316
v.CanCollide = false
317
v.BottomSurface = "Smooth"
318
v.TopSurface = "Smooth"
319
v.Size = Vector3.new(10, 5, 3)
320
v.Transparency = 1
321
v.CFrame = char.Torso.CFrame
322
v.BrickColor = BrickColor.new("Really black")
323
v.Transparency = 1
324
v.Shape = "Block"
325
spawn(function()
326
local TweenService = game:GetService("TweenService")
327
local Colours = {Color3.fromRGB(255,0,0),Color3.fromRGB(255,255,0),Color3.fromRGB(255,255,255),Color3.fromRGB(255,0,0),Color3.fromRGB(255,255,0),Color3.fromRGB(0,0,0),Color3.fromRGB(255,255,255),Color3.fromRGB(0,0,0)}
328
local Int = 0
329
while wait(0.5) do
330
    if Int == #Colours then Int = 0 end
331
    Int = Int+1
332
    TweenService:Create(text,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play()
333
end
334
end)
335
text.Text = "Edit by wanTH092"
336
wait(3)
337
text.Text = "Showcased by NameClan (Lol)"
338
wait(4)
339
text.Text = "The Switcher"
340
341
--//=================================\\
342
--\\=================================//
343
344
--//=================================\\
345
--|| 	      SOME FUNCTIONS
346
--\\=================================//
347
348
local EyeSizes={
349
	NumberSequenceKeypoint.new(0,2,0),
350
	NumberSequenceKeypoint.new(1,0,0)
351
}
352
local EyeTrans={
353
	NumberSequenceKeypoint.new(0,0.5,0),
354
	NumberSequenceKeypoint.new(1,1,0)
355
}
356
local PE=Instance.new("ParticleEmitter",nil)
357
PE.LightEmission=.8
358
PE.Color = ColorSequence.new(BRICKC("Crimson").Color,BRICKC("Really red").Color)
359
PE.Size=NumberSequence.new(EyeSizes)
360
PE.Transparency=NumberSequence.new(EyeTrans)
361
PE.Lifetime=NumberRange.new(0.35,1)
362
PE.Rotation=NumberRange.new(0,360)
363
PE.Rate=100
364
PE.VelocitySpread = 10000
365
PE.Acceleration = Vector3.new(0,85,0)
366
PE.Drag = 5
367
PE.Speed = NumberRange.new(0.1,5)
368
PE.Texture="http://www.roblox.com/asset/?id=1460745664"
369
PE.ZOffset = 0.5
370
PE.Name = "PE"
371
PE.Enabled = false
372
function Fire(art)
373
	local PARTICLES = PE:Clone()
374
	PARTICLES.Parent = art
375
	PARTICLES.Enabled = true
376
	return PARTICLES
377
end
378
379
function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
380
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
381
	local mesh
382
	if KIND == "Base" then
383
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
384
	elseif KIND == "Thin" then
385
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
386
	elseif KIND == "Round" then
387
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
388
	end
389
	wave.CFrame = CFRAME
390
	coroutine.resume(coroutine.create(function(PART)
391
		for i = 1, WAIT do
392
			Swait()
393
			mesh.Scale = mesh.Scale + GROW / 10
394
			wave.Transparency = wave.Transparency + 0.5 / WAIT
395
			if wave.Transparency > 0.99 then
396
				wave:remove()
397
			end
398
		end
399
	end))
400
end
401
402
function AddChildrenToTable(FROM, PARENT, DIST, TABLE)
403
	for _, c in pairs(PARENT:GetChildren()) do
404
		if c.ClassName == "Model" then
405
			if c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
406
				local HUMANOID = c:FindFirstChildOfClass("Humanoid")
407
				local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
408
				if DIST > (TORSO.Position - FROM).Magnitude then
409
					table.insert(TABLE, c)
410
				end
411
				AddChildrenToTable(FROM, c, DIST, TABLE)
412
			elseif c.ClassName == "Folder" then
413
				AddChildrenToTable(FROM, c, DIST, TABLE)
414
			end
415
		end
416
	end
417
end
418
419
function VanishPlayer()
420
	for _, c in pairs(Character:GetChildren()) do
421
		if c.ClassName == "Part" then
422
			c.Transparency = 1
423
			if c:FindFirstChildOfClass("Decal") then
424
				c:FindFirstChildOfClass("Decal").Transparency = 1
425
			end
426
			if c:FindFirstChildOfClass("ParticleEmitter") then
427
				c:FindFirstChildOfClass("ParticleEmitter").Enabled = false
428
			end
429
		elseif c.ClassName == "Accessory" then
430
			c.Handle.Transparency = 1
431
			if c.Handle:FindFirstChildOfClass("ParticleEmitter") then
432
				c.Handle:FindFirstChildOfClass("ParticleEmitter").Enabled = false
433
			end
434
		end
435
	end
436
end
437
438
function killnearest(position,range,maxstrength)
439
	for i,v in ipairs(workspace:GetChildren()) do
440
	local body = v:GetChildren()
441
		for part = 1, #body do
442
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
443
				if(body[part].Position - position).Magnitude < range then
444
					if v.ClassName == "Model" then
445
						v:BreakJoints()
446
					end
447
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
448
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
449
				end
450
			end
451
		end
452
		if v.ClassName == "Part" then
453
			if v.Anchored == false and (v.Position - position).Magnitude < range then
454
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
455
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
456
			end
457
		end
458
	end
459
end
460
461
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
462
	PLAYMAINANIM = false
463
	if WhichPose == "Cast1" then
464
		for i=0, Time, 0.1 / Animation_Speed do
465
			Swait()
466
			if Magic == true then
467
				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"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
468
			end
469
			if Gyro ~= nil and Gyro ~= false then
470
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
471
			end
472
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
473
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.35*SIZE + ((1*SIZE) - 1*SIZE)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
474
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.65*SIZE + 0.15*SIZE * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
475
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15*SIZE * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
476
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
477
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
478
		end
479
	elseif WhichPose == "Cast2" then
480
		for i=0, Time, 0.1 / Animation_Speed do
481
			Swait()
482
			if Magic == true then
483
				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"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
484
				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"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
485
			end
486
			if Gyro ~= nil and Gyro ~= false then
487
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
488
			end
489
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
490
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
491
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.65*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
492
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 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)
493
			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)
494
			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)
495
		end
496
	elseif WhichPose == "RightArmUp2" then
497
		for i=0, Time, 0.1 / Animation_Speed do
498
			Swait()
499
			if Magic == true then
500
				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})
501
			end
502
			if Gyro ~= nil and Gyro ~= false then
503
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
504
			end
505
			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)
506
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0) - 0)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
507
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 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)
508
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.45, 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)
509
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
510
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
511
		end
512
	elseif WhichPose == "Prepare key" then
513
		for i=0, Time, 0.1 / Animation_Speed do
514
			Swait()
515
			if Gyro ~= nil and Gyro ~= false then
516
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
517
			end
518
			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(65)), Speed / Animation_Speed)
519
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((1*SIZE) - 1*SIZE)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
520
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE + 0.15*SIZE * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
521
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15*SIZE * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
522
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
523
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
524
		end
525
	elseif WhichPose == "Turn key" then
526
		for i=0, Time, 0.1 / Animation_Speed do
527
			Swait()
528
			if Gyro ~= nil and Gyro ~= false then
529
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
530
			end
531
			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(75)), Speed / Animation_Speed)
532
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((1*SIZE) - 1*SIZE)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
533
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5*SIZE + 0.15*SIZE * 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)
534
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15*SIZE * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
535
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
536
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
537
		end
538
	end
539
	PLAYMAINANIM = true
540
end
541
542
543
local EyeSizes={
544
	NumberSequenceKeypoint.new(0,1,0),
545
	NumberSequenceKeypoint.new(1,0,0)
546
}
547
local EyeTrans={
548
	NumberSequenceKeypoint.new(0,0.8,0),
549
	NumberSequenceKeypoint.new(1,1,0)
550
}
551
local PE=Instance.new("ParticleEmitter",nil)
552
PE.LightEmission=.8
553
PE.Color = ColorSequence.new(BRICKC("Really red").Color)
554
PE.Size=NumberSequence.new(EyeSizes)
555
PE.Transparency=NumberSequence.new(EyeTrans)
556
PE.Lifetime=NumberRange.new(0.35,1.5)
557
PE.Rotation=NumberRange.new(0,360)
558
PE.Rate=999
559
PE.VelocitySpread = 10000
560
PE.Acceleration = Vector3.new(0,0,0)
561
PE.Drag = 5
562
PE.Speed = NumberRange.new(0,0,0)
563
PE.Texture="http://www.roblox.com/asset/?id=1351966707"
564
PE.ZOffset = -0
565
PE.Name = "PE"
566
PE.Enabled = false
567
568
function particles(art)
569
	local PARTICLES = PE:Clone()
570
	PARTICLES.Parent = art
571
end
572
573
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
574
	if FLOOR ~= nil then
575
		coroutine.resume(coroutine.create(function()
576
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
577
			PART.CFrame = CF(POSITION)
578
			for i = 1, 45 do
579
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
580
				RingPiece.Material = FLOOR.Material
581
				RingPiece.Color = FLOOR.Color
582
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
583
				Debris:AddItem(RingPiece,SWAIT)
584
			end
585
			PART:remove()
586
		end))
587
	end
588
end
589
590
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
591
	if FLOOR ~= nil then
592
		for i = 1, AMOUNT do
593
			local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
594
			DEBREE.Material = FLOOR.Material
595
			DEBREE.Color = FLOOR.Color
596
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
597
			DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
598
			coroutine.resume(coroutine.create(function()
599
				Swait(15)
600
				DEBREE.Parent = workspace
601
				DEBREE.CanCollide = true
602
				Debris:AddItem(DEBREE,SWAIT)
603
			end))
604
		end
605
	end
606
end
607
608
local DECAL = IT("Decal")
609
function MakeRing()
610
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Pearl"), "MagicRing", VT(0, 0, 0), true)
611
	local MSH = IT("BlockMesh", RING)
612
	local TOP = DECAL:Clone()
613
	local BOTTOM = DECAL:Clone()
614
	TOP.Parent = RING
615
	BOTTOM.Parent = RING
616
	TOP.Face = "Top"
617
	BOTTOM.Face = "Bottom"
618
	TOP.Texture = "http://www.roblox.com/asset/?id=273474310"
619
	BOTTOM.Texture = "http://www.roblox.com/asset/?id=273474310"
620
	local function REMOVE()
621
		coroutine.resume(coroutine.create(function()
622
			local SIZE = MSH.Scale.X
623
			for i = 1, 35 do
624
				Swait()
625
				MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
626
				TOP.Transparency = TOP.Transparency + 0.02857142857142857
627
				BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
628
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
629
			end
630
			RING:remove()
631
		end))
632
	end
633
	return RING, MSH, REMOVE
634
end
635
636
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
637
	local TORSO = Torso
638
	local HUM = Humanoid
639
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
640
		coroutine.wrap(function()
641
			VT = Vector3.new
642
			MRANDOM = math.random
643
			local A = TIME
644
			local B = INTENSITY
645
			local C = true
646
			local HUMANOID = Humanoid
647
			local TIMER = A or 35
648
			local SHAKE = B or 5
649
			local FADE = C or true
650
			if HUMANOID then
651
				local FADER = SHAKE / TIMER
652
				for i = 1, TIMER do
653
					wait()
654
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
655
				end
656
				HUMANOID.CameraOffset = VT(0, 0, 0)
657
			end
658
659
		end)()
660
	end
661
end
662
663
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
664
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
665
end
666
667
function PositiveAngle(NUMBER)
668
	if NUMBER >= 0 then
669
		NUMBER = 0
670
	end
671
	return NUMBER
672
end
673
674
function NegativeAngle(NUMBER)
675
	if NUMBER <= 0 then
676
		NUMBER = 0
677
	end
678
	return NUMBER
679
end
680
681
function Swait(NUMBER)
682
	if NUMBER == 0 or NUMBER == nil then
683
		ArtificialHB.Event:wait()
684
	else
685
		for i = 1, NUMBER do
686
			ArtificialHB.Event:wait()
687
		end
688
	end
689
end
690
691
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
692
	local NEWMESH = IT(MESH)
693
	if MESH == "SpecialMesh" then
694
		NEWMESH.MeshType = MESHTYPE
695
		if MESHID ~= "nil" and MESHID ~= "" then
696
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
697
		end
698
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
699
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
700
		end
701
	end
702
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
703
	NEWMESH.Scale = SCALE
704
	NEWMESH.Parent = PARENT
705
	return NEWMESH
706
end
707
708
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
709
	local NEWPART = IT("Part")
710
	NEWPART.formFactor = FORMFACTOR
711
	NEWPART.Reflectance = REFLECTANCE
712
	NEWPART.Transparency = TRANSPARENCY
713
	NEWPART.CanCollide = false
714
	NEWPART.Locked = true
715
	NEWPART.Anchored = true
716
	if ANCHOR == false then
717
		NEWPART.Anchored = false
718
	end
719
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
720
	NEWPART.Name = NAME
721
	NEWPART.Size = SIZE
722
	NEWPART.Position = Torso.Position
723
	NEWPART.Material = MATERIAL
724
	NEWPART:BreakJoints()
725
	NEWPART.Parent = PARENT
726
	return NEWPART
727
end
728
729
	local function weldBetween(a, b)
730
	    local weldd = Instance.new("ManualWeld")
731
	    weldd.Part0 = a
732
	    weldd.Part1 = b
733
	    weldd.C0 = CFrame.new()
734
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
735
	    weldd.Parent = a
736
	    return weldd
737
	end
738
739
740
function QuaternionFromCFrame(cf)
741
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
742
	local trace = m00 + m11 + m22
743
	if trace > 0 then 
744
		local s = math.sqrt(1 + trace)
745
		local recip = 0.5 / s
746
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
747
	else
748
		local i = 0
749
		if m11 > m00 then
750
			i = 1
751
		end
752
		if m22 > (i == 0 and m00 or m11) then
753
			i = 2
754
		end
755
		if i == 0 then
756
			local s = math.sqrt(m00 - m11 - m22 + 1)
757
			local recip = 0.5 / s
758
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
759
		elseif i == 1 then
760
			local s = math.sqrt(m11 - m22 - m00 + 1)
761
			local recip = 0.5 / s
762
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
763
		elseif i == 2 then
764
			local s = math.sqrt(m22 - m00 - m11 + 1)
765
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
766
		end
767
	end
768
end
769
 
770
function QuaternionToCFrame(px, py, pz, x, y, z, w)
771
	local xs, ys, zs = x + x, y + y, z + z
772
	local wx, wy, wz = w * xs, w * ys, w * zs
773
	local xx = x * xs
774
	local xy = x * ys
775
	local xz = x * zs
776
	local yy = y * ys
777
	local yz = y * zs
778
	local zz = z * zs
779
	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))
780
end
781
 
782
function QuaternionSlerp(a, b, t)
783
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
784
	local startInterp, finishInterp;
785
	if cosTheta >= 0.0001 then
786
		if (1 - cosTheta) > 0.0001 then
787
			local theta = ACOS(cosTheta)
788
			local invSinTheta = 1 / SIN(theta)
789
			startInterp = SIN((1 - t) * theta) * invSinTheta
790
			finishInterp = SIN(t * theta) * invSinTheta
791
		else
792
			startInterp = 1 - t
793
			finishInterp = t
794
		end
795
	else
796
		if (1 + cosTheta) > 0.0001 then
797
			local theta = ACOS(-cosTheta)
798
			local invSinTheta = 1 / SIN(theta)
799
			startInterp = SIN((t - 1) * theta) * invSinTheta
800
			finishInterp = SIN(t * theta) * invSinTheta
801
		else
802
			startInterp = t - 1
803
			finishInterp = t
804
		end
805
	end
806
	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
807
end
808
809
function Clerp(a, b, t)
810
	local qa = {QuaternionFromCFrame(a)}
811
	local qb = {QuaternionFromCFrame(b)}
812
	local ax, ay, az = a.x, a.y, a.z
813
	local bx, by, bz = b.x, b.y, b.z
814
	local _t = 1 - t
815
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
816
end
817
818
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
819
	local frame = IT("Frame")
820
	frame.BackgroundTransparency = TRANSPARENCY
821
	frame.BorderSizePixel = BORDERSIZEPIXEL
822
	frame.Position = POSITION
823
	frame.Size = SIZE
824
	frame.BackgroundColor3 = COLOR
825
	frame.BorderColor3 = BORDERCOLOR
826
	frame.Name = NAME
827
	frame.Parent = PARENT
828
	return frame
829
end
830
831
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
832
	local label = IT("TextLabel")
833
	label.BackgroundTransparency = 1
834
	label.Size = UD2(1, 0, 1, 0)
835
	label.Position = UD2(0, 0, 0, 0)
836
	label.TextColor3 = TEXTCOLOR
837
	label.TextStrokeTransparency = STROKETRANSPARENCY
838
	label.TextTransparency = TRANSPARENCY
839
	label.FontSize = TEXTFONTSIZE
840
	label.Font = TEXTFONT
841
	label.BorderSizePixel = BORDERSIZEPIXEL
842
	label.TextStrokeColor3 = C3(1,1,1)
843
	label.TextScaled = false
844
	label.Text = TEXT
845
	label.Name = NAME
846
	label.Parent = PARENT
847
	return label
848
end
849
850
function NoOutlines(PART)
851
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
852
end
853
854
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
855
	local NEWWELD = IT(TYPE)
856
	NEWWELD.Part0 = PART0
857
	NEWWELD.Part1 = PART1
858
	NEWWELD.C0 = C0
859
	NEWWELD.C1 = C1
860
	NEWWELD.Parent = PARENT
861
	return NEWWELD
862
end
863
864
local S = IT("Sound")
865
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
866
	local NEWSOUND = nil
867
	coroutine.resume(coroutine.create(function()
868
		NEWSOUND = S:Clone()
869
		NEWSOUND.Parent = PARENT
870
		NEWSOUND.Volume = VOLUME
871
		NEWSOUND.Pitch = PITCH
872
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
873
		NEWSOUND:play()
874
		if DOESLOOP == true then
875
			NEWSOUND.Looped = true
876
		else
877
			repeat wait(1) until NEWSOUND.Playing == false
878
			NEWSOUND:remove()
879
		end
880
	end))
881
	return NEWSOUND
882
end
883
884
function CFrameFromTopBack(at, top, back)
885
	local right = top:Cross(back)
886
	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)
887
end
888
889
--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})
890
function WACKYEFFECT(Table)
891
	local TYPE = (Table.EffectType or "Sphere")
892
	local SIZE = (Table.Size or VT(1,1,1))
893
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
894
	local TRANSPARENCY = (Table.Transparency or 0)
895
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
896
	local CFRAME = (Table.CFrame or Torso.CFrame)
897
	local MOVEDIRECTION = (Table.MoveToPos or nil)
898
	local ROTATION1 = (Table.RotationX or 0)
899
	local ROTATION2 = (Table.RotationY or 0)
900
	local ROTATION3 = (Table.RotationZ or 0)
901
	local MATERIAL = (Table.Material or "Neon")
902
	local COLOR = (Table.Color or C3(1,1,1))
903
	local TIME = (Table.Time or 45)
904
	local SOUNDID = (Table.SoundID or nil)
905
	local SOUNDPITCH = (Table.SoundPitch or nil)
906
	local SOUNDVOLUME = (Table.SoundVolume or nil)
907
	coroutine.resume(coroutine.create(function()
908
		local PLAYSSOUND = false
909
		local SOUND = nil
910
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
911
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
912
			PLAYSSOUND = true
913
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
914
		end
915
		EFFECT.Color = COLOR
916
		local MSH = nil
917
		if TYPE == "Sphere" then
918
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
919
		elseif TYPE == "Block" then
920
			MSH = IT("BlockMesh",EFFECT)
921
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
922
		elseif TYPE == "Wave" then
923
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
924
		elseif TYPE == "Ring" then
925
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
926
		elseif TYPE == "Slash" then
927
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
928
		elseif TYPE == "Round Slash" then
929
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
930
		elseif TYPE == "Swirl" then
931
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
932
		elseif TYPE == "Skull" then
933
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
934
		elseif TYPE == "Crystal" then
935
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
936
		end
937
		if MSH ~= nil then
938
			local MOVESPEED = nil
939
			if MOVEDIRECTION ~= nil then
940
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
941
			end
942
			local GROWTH = SIZE - ENDSIZE
943
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
944
			if TYPE == "Block" then
945
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
946
			else
947
				EFFECT.CFrame = CFRAME
948
			end
949
			for LOOP = 1, TIME+1 do
950
				Swait()
951
				MSH.Scale = MSH.Scale - GROWTH/TIME
952
				if TYPE == "Wave" then
953
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
954
				end
955
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
956
				if TYPE == "Block" then
957
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
958
				else
959
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
960
				end
961
				if MOVEDIRECTION ~= nil then
962
					local ORI = EFFECT.Orientation
963
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
964
					EFFECT.Orientation = ORI
965
				end
966
			end
967
			if PLAYSSOUND == false then
968
				EFFECT:remove()
969
			else
970
				repeat Swait() until SOUND.Playing == false
971
				EFFECT:remove()
972
			end
973
		else
974
			if PLAYSSOUND == false then
975
				EFFECT:remove()
976
			else
977
				repeat Swait() until SOUND.Playing == false
978
				EFFECT:remove()
979
			end
980
		end
981
	end))
982
end
983
984
function MakeForm(PART,TYPE)
985
	if TYPE == "Cyl" then
986
		local MSH = IT("CylinderMesh",PART)
987
	elseif TYPE == "Ball" then
988
		local MSH = IT("SpecialMesh",PART)
989
		MSH.MeshType = "Sphere"
990
	elseif TYPE == "Wedge" then
991
		local MSH = IT("SpecialMesh",PART)
992
		MSH.MeshType = "Wedge"
993
	end
994
end
995
996
Debris = game:GetService("Debris")
997
998
function CastProperRay(StartPos, EndPos, Distance, Ignore)
999
	local DIRECTION = CF(StartPos,EndPos).lookVector
1000
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
1001
end
1002
1003
function turnto(position)
1004
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1005
end
1006
1007
--//=================================\\
1008
--||	     RAGDOLL STUFF
1009
--\\=================================//
1010
1011
function recurse(root,callback,i)
1012
	i= i or 0
1013
	for _,v in pairs(root:GetChildren()) do
1014
		i = i + 1
1015
		callback(i,v)
1016
		
1017
		if #v:GetChildren() > 0 then
1018
			i = recurse(v,callback,i)
1019
		end
1020
	end
1021
	
1022
	return i
1023
end
1024
1025
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
1026
	attachmentName = attachmentName.."RigAttachment"
1027
	local constraint = Instance.new(className.."Constraint")
1028
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
1029
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
1030
	constraint.Name = "RagdollConstraint"..part1.Name
1031
	
1032
	for _,propertyData in next,properties or {} do
1033
		constraint[propertyData[1]] = propertyData[2]
1034
	end
1035
	
1036
	constraint.Parent = character
1037
end
1038
1039
function getAttachment0(character, attachmentName)
1040
	for _,child in next,character:GetChildren() do
1041
		local attachment = child:FindFirstChild(attachmentName)
1042
		if attachment then
1043
			return attachment
1044
		end
1045
	end
1046
end
1047
1048
function ArtificialHitbox(Part)
1049
	local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
1050
	HITBOX.CanCollide = true
1051
	HITBOX.CFrame = Part.CFrame
1052
	weldBetween(Part,HITBOX)
1053
end
1054
1055
function R15Ragdoll(character,KeepArms)
1056
	character:BreakJoints()
1057
	coroutine.resume(coroutine.create(function()
1058
		recurse(character, function(_,v)
1059
			if v:IsA("Attachment") then
1060
				v.Axis = Vector3.new(0, 1, 0)
1061
				v.SecondaryAxis = Vector3.new(0, 0, 1)
1062
				v.Rotation = Vector3.new(0, 0, 0)
1063
			end
1064
		end)
1065
		for _,child in next,character:GetChildren() do
1066
			if child:IsA("Accoutrement") then
1067
				for _,part in next,child:GetChildren() do
1068
					if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
1069
						local attachment1 = part:FindFirstChildOfClass("Attachment")
1070
						local attachment0 = getAttachment0(character,attachment1.Name)
1071
						if attachment0 and attachment1 then
1072
							local constraint = Instance.new("HingeConstraint")
1073
							constraint.Attachment0 = attachment0
1074
							constraint.Attachment1 = attachment1
1075
							constraint.LimitsEnabled = true
1076
							constraint.UpperAngle = 0
1077
							constraint.LowerAngle = 0
1078
							constraint.Parent = character
1079
						end
1080
						ArtificialHitbox(part)
1081
					elseif part.Name == "HumanoidRootPart" then
1082
						part:remove()
1083
					end
1084
				end
1085
			end
1086
		end
1087
		
1088
		ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
1089
			{"LimitsEnabled",true};
1090
			{"UpperAngle",5};
1091
		})
1092
		if character:FindFirstChild("Head") then
1093
			ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
1094
				{"LimitsEnabled",true};
1095
				{"UpperAngle",15};
1096
			})
1097
		end
1098
		
1099
		local handProperties = {
1100
			{"LimitsEnabled", true};
1101
			{"UpperAngle",0};
1102
			{"LowerAngle",0};
1103
		}
1104
		ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
1105
		ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
1106
		
1107
		local shinProperties = {
1108
			{"LimitsEnabled", true};
1109
			{"UpperAngle", 0};
1110
			{"LowerAngle", -75};
1111
		}
1112
		ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
1113
		ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
1114
		
1115
		local footProperties = {
1116
			{"LimitsEnabled", true};
1117
			{"UpperAngle", 15};
1118
			{"LowerAngle", -45};
1119
		}
1120
		ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
1121
		ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
1122
		if KeepArms == true then
1123
			ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
1124
			ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
1125
			ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
1126
			ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
1127
		end
1128
		ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
1129
		ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
1130
		Debris:AddItem(character,5)
1131
	end))
1132
end
1133
1134
function Ragdoll(Character2,CharTorso,KeepArms)
1135
	coroutine.resume(coroutine.create(function()
1136
		Character2:BreakJoints()
1137
		local hum = Character2:findFirstChild("Humanoid")
1138
		hum:remove()
1139
		local function Scan(ch)
1140
			local e
1141
			for e = 1,#ch do
1142
				Scan(ch[e]:GetChildren())
1143
				if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
1144
					ch[e]:remove()
1145
				end
1146
			end
1147
		end
1148
		local NEWHUM = IT("Humanoid")
1149
		NEWHUM.Name = "Corpse"
1150
		NEWHUM.Health = 0
1151
		NEWHUM.MaxHealth = 0
1152
		NEWHUM.PlatformStand = true
1153
		NEWHUM.Parent = Character2
1154
		NEWHUM.DisplayDistanceType = "None"
1155
	
1156
		local ch = Character2:GetChildren()
1157
		local i
1158
		for i = 1,#ch do
1159
			if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
1160
				ch[i]:remove()
1161
			end
1162
		end
1163
	
1164
		local Torso2 = Character2.Torso
1165
		local movevector = Vector3.new()
1166
	
1167
		if Torso2 then
1168
			movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
1169
			local Head = Character2:FindFirstChild("Head")
1170
			if Head then
1171
				local Neck = Instance.new("Weld")
1172
				Neck.Name = "Neck"
1173
				Neck.Part0 = Torso2
1174
				Neck.Part1 = Head
1175
				Neck.C0 = CFrame.new(0, 1.5, 0)
1176
				Neck.C1 = CFrame.new()
1177
				Neck.Parent = Torso2
1178
	
1179
			end
1180
			local Limb = Character2:FindFirstChild("Right Arm")
1181
			if Limb and KeepArms == true then
1182
	
1183
				Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
1184
				local Joint = Instance.new("Glue")
1185
				Joint.Name = "RightShoulder"
1186
				Joint.Part0 = Torso2
1187
				Joint.Part1 = Limb
1188
				Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1189
				Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1190
				Joint.Parent = Torso2
1191
	
1192
				local B = Instance.new("Part")
1193
				B.TopSurface = 0
1194
				B.BottomSurface = 0
1195
				B.formFactor = "Symmetric"
1196
				B.Size = Vector3.new(1, 1, 1)
1197
				B.Transparency = 1
1198
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1199
				B.Parent = Character2
1200
				local W = Instance.new("Weld")
1201
				W.Part0 = Limb
1202
				W.Part1 = B
1203
				W.C0 = CFrame.new(0, -0.5, 0)
1204
				W.Parent = Limb
1205
	
1206
			end
1207
			local Limb = Character2:FindFirstChild("Left Arm")
1208
			if Limb and KeepArms == true then
1209
	
1210
				Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
1211
				local Joint = Instance.new("Glue")
1212
				Joint.Name = "LeftShoulder"
1213
				Joint.Part0 = Torso2
1214
				Joint.Part1 = Limb
1215
				Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1216
				Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1217
				Joint.Parent = Torso2
1218
	
1219
				local B = Instance.new("Part")
1220
				B.TopSurface = 0
1221
				B.BottomSurface = 0
1222
				B.formFactor = "Symmetric"
1223
				B.Size = Vector3.new(1, 1, 1)
1224
				B.Transparency = 1
1225
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1226
				B.Parent = Character2
1227
				local W = Instance.new("Weld")
1228
				W.Part0 = Limb
1229
				W.Part1 = B
1230
				W.C0 = CFrame.new(0, -0.5, 0)
1231
				W.Parent = Limb
1232
	
1233
			end
1234
			local Limb = Character2:FindFirstChild("Right Leg")
1235
			if Limb then
1236
	
1237
				Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
1238
				local Joint = Instance.new("Glue")
1239
				Joint.Name = "RightHip"
1240
				Joint.Part0 = Torso2
1241
				Joint.Part1 = Limb
1242
				Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1243
				Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1244
				Joint.Parent = Torso2
1245
	
1246
				local B = Instance.new("Part")
1247
				B.TopSurface = 0
1248
				B.BottomSurface = 0
1249
				B.formFactor = "Symmetric"
1250
				B.Size = Vector3.new(1, 1, 1)
1251
				B.Transparency = 1
1252
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1253
				B.Parent = Character2
1254
				local W = Instance.new("Weld")
1255
				W.Part0 = Limb
1256
				W.Part1 = B
1257
				W.C0 = CFrame.new(0, -0.5, 0)
1258
				W.Parent = Limb
1259
	
1260
			end
1261
			local Limb = Character2:FindFirstChild("Left Leg")
1262
			if Limb then
1263
	
1264
				Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
1265
				local Joint = Instance.new("Glue")
1266
				Joint.Name = "LeftHip"
1267
				Joint.Part0 = Torso2
1268
				Joint.Part1 = Limb
1269
				Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1270
				Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1271
				Joint.Parent = Torso2
1272
	
1273
				local B = Instance.new("Part")
1274
				B.TopSurface = 0
1275
				B.BottomSurface = 0
1276
				B.formFactor = "Symmetric"
1277
				B.Size = Vector3.new(1, 1, 1)
1278
				B.Transparency = 1
1279
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1280
				B.Parent = Character2
1281
				local W = Instance.new("Weld")
1282
				W.Part0 = Limb
1283
				W.Part1 = B
1284
				W.C0 = CFrame.new(0, -0.5, 0)
1285
				W.Parent = Limb
1286
	
1287
			end
1288
			--[
1289
			local Bar = Instance.new("Part")
1290
			Bar.TopSurface = 0
1291
			Bar.BottomSurface = 0
1292
			Bar.formFactor = "Symmetric"
1293
			Bar.Size = Vector3.new(1, 1, 1)
1294
			Bar.Transparency = 1
1295
			Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
1296
			Bar.Parent = Character2
1297
			local Weld = Instance.new("Weld")
1298
			Weld.Part0 = Torso2
1299
			Weld.Part1 = Bar
1300
			Weld.C0 = CFrame.new(0, 0.5, 0)
1301
			Weld.Parent = Torso2
1302
			--]]
1303
		end
1304
		Character2.Parent = workspace
1305
		Debris:AddItem(Character2,5)
1306
	
1307
		return Character2,Torso2
1308
	end))
1309
end
1310
1311
--//=================================\\
1312
--||	     WEAPON CREATION
1313
--\\=================================//
1314
1315
local BODY = {}
1316
for _, c in pairs(Character:GetDescendants()) do
1317
	if c:IsA("BasePart") and c.Name ~= "Handle" then
1318
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1319
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1320
		end
1321
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
1322
	elseif c:IsA("JointInstance") then
1323
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
1324
	end
1325
end
1326
for e = 1, #BODY do
1327
	if BODY[e] ~= nil then
1328
		local STUFF = BODY[e]
1329
		local PART = STUFF[1]
1330
		local PARENT = STUFF[2]
1331
		local MATERIAL = STUFF[3]
1332
		local COLOR = STUFF[4]
1333
		local TRANSPARENCY = STUFF[5]
1334
		if PART.ClassName == "Part" and PART ~= RootPart then
1335
			PART.Material = MATERIAL
1336
			PART.Color = COLOR
1337
			PART.Transparency = TRANSPARENCY
1338
		end
1339
		PART.AncestryChanged:Connect(function()
1340
			PART.Parent = PARENT
1341
		end)
1342
	end
1343
end
1344
1345
function refit()
1346
	Character.Parent = workspace
1347
	for e = 1, #BODY do
1348
		if BODY[e] ~= nil then
1349
			local STUFF = BODY[e]
1350
			local PART = STUFF[1]
1351
			local PARENT = STUFF[2]
1352
			local MATERIAL = STUFF[3]
1353
			local COLOR = STUFF[4]
1354
			local TRANSPARENCY = STUFF[5]
1355
			if PART.ClassName == "Part" and PART ~= RootPart then
1356
				PART.Material = MATERIAL
1357
				PART.Color = COLOR
1358
				PART.Transparency = TRANSPARENCY
1359
			end
1360
			if PART.Parent ~= PARENT then
1361
				Humanoid:remove()
1362
				PART.Parent = PARENT
1363
				Humanoid = IT("Humanoid",Character)
1364
			end
1365
		end
1366
	end
1367
end
1368
1369
function chatfunc(text)
1370
	local chat = coroutine.wrap(function()
1371
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
1372
		Character:FindFirstChild("TalkingBillBoard"):destroy()
1373
	end
1374
	local Bill = Instance.new("BillboardGui",Character)
1375
	Bill.Size = UDim2.new(0,100,0,40)
1376
	Bill.StudsOffset = Vector3.new(0,3,0)
1377
	Bill.Adornee = Character.Head
1378
	Bill.Name = "TalkingBillBoard"
1379
	local Hehe = Instance.new("TextLabel",Bill)
1380
	Hehe.BackgroundTransparency = 1
1381
	Hehe.BorderSizePixel = 0
1382
	Hehe.Text = ""
1383
	Hehe.Font = "Fantasy"
1384
	Hehe.TextSize = 40
1385
	Hehe.TextStrokeTransparency = 0
1386
	Hehe.Size = UDim2.new(1,0,0.5,0)
1387
	coroutine.resume(coroutine.create(function()
1388
		while Hehe ~= nil do
1389
			wait()	
1390
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
1391
			Hehe.Rotation = math.random(-5,5)
1392
			Hehe.TextColor3 = Color3.new(3,9,2)
1393
			Hehe.TextStrokeColor3 = Color3.new(255,255,0)
1394
		end
1395
	end))
1396
	for i = 1,string.len(text),1 do
1397
		wait()
1398
		Hehe.Text = string.sub(text,1,i)
1399
	end
1400
	wait(3)--Re[math.random(1, 93)]
1401
	for i = 0, 1, .025 do
1402
		wait()
1403
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
1404
		Hehe.TextStrokeTransparency = i
1405
		Hehe.TextTransparency = i
1406
	end
1407
	Bill:Destroy()
1408
	end)
1409
chat()
1410
end
1411
1412
function onChatted(msg)
1413
	chatfunc(msg)
1414
end
1415
1416
Player.Chatted:connect(onChatted)
1417
1418
1419
Humanoid.Parent = nil
1420
RootPart.Size = RootPart.Size*SIZE
1421
Torso.Size = Torso.Size*SIZE
1422
RightArm.Size = RightArm.Size*SIZE
1423
RightLeg.Size = RightLeg.Size*SIZE
1424
LeftArm.Size = LeftArm.Size*SIZE
1425
LeftLeg.Size = LeftLeg.Size*SIZE
1426
RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
1427
RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
1428
Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
1429
Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
1430
RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
1431
LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
1432
RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1433
LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1434
RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1435
LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1436
Head.Size = Head.Size*SIZE
1437
RootJoint.Parent = RootPart
1438
Neck.Parent = Torso
1439
RightShoulder.Parent = Torso
1440
LeftShoulder.Parent = Torso
1441
RightHip.Parent = Torso
1442
LeftHip.Parent = Torso
1443
1444
Humanoid.DisplayDistanceType = "None"
1445
local top = Instance.new("Shirt")
1446
top.ShirtTemplate = "rbxassetid://45695443"
1447
top.Parent = Character
1448
top.Name = "Cloth"
1449
local bottom = Instance.new("Pants")
1450
bottom.PantsTemplate = "rbxassetid://45696190"
1451
bottom.Parent = Character
1452
bottom.Name = "Cloth"
1453
1454
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Lavender", "Handle", VT(1.05*Player_Size,2.05*Player_Size,1.05*Player_Size))
1455
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1456
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(1.07*Player_Size,1.07*Player_Size,1.07*Player_Size))
1457
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1458
local part = CreatePart(3, Weapon, "Glass", 0, 0, "Institutional white", "Handle", VT(1.07*Player_Size,0.5*Player_Size,1.07*Player_Size))
1459
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, 0.85 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1460
local part = CreatePart(3, Weapon, "Glass", 0, 0, "Institutional white", "Handle", VT(0.5*Player_Size,0.5*Player_Size,1.07*Player_Size))
1461
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0.4 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1462
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.7*Player_Size,0.5*Player_Size,1.07*Player_Size))
1463
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(-0.2 * Player_Size, 0.25 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1464
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.5*Player_Size,1.5*Player_Size, 0.5*Player_Size))
1465
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0.35 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1466
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.5*Player_Size,1.5*Player_Size, 0.5*Player_Size))
1467
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(-0.35 * Player_Size, 0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1468
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Institutional white", "Handle", VT(0.5*Player_Size,0.5*Player_Size, 1.2*Player_Size))
1469
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(-0.2 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1470
1471
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.2*Player_Size,0.2*Player_Size, 0.2*Player_Size))
1472
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0.4 * Player_Size, 0.12 * Player_Size, -0.75 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)), CF(0, 0, 0))
1473
local mesh = IT("SpecialMesh",part)
1474
mesh.MeshType = "FileMesh"
1475
mesh.MeshId = "http://www.roblox.com/asset/?id=55821108"
1476
1477
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.2*Player_Size,0.2*Player_Size, 0.2*Player_Size))
1478
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0.4 * Player_Size, 0.12 * Player_Size, 0.75 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(0)), CF(0, 0, 0))
1479
local mesh = IT("SpecialMesh",part)
1480
mesh.MeshType = "FileMesh"
1481
mesh.MeshId = "http://www.roblox.com/asset/?id=55820516"
1482
1483
local part = CreatePart(3, Weapon, "Glass", 0, 0, "Lavender", "Handle", VT(0.35*Player_Size,0.35*Player_Size, 1.25*Player_Size))
1484
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(-0.2 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1485
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Institutional white", "Handle", VT(0.5*Player_Size,0.5*Player_Size, 1.2*Player_Size))
1486
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(-0.2 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1487
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Institutional white", "Handle", VT(1.1*Player_Size,0.2*Player_Size, 1.1*Player_Size))
1488
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1489
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Lavender", "Handle", VT(1.15*Player_Size,0.05*Player_Size, 1.15*Player_Size))
1490
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1491
local part = CreatePart(3, Weapon, "Glass", 0, 0, "Institutional white", "Handle", VT(1*Player_Size,0.1*Player_Size,1*Player_Size))
1492
local weld = CreateWeldOrSnapOrMotor("Weld", part, LeftArm, part, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1493
local mesh = IT("CylinderMesh",part)
1494
1495
local beampart = CreatePart(3, Weapon, "Neon", 0, 0, "Lavender", "Handle", VT(0.6*Player_Size,0.1*Player_Size,0.6*Player_Size))
1496
local weld = CreateWeldOrSnapOrMotor("Weld", beampart, LeftArm, beampart, CF(0 * Player_Size, -1.02 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1497
local mesh = IT("CylinderMesh",beampart)
1498
1499
local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Really black", "Hat", VT(1,1,1),false)
1500
PRT.Color = C3(0,0,0)
1501
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
1502
CreateMesh("SpecialMesh", PRT, "FileMesh", "26768040", "", VT(1,1,1)*SIZE, VT(0,0,0))
1503
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Detail", VT(1,1,1),false)
1504
PRT.Color = C3(0,0,0)
1505
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
1506
CreateMesh("SpecialMesh", PRT, "FileMesh", "13520257", "", VT(1,1,1)*SIZE, VT(0,0,0))
1507
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(1,1.2,0.2),false)
1508
PRT.Color = C3(255/255, 255/255, 0/255)
1509
MakeForm(PRT,"Ball")
1510
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
1511
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.4,0.5),false)
1512
PRT.Color = C3(255/255, 0/255, 0/255)
1513
MakeForm(PRT,"Ball")
1514
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
1515
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
1516
PRT.Color = C3(255/255, 255/255, 0/255)
1517
MakeForm(PRT,"Ball")
1518
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
1519
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
1520
PRT.Color = C3(255/255, 255/255, 0/255)
1521
MakeForm(PRT,"Ball")
1522
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
1523
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
1524
PRT.Color = C3(255/255, 0/255, 0/255)
1525
MakeForm(PRT,"Ball")
1526
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(15), RAD(0)), CF(0, 0, 0))
1527
local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
1528
PRT.Color = C3(255/255, 0/255, 0/255)
1529
MakeForm(PRT,"Ball")
1530
CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(-15), RAD(0)), CF(0, 0, 0))
1531
1532
local LASTPART = Head
1533
for i = 1, 24 do
1534
	local MATH = (1-(i/30))
1535
	if LASTPART == Head then
1536
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1537
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(220), RAD(90)), CF(0, 0, 0))
1538
		LASTPART = Horn
1539
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1540
	else
1541
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1542
		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))
1543
		LASTPART = Horn
1544
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1545
	end
1546
end
1547
local LASTPART = Head
1548
for i = 1, 24 do
1549
	local MATH = (1-(i/30))
1550
	if LASTPART == Head then
1551
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1552
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(-220), RAD(-90)), CF(0, 0, 0))
1553
		LASTPART = Horn
1554
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1555
	else
1556
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1557
		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))
1558
		LASTPART = Horn
1559
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1560
	end
1561
end
1562
local LASTPART = Head
1563
for i = 1, 8 do
1564
	local MATH = (1-(i/14))
1565
	if LASTPART == Head then
1566
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1567
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(250), RAD(90)), CF(0, 0, 0))
1568
		LASTPART = Horn
1569
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1570
	else
1571
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1572
		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))
1573
		LASTPART = Horn
1574
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1575
	end
1576
end
1577
local LASTPART = Head
1578
for i = 1, 8 do
1579
	local MATH = (1-(i/14))
1580
	if LASTPART == Head then
1581
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1582
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(-250), RAD(-90)), CF(0, 0, 0))
1583
		LASTPART = Horn
1584
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1585
	else
1586
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
1587
		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))
1588
		LASTPART = Horn
1589
		Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
1590
	end
1591
end
1592
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
1593
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1594
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
1595
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
1596
MakeForm(PRT,"Cyl")
1597
local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Mid gray", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
1598
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
1599
MakeForm(PRT,"Cyl")
1600
PRT.Color = C3(255/255, 0/255, 0/255)
1601
local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
1602
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
1603
MakeForm(RING,"Cyl")
1604
RING.Color = C3(0,0,0)
1605
for i = 1, 12 do
1606
	local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really red", "Watch", VT(0,0.15,0)*SIZE,false)
1607
	PRT.Color = C3(0,0,0)
1608
	local MSH = IT("BlockMesh",PRT)
1609
	MSH.Scale = VT(0.6,1,1)
1610
	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))
1611
end
1612
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really red", "Watch", VT(0,0.15,0.15)*SIZE,false)
1613
PRT.Color = C3(0,0,0)
1614
local MSH = IT("BlockMesh",PRT)
1615
MSH.Scale = VT(0.4,1,1)
1616
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))
1617
local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Really red", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
1618
PRT.Color = C3(0,0,0)
1619
local MSH = IT("BlockMesh",PRT)
1620
MSH.Scale = VT(0.4,1,1)
1621
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))
1622
coroutine.resume(coroutine.create(function()
1623
	while true do
1624
		Swait()
1625
		CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
1626
		WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
1627
		WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
1628
		if CLOCKLOOP <= -150 then
1629
			if VALUE1 == false then
1630
				CLOCKLOOP = 0
1631
				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(255/255, 0/255, 0/255), SoundID = 743521450, SoundPitch = 1.2, SoundVolume = 1})
1632
				local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
1633
				ApplyAoE(HITPOS,10,15,45,75,false)
1634
				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(255/255, 255/255, 255/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 1})
1635
				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(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 1})
1636
				if CLOCKTARGET ~= nil then
1637
					CLOCKTARGET.Health = CLOCKTARGET.Health - 20
1638
					if CLOCKTARGET.Torso ~= nil then
1639
						CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
1640
					end
1641
					if CLOCKTARGET.Health == 0 then
1642
						CLOCKTARGET = nil
1643
					end
1644
				end
1645
			end
1646
		end
1647
	end
1648
end))
1649
1650
for _, c in pairs(Weapon:GetChildren()) do
1651
	if c.ClassName == "Part" then
1652
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1653
	end
1654
end
1655
1656
Neck.Name = "Weld"
1657
RootJoint.Name = "Weld"
1658
RightShoulder.Name = "Weld"
1659
LeftShoulder.Name = "Weld"
1660
RightHip.Name = "Weld"
1661
LeftHip.Name = "Weld"
1662
1663
local SKILLTEXTCOLOR = C3(255/255, 255/255, 0/255)
1664
local SKILLFONT = "Fantasy"
1665
local SKILLTEXTSIZE = 7
1666
1667
Weapon.Parent = Character
1668
Humanoid.Parent = Character
1669
1670
Humanoid.Died:connect(function()
1671
	ATTACK = true
1672
end)
1673
1674
--//=================================\\
1675
--||			DAMAGING
1676
--\\=================================//
1677
1678
function CheckTableForString(Table, String)
1679
	for i, v in pairs(Table) do
1680
		if string.find(string.lower(String), string.lower(v)) then
1681
			return true
1682
		end
1683
	end
1684
	return false
1685
end
1686
1687
function CheckIntangible(Hit)
1688
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
1689
	if Hit and Hit.Parent then
1690
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
1691
			return true
1692
		end
1693
	end
1694
	return false
1695
end
1696
1697
function ApplyDamage(Humanoid,Damage,TorsoPart)
1698
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1699
	defence.Name = ("HitBy"..Player.Name)
1700
	game:GetService("Debris"):AddItem(defence, 0.001)
1701
	Damage = Damage * DAMAGEMULTIPLIER
1702
	if Humanoid.Health ~= 0 then
1703
		local CritChance = MRANDOM(1,100)
1704
		if Damage > Humanoid.Health then
1705
			Damage = math.ceil(Humanoid.Health)
1706
			if Damage == 0 then
1707
				Damage = 0.1
1708
			end
1709
		end
1710
		Humanoid.Health = Humanoid.Health - Damage
1711
	end
1712
end
1713
1714
function MagicSphere2(size,waitt,cframe,color)
1715
	local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(1,1,1))
1716
	local mesh = IT("SpecialMesh",wave)
1717
	mesh.MeshType = "Sphere"
1718
	mesh.Scale = VT(size,size,size)
1719
	mesh.Offset = VT(0,0,0)
1720
	wave.CFrame = cframe
1721
	coroutine.resume(coroutine.create(function(PART)
1722
		for i = 1, waitt do
1723
			Swait()
1724
			mesh.Scale = mesh.Scale - VT(size/waitt,size/waitt,size/waitt)
1725
			wave.Transparency = wave.Transparency - (1/waitt)
1726
		end
1727
		wave:remove()
1728
	end))
1729
end
1730
1731
function MagicSphere(size,waitt,cframe,color)
1732
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
1733
	local mesh = IT("SpecialMesh",wave)
1734
	mesh.MeshType = "Sphere"
1735
	mesh.Scale = VT(size,size,size)
1736
	mesh.Offset = VT(0,0,0)
1737
	wave.CFrame = cframe
1738
	coroutine.resume(coroutine.create(function(PART)
1739
		for i = 1, waitt do
1740
			Swait()
1741
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
1742
			wave.Transparency = wave.Transparency + (1/waitt)
1743
			if wave.Transparency > 0.99 then
1744
				wave:remove()
1745
			end
1746
		end
1747
	end))
1748
end
1749
1750
function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
1751
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
1752
	local mesh = IT("SpecialMesh",wave)
1753
	mesh.MeshType = "FileMesh"
1754
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
1755
	mesh.Scale = VT(size,size,size)
1756
	wave.CFrame = cframe
1757
	coroutine.resume(coroutine.create(function(PART)
1758
		for i = 1, waitt do
1759
			Swait()
1760
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
1761
			if doesrotate == true then
1762
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
1763
			end
1764
			wave.Transparency = wave.Transparency + (0.5/waitt)
1765
			if wave.Transparency > 0.99 then
1766
				wave:remove()
1767
			end
1768
		end
1769
	end))
1770
end
1771
1772
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
1773
	local Direction = CFrame.new(StartPos, Vec).lookVector
1774
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
1775
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
1776
	if RayHit and CheckIntangible(RayHit) then
1777
		if DelayIfHit then
1778
			wait()
1779
		end
1780
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
1781
	end
1782
	return RayHit, RayPos, RayNormal
1783
end
1784
1785
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1786
	local CHILDREN = workspace:GetDescendants()
1787
	for index, CHILD in pairs(CHILDREN) do
1788
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1789
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1790
			if HUM then
1791
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1792
				if TORSO then
1793
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1794
						if INSTAKILL == true then
1795
							CHILD:BreakJoints()
1796
						else
1797
							local DMG = MRANDOM(MINDMG,MAXDMG)
1798
							ApplyDamage(HUM,DMG,TORSO)
1799
						end
1800
						if FLING > 0 then
1801
							for _, c in pairs(CHILD:GetChildren()) do
1802
								if c:IsA("BasePart") then
1803
									local bv = Instance.new("BodyVelocity") 
1804
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1805
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1806
									bv.Parent = c
1807
									Debris:AddItem(bv,0.05)
1808
								end
1809
							end
1810
						end
1811
					end
1812
				end
1813
			end
1814
		end
1815
	end
1816
end
1817
--//=================================\\
1818
--||	MODE CHANGING
1819
--\\=================================//
1820
1821
function Switch()
1822
	ATTACK = true
1823
	Rooted = true
1824
	if MODE == "Main" then
1825
		for i=0, 0.3, 0.1 / Animation_Speed do
1826
			Swait()
1827
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1828
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1829
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1830
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1831
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1832
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1833
		end
1834
		for i=0, 1, 0.1 / Animation_Speed do
1835
			Swait()
1836
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.75 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1837
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1838
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1839
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1840
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1841
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1842
		end
1843
		CreateSound(363808674, Torso, 6, 1, false)
1844
		for i=0, 0.6, 0.1 / Animation_Speed do
1845
			Swait()
1846
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.5 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1847
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
1848
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1849
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1850
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1851
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1852
		end
1853
		CreateSound(363808674, Torso, 6, 1, false)
1854
		for i=0, 0.6, 0.1 / Animation_Speed do
1855
			Swait()
1856
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1857
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
1858
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1859
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1860
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1861
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1862
		end
1863
        SONG = 1092048938
1864
		CLOCKSPEED = 1.5
1865
		text.Text = "InJustice"
1866
		MODE = "JusticeHorn"
1867
	elseif MODE == "JusticeHorn" then
1868
		CreateSound(147722227, Torso, 4, 1.3, false)
1869
		for i=0, 0.3, 0.1 / Animation_Speed do
1870
			Swait()
1871
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1872
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5 + ((0.1) - 0.1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1873
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1874
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1875
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1876
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1877
		end
1878
		SONG = 1117396305
1879
		CLOCKSPEED = 0
1880
		text.Text = "The Switcher"
1881
		MODE = "Main"
1882
	end
1883
	ATTACK = false
1884
	Rooted = false
1885
end
1886
1887
function Switch3()
1888
	ATTACK = true
1889
	Rooted = true
1890
	if MODE == "Main" then
1891
		for i=0, 0.3, 0.1 / Animation_Speed do
1892
			Swait()
1893
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1894
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1895
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1896
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1897
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1898
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1899
		end
1900
		for i=0, 1, 0.1 / Animation_Speed do
1901
			Swait()
1902
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.75 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1903
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1904
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1905
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1906
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1907
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1908
		end
1909
		CreateSound(363808674, Torso, 6, 1, false)
1910
		for i=0, 0.6, 0.1 / Animation_Speed do
1911
			Swait()
1912
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.5 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1913
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
1914
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1915
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1916
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1917
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1918
		end
1919
		CreateSound(363808674, Torso, 6, 1, false)
1920
		for i=0, 0.6, 0.1 / Animation_Speed do
1921
			Swait()
1922
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1923
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
1924
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1925
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1926
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1927
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1928
		end
1929
		SONG = 1873219898
1930
		CLOCKSPEED = 0.3
1931
		text.Text = "Superior"
1932
		MODE = "Superior"
1933
	elseif MODE == "Superior" then
1934
		CreateSound(147722227, Torso, 4, 1.3, false)
1935
		for i=0, 0.3, 0.1 / Animation_Speed do
1936
			Swait()
1937
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1938
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5 + ((0.1) - 0.1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1939
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1940
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1941
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1942
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1943
		end
1944
		SONG = 1117396305
1945
		CLOCKSPEED = 0
1946
		text.Text = "The Switcher"
1947
		MODE = "Main"
1948
	end
1949
	ATTACK = false
1950
	Rooted = false
1951
end
1952
1953
function Switch2()
1954
	ATTACK = true
1955
	Rooted = true
1956
	if MODE == "Main" then
1957
		for i=0, 0.3, 0.1 / Animation_Speed do
1958
			Swait()
1959
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1960
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1961
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1962
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1963
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1964
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1965
		end
1966
		for i=0, 1, 0.1 / Animation_Speed do
1967
			Swait()
1968
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.75 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1969
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1970
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1971
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1972
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1973
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1974
		end
1975
		CreateSound(363808674, Torso, 6, 1, false)
1976
		for i=0, 0.6, 0.1 / Animation_Speed do
1977
			Swait()
1978
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.5 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1979
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
1980
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1981
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1982
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1983
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1984
		end
1985
		CreateSound(363808674, Torso, 6, 1, false)
1986
		for i=0, 0.6, 0.1 / Animation_Speed do
1987
			Swait()
1988
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1989
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.4 + ((0.1) - 0.1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
1990
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1991
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.65, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1992
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1993
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.5 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1994
		end
1995
		SONG = 534861083
1996
		CLOCKSPEED = 0.75
1997
		text.Text = "T0M-YUM"
1998
		MODE = "Maniac"
1999
	elseif MODE == "Maniac" then
2000
		CreateSound(147722227, Torso, 4, 1.3, false)
2001
		for i=0, 0.3, 0.1 / Animation_Speed do
2002
			Swait()
2003
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2004
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5 + ((0.1) - 0.1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
2005
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2006
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.8, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2007
			RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2008
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1.25 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2009
		end
2010
		SONG = 1117396305
2011
		CLOCKSPEED = 0
2012
		text.Text = "The Switcher"
2013
		MODE = "Main"
2014
	end
2015
	ATTACK = false
2016
	Rooted = false
2017
end
2018
2019
--//=================================\\
2020
--||	ATTACK FUNCTIONS AND STUFF
2021
--\\=================================//
2022
2023
function ApplyAoE(POSITION,RANGE,FLING,BURN)
2024
	local CHILDREN = workspace:GetDescendants()
2025
	for index, CHILD in pairs(CHILDREN) do
2026
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2027
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2028
			if HUM then
2029
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2030
				if TORSO then
2031
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
2032
						CHILD:BreakJoints()
2033
						if FLING ~= 0 then
2034
							for _, c in pairs(CHILD:GetChildren()) do
2035
								if c:IsA("BasePart") and c.Transparency == 0 then
2036
									if BURN == true then
2037
										Fire(c)
2038
									end
2039
									local bv = Instance.new("BodyVelocity") 
2040
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2041
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
2042
									bv.Parent = c
2043
									Debris:AddItem(bv,0.05)
2044
								end
2045
							end
2046
						end
2047
					end
2048
				end
2049
			end
2050
		end
2051
	end
2052
end
2053
2054
function MagicMissiles()
2055
	ATTACK = true
2056
	Rooted = true
2057
	local SELECTING = true
2058
	local SPOTS = {}
2059
	coroutine.resume(coroutine.create(function()
2060
		local LOOP = 0
2061
		repeat
2062
			LOOP = LOOP + 1
2063
			Swait()
2064
			if LOOP >= 10 then
2065
				LOOP = 0
2066
				for i = 1, #SPOTS do
2067
					if SPOTS[i] ~= nil then
2068
						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(0/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2069
						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(0/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2070
					end
2071
				end
2072
			end
2073
			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)
2074
			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)
2075
			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)
2076
			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)
2077
			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)
2078
			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)
2079
		until SELECTING == false
2080
		Rooted = false
2081
		repeat
2082
			LOOP = LOOP + 1
2083
			Swait()
2084
			if LOOP >= 10 then
2085
				LOOP = 0
2086
				for i = 1, #SPOTS do
2087
					if SPOTS[i] ~= nil then
2088
						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(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2089
						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(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2090
					end
2091
				end
2092
			end
2093
			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)
2094
			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)
2095
			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)
2096
			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)
2097
			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)
2098
			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)
2099
		until ATTACK == false
2100
	end))
2101
	repeat
2102
		repeat Swait() until HOLD == true
2103
			local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
2104
			if DIST > 1500 then
2105
				DIST = 1500
2106
			end
2107
			local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
2108
			local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)	
2109
			if HITFLOOR ~= nil then
2110
				table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
2111
				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(255/255, 255/255, 0/255), SoundID = 90655239, SoundPitch = 1, SoundVolume = 6})
2112
				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(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2113
			end
2114
		repeat Swait() until HOLD == false
2115
	until #SPOTS == 1
2116
	chatfunc("Justice rains from above.")
2117
	SELECTING = false
2118
	for i = 1, #SPOTS do
2119
		if SPOTS[i] ~= nil then
2120
			local POS = SPOTS[i]
2121
			coroutine.resume(coroutine.create(function()
2122
				local MISSILE = IT("Model",Effects)
2123
				MISSILE.Name = "Missile"
2124
				local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Really black", "Part", VT(2,2,2))
2125
				MakeForm(BASEPART,"Cyl")
2126
				MISSILE.PrimaryPart = BASEPART
2127
				BASEPART.CFrame = POS*CF(0,-30*3,0)
2128
				local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Really black", "Part", VT(2,4,2))
2129
				MakeForm(HEAD,"Ball")
2130
				HEAD.CFrame = BASEPART.CFrame*CF(0,1,0)
2131
				local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Really black", "Part", VT(2.5,0.1,2.5))
2132
				MakeForm(TAIL,"Cyl")
2133
				TAIL.CFrame = BASEPART.CFrame*CF(0,1,0)
2134
				for i = 1, 10 do
2135
					Swait()
2136
					for _, c in pairs(MISSILE:GetChildren()) do
2137
						if c.ClassName == "Part" then
2138
							c.Transparency = c.Transparency - 1/10
2139
						end
2140
					end
2141
				end
2142
				for i = 1, 15*1.5 do
2143
					Swait()
2144
					MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
2145
				end
2146
				ApplyAoE(BASEPART.CFrame.p,40,70,90,150,false)
2147
				WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(150,2,150), Transparency = 0.5, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
2148
				WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(70,70,70), Transparency = 0, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255/255, 255/255, 0/255), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 4})
2149
				WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(44,4,44), 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(255/255, 255/255, 255/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2150
				WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(40,6,40), 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(255/255, 255/255, 255/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2151
				MISSILE:remove()
2152
			end))
2153
		end
2154
	end
2155
	wait(0.8)
2156
	ATTACK = false
2157
	Rooted = false
2158
end
2159
2160
function TimesUp()
2161
	CLOCKTARGET = nil
2162
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
2163
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
2164
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
2165
		if TORSO then
2166
			ATTACK = true
2167
			Rooted = false
2168
			coroutine.resume(coroutine.create(function()
2169
				repeat
2170
					Swait()
2171
					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)
2172
					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)
2173
					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)
2174
					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)
2175
					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)
2176
					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)
2177
				until ATTACK == false
2178
			end))
2179
			if Effects:FindFirstChild("NeonDoll") then
2180
				repeat Swait() until Effects:FindFirstChild("NeonDoll") == nil
2181
			end
2182
			wait(0.5)
2183
			local FAKECHARACTER = IT("Model",Effects)
2184
			FAKECHARACTER.Name = "NeonDoll"
2185
			local TORS = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.3,0.3,0.15),false)
2186
			CreateWeldOrSnapOrMotor("Weld", RING, RING, TORS, CF(0,0.6,0), CF(0,0,0))
2187
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.15,0.3,0.15),false)
2188
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0,0.15,0))
2189
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.15,0.3,0.15),false)
2190
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(-0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0,0.15,0))
2191
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.15,0.3,0.15),false)
2192
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0,0.15,0))
2193
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.15,0.3,0.15),false)
2194
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(-0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0,0.15,0))
2195
			local HEAD = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "New Yeller", "Part", VT(0.15,0.15,0.15),false)
2196
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, HEAD, CF(0,0.225,0), CF(0,0,0))
2197
			CreateSound(201858045, TORS, 5, 0.4, false)
2198
			for i = 1, 150 do
2199
				Swait()
2200
				CLOCKSPEED = 0.5
2201
				for _, c in pairs(FAKECHARACTER:GetChildren()) do
2202
					if c.ClassName == "Part" then
2203
						c.Transparency = c.Transparency - 0.5/150
2204
					end
2205
				end
2206
			end
2207
			CLOCKTARGET = HUM
2208
			chatfunc("IT'S TIME TO STOP")
2209
			coroutine.resume(coroutine.create(function()
2210
				repeat Swait() CLOCKSPEED = 5 until CLOCKTARGET == nil
2211
				for i = 1, 25 do
2212
					Swait()
2213
					for _, c in pairs(FAKECHARACTER:GetChildren()) do
2214
						if c.ClassName == "Part" then
2215
							c.Transparency = c.Transparency + 0.5/25
2216
						end
2217
					end
2218
				end
2219
				CLOCKSPEED = 1.5
2220
				FAKECHARACTER:remove()
2221
			end))
2222
			wait(0.5)
2223
			ATTACK = false
2224
			Rooted = false
2225
		end
2226
	end
2227
end
2228
2229
function ChainPunch()
2230
	ATTACK = true
2231
	Rooted = false
2232
	local GYRO = IT("BodyGyro",RootPart)
2233
	GYRO.D = 25
2234
	GYRO.P = 2000
2235
	GYRO.MaxTorque = VT(0,40000,0)
2236
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
2237
	repeat
2238
		Swait()
2239
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
2240
		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)
2241
		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)
2242
		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)
2243
		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)
2244
		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)
2245
		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)
2246
	until HOLD == true
2247
	local POS = Mouse.Hit.p
2248
	local CHAINS = false
2249
	local CHAINLINKS = {}
2250
	local A = IT("Attachment",RightArm)
2251
	A.Position = VT(1,-1,0)*SIZE
2252
	A.Orientation = VT(-90, -89.982, 0)
2253
	local B = IT("Attachment",RightArm)
2254
	B.Position = VT(-1,-1,0)*SIZE
2255
	B.Orientation = VT(-90, 89.988, 0)
2256
	local C = IT("Attachment",RightArm)
2257
	C.Position = VT(0.5,-1.3,0)*SIZE
2258
	C.Orientation = VT(-90, -89.982, 0)
2259
	local D = IT("Attachment",RightArm)
2260
	D.Position = VT(-0.5,-1.3,0)*SIZE
2261
	D.Orientation = VT(-90, 89.988, 0)
2262
	local LIGHT = IT("Attachment",RightArm)
2263
	LIGHT.Position = VT(0,-1,0)*SIZE
2264
	local LIGHT2 = IT("PointLight",LIGHT)
2265
	LIGHT2.Range = 7
2266
	LIGHT2.Brightness = 5
2267
	LIGHT2.Color = C3(255/255, 255/255, 0/255)
2268
	for i = 1, 2 do
2269
		local TWIST = -2
2270
		local START = A
2271
		local END = B
2272
		if i == 1 then
2273
			START = B
2274
			END = A
2275
		end
2276
		local ChainLink = IT("Beam",Torso)
2277
		ChainLink.Texture = "rbxassetid://73042633"
2278
		ChainLink.Color = ColorSequence.new(C3(255/255, 255/255, 0/255))
2279
		ChainLink.TextureSpeed = 1
2280
		ChainLink.Width0 = 1
2281
		ChainLink.Width1 = 1
2282
		ChainLink.TextureLength = 2.5
2283
		ChainLink.Attachment0 = START
2284
		ChainLink.Attachment1 = END
2285
		ChainLink.CurveSize0 = TWIST
2286
		ChainLink.CurveSize1 = TWIST
2287
		--ChainLink.FaceCamera = true
2288
		ChainLink.Segments = 45
2289
		ChainLink.Transparency = NumberSequence.new(1)
2290
		table.insert(CHAINLINKS,ChainLink)
2291
	end
2292
	for i = 1, 2 do
2293
		local TWIST = -1
2294
		local START = C
2295
		local END = D
2296
		if i == 1 then
2297
			START = D
2298
			END = C
2299
		end
2300
		local ChainLink = IT("Beam",Torso)
2301
		ChainLink.Texture = "rbxassetid://73042633"
2302
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
2303
		ChainLink.TextureSpeed = 1
2304
		ChainLink.Width0 = 1
2305
		ChainLink.Width1 = 1
2306
		ChainLink.TextureLength = 5
2307
		ChainLink.Attachment0 = START
2308
		ChainLink.Attachment1 = END
2309
		ChainLink.CurveSize0 = TWIST
2310
		ChainLink.CurveSize1 = TWIST
2311
		--ChainLink.FaceCamera = true
2312
		ChainLink.Segments = 25
2313
		ChainLink.LightEmission = 0.5
2314
		ChainLink.Transparency = NumberSequence.new(1)
2315
		table.insert(CHAINLINKS,ChainLink)
2316
	end
2317
	coroutine.resume(coroutine.create(function()
2318
		repeat
2319
			chatfunc("SMASH!!!")
2320
			Swait()
2321
			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)
2322
			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)
2323
			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)
2324
			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)
2325
			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)
2326
			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)
2327
		until CHAINS == true
2328
		repeat
2329
			Swait()
2330
			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)
2331
			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)
2332
			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)
2333
			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)
2334
			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)
2335
			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)
2336
		until ATTACK == false
2337
		for e = 1, 15 do
2338
			Swait()
2339
			for i = 1, #CHAINLINKS do
2340
				CHAINLINKS[i].Transparency = NumberSequence.new((e/15))
2341
			end
2342
		end
2343
		A:remove()
2344
		B:remove()
2345
		C:remove()
2346
		D:remove()
2347
	end))
2348
	CreateSound(233856115, RightArm, 5, 1.2, false)
2349
	for e = 1, 15 do
2350
		Swait()
2351
		for i = 1, #CHAINLINKS do
2352
			CHAINLINKS[i].Transparency = NumberSequence.new(1-(e/15))
2353
		end
2354
	end
2355
	CHAINS = true
2356
	Rooted = true
2357
	wait(0.25)
2358
	local FIST = CreatePart(3, Effects, "Neon", 0, 0.5, "New Yeller", "Part", VT(2,2,2))
2359
	FIST.Color = C3(1, 215/255, 1)
2360
	FIST.CFrame = CF(RightArm.CFrame*CF(0,-1.3*SIZE,0).p,POS) * ANGLES(RAD(90), RAD(0), RAD(0)) 
2361
	local LIGHT3 = IT("PointLight",FIST)
2362
	LIGHT3.Range = 7
2363
	LIGHT3.Brightness = 5
2364
	LIGHT3.Color = C3(255/255, 0/255, 0/255)
2365
	CreateMesh("SpecialMesh", FIST, "FileMesh", "90718752", "", VT(10,10,10), VT(0,0,0))
2366
	local FISTA = IT("Attachment",FIST)
2367
	FISTA.Position = VT(0.062, 0.977, 0)
2368
	local ChainLink = IT("Beam",Torso)
2369
	ChainLink.Texture = "rbxassetid://73042633"
2370
	ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
2371
	ChainLink.TextureSpeed = 0
2372
	ChainLink.Width0 = 3
2373
	ChainLink.Width1 = 3
2374
	ChainLink.TextureLength = 12
2375
	ChainLink.Attachment0 = LIGHT
2376
	ChainLink.Attachment1 = FISTA
2377
	ChainLink.FaceCamera = true
2378
	ChainLink.Segments = 45
2379
	ChainLink.LightEmission = 0.5
2380
	ChainLink.Transparency = NumberSequence.new(0.25)
2381
	local FISTSOUND = CreateSound(288641686, FIST, 5, 1.2, false)
2382
	for i = 1, 85 do
2383
		Swait()
2384
		FIST.CFrame = FIST.CFrame*CF(0,-2,0)
2385
		ChainLink.TextureLength = 12+(i*2)
2386
		ApplyAoE(FIST.Position,10,15,25,100,false)
2387
		WACKYEFFECT({Time = 5, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame*CF(0,-1,0) * ANGLES(RAD(0), RAD(i*15), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(2, 9, 0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2388
		local HITFLOOR = Raycast(FIST.Position, (CF(FIST.Position, FIST.CFrame*CF(0,-1,0).p)).lookVector, 2.1, Character)
2389
		if HITFLOOR ~= nil then
2390
			HITFLOOR:BreakJoints()
2391
			coroutine.resume(coroutine.create(function()
2392
				for i = 1, 15 do
2393
					Swait()
2394
					FISTSOUND.Volume = FISTSOUND.Volume - 0.15
2395
					ApplyAoE(FIST.Position,10+(i*2),5,15,5,false)
2396
					WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(2, 9, 0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2397
				end
2398
			end))
2399
			break
2400
		end
2401
	end
2402
	coroutine.resume(coroutine.create(function()
2403
		for i = 1, 50 do
2404
			Swait()
2405
			FIST.Transparency = FIST.Transparency + 0.5/50
2406
			LIGHT3.Range = LIGHT3.Range - 300/500
2407
		end
2408
		FIST:remove()
2409
	end))
2410
	LIGHT:remove()
2411
	GYRO:remove()
2412
	ATTACK = false
2413
	Rooted = false
2414
end
2415
2416
function WarpMeteor()
2417
    chatfunc("Meteor Strike..")
2418
	local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
2419
	if DIST > 180 then
2420
		DIST = 180
2421
	end
2422
	local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
2423
	local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,45,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 75*SIZE, Character)
2424
	if HITFLOOR then
2425
		local POS = HITPOS	
2426
		ATTACK = true
2427
		Rooted = true
2428
		local WARPED = false
2429
		local SMASHED = false
2430
		local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
2431
		coroutine.resume(coroutine.create(function()
2432
			repeat
2433
				Swait()
2434
				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)
2435
				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)
2436
				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)
2437
				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)
2438
				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)
2439
				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)
2440
			until WARPED == true
2441
			repeat
2442
				Swait()
2443
				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)
2444
				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)
2445
				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)
2446
				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)
2447
				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)
2448
				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)
2449
			until SMASHED == true
2450
			repeat
2451
				Swait()
2452
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
2453
			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)
2454
			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)
2455
			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)
2456
			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)
2457
			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)
2458
			until ATTACK == false
2459
		end))
2460
		VALUE1 = true
2461
		CreateSound(233856115, Torso, 5, 1.6, false)
2462
		for i = 1, 25 do
2463
			Swait()
2464
			for _, c in pairs(Character:GetChildren()) do
2465
				if c.ClassName == "Part" then
2466
					c.Transparency = c.Transparency + 1/25
2467
				end
2468
			end
2469
			for _, c in pairs(Weapon:GetChildren()) do
2470
				if c.ClassName == "Part" then
2471
					c.Transparency = c.Transparency + 1/25
2472
				end
2473
			end
2474
		end
2475
		UNANCHOR = false
2476
		RootPart.Anchored = true
2477
		RootPart.Velocity = VT(0,0,0)
2478
		local ROOTPOS = RootPart.Position
2479
		RootPart.CFrame = CF(POS+VT(0,300,0),VT(ROOTPOS.X,POS.Y+300,ROOTPOS.Z))
2480
		WARPED = true
2481
		for i = 1, 25 do
2482
			Swait()
2483
			for _, c in pairs(Character:GetChildren()) do
2484
				if c.ClassName == "Part" then
2485
					c.Transparency = c.Transparency - 1/25
2486
				end
2487
			end
2488
			for _, c in pairs(Weapon:GetChildren()) do
2489
				if c.ClassName == "Part" then
2490
					c.Transparency = c.Transparency - 1/25
2491
				end
2492
			end
2493
		end
2494
		local SHELL = CreatePart(3, Effects, "Neon", 0, 1, "New Yeller", "Part", VT(0,0,0))
2495
		SHELL.CFrame = RootPart.CFrame
2496
		MakeForm(SHELL,"Ball")
2497
		CreateSound(402981977, SHELL, 5, 1.6, false)
2498
		for i = 1, 10 do
2499
			Swait()
2500
			SHELL.Transparency = SHELL.Transparency - 1/10
2501
			SHELL.Size = SHELL.Size + VT(0.6,0.6,0.6)*1.8
2502
		end
2503
		for i = 1, math.ceil(75/2) do
2504
			Swait()
2505
			RootPart.CFrame = RootPart.CFrame*CF(0,-3.5*2,0)
2506
			SHELL.CFrame = CF(RootPart.Position)
2507
			WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(45,43,45), Transparency = 0.5, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = SHELL.Position+VT(0,15,0), RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
2508
		end
2509
		RootPart.CFrame = CF(POS+VT(0,1,0),VT(ROOTPOS.X,HITPOS.Y+1,ROOTPOS.Z))
2510
		SHELL.CFrame = CF(RootPart.Position)
2511
		WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(75,55,75)*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})
2512
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(65,43,65)*3.8, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
2513
		WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(65,43,65)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
2514
		for i = 1, 5 do
2515
			WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(75,43,75)*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(255/255, 255/255, 0/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2516
		end
2517
		SHELL:remove()
2518
		ApplyAoE(RootPart.Position,115,75,115,215,false)
2519
		SMASHED = true
2520
		wait(1)
2521
		VALUE1 = false
2522
		UNANCHOR = true
2523
		ATTACK = false
2524
		Rooted = false
2525
	end
2526
end
2527
2528
function PandorasBox()
2529
    chatfunc("What's Inside The Box")
2530
	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)
2531
	if HITFLOOR ~= nil then
2532
		ATTACK = true
2533
		Rooted = true
2534
		local RINGSPIN = true
2535
		local CONSTRUCTING = true
2536
		local RING = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Ring", VT(0,0,0))
2537
		RING.Color = C3(0,0,0)
2538
		MakeForm(RING,"Cyl")
2539
		RING.CFrame = CF(HITPOS)
2540
		CreateSound(402981977, RING, 5, 1.2, false)
2541
		coroutine.resume(coroutine.create(function()
2542
			repeat
2543
				Swait()
2544
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
2545
				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)
2546
				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)
2547
				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)
2548
				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)
2549
				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)
2550
				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)
2551
			until CONSTRUCTING == false
2552
			repeat 
2553
				Swait() 
2554
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
2555
			until RINGSPIN == false
2556
			for i = 1, 25 do
2557
				Swait()
2558
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
2559
				RING.Size = RING.Size - VT(0.15,0,0.15)
2560
				--DECAL.Transparency = DECAL.Transparency + 1/25
2561
				RING.Transparency = RING.Transparency + 1/25
2562
			end
2563
			RING:remove()
2564
		end))
2565
		for i = 1, 15 do
2566
			Swait()
2567
			RING.Size = RING.Size + VT(0.75,0,0.75)
2568
			RING.Transparency = RING.Transparency - 1/15
2569
		end
2570
		local BOXSPIN = true
2571
		local PANDORASBOX = IT("Model",Effects)
2572
		PANDORASBOX.Name = "Pandora's Box"
2573
		local BOX = IT("Model",PANDORASBOX)
2574
		BOX.Name = "Body"
2575
		local LID = IT("Model",PANDORASBOX)
2576
		LID.Name = "Lid"
2577
		--BUILDING THE BOX--
2578
			local BASE = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Black", VT(2,1.8,2))
2579
			BASE.Color = C3(0,0,0)
2580
			PANDORASBOX.PrimaryPart = BASE
2581
			BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
2582
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,1.9,0.2))
2583
			WOOD.CFrame = BASE.CFrame*CF(1,0,1)
2584
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,1.9,0.2))
2585
			WOOD.CFrame = BASE.CFrame*CF(1,0,-1)
2586
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,1.9,0.2))
2587
			WOOD.CFrame = BASE.CFrame*CF(-1,0,1)
2588
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,1.9,0.2))
2589
			WOOD.CFrame = BASE.CFrame*CF(-1,0,-1)
2590
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2591
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,1)
2592
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2593
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,-1)
2594
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2595
			WOOD.CFrame = BASE.CFrame*CF(1,0.9,0)
2596
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2597
			WOOD.CFrame = BASE.CFrame*CF(-1,0.9,0)
2598
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2599
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,1)
2600
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2601
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,-1)
2602
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2603
			WOOD.CFrame = BASE.CFrame*CF(1,-0.9,0)
2604
			local WOOD = CreatePart(3, BOX, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2605
			WOOD.CFrame = BASE.CFrame*CF(-1,-0.9,0)
2606
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Really black", "Marble", VT(2.1,1.9,0.1))
2607
			WOOD.CFrame = BASE.CFrame*CF(0,0,1)
2608
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Really black", "Marble", VT(2.1,1.9,0.1))
2609
			WOOD.CFrame = BASE.CFrame*CF(0,0,-1)
2610
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Really black", "Marble", VT(0.1,1.9,2.1))
2611
			WOOD.CFrame = BASE.CFrame*CF(1,0,0)
2612
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Really black", "Marble", VT(0.1,1.9,2.1))
2613
			WOOD.CFrame = BASE.CFrame*CF(-1,0,0)
2614
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Really black", "Marble", VT(2.1,0.1,2.1))
2615
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,0)
2616
			-------------
2617
			local LIDPART = CreatePart(3, LID, "Marble", 0, 0, "Really black", "Marble", VT(2.1,0.1,2.1))
2618
			LIDPART.CFrame = BASE.CFrame*CF(0,1,0)
2619
			LID.PrimaryPart = LIDPART
2620
			local WOOD = CreatePart(3, LID, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2621
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,-1)
2622
			local WOOD = CreatePart(3, LID, "Neon", 0, 0, "New Yeller", "Marble", VT(2.1,0.2,0.2))
2623
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,1)
2624
			local WOOD = CreatePart(3, LID, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2625
			WOOD.CFrame = LIDPART.CFrame*CF(1,0,0)
2626
			local WOOD = CreatePart(3, LID, "Neon", 0, 0, "New Yeller", "Marble", VT(0.2,0.2,2.1))
2627
			WOOD.CFrame = LIDPART.CFrame*CF(-1,0,0)
2628
			local DECAL = IT("Decal",LIDPART)
2629
			DECAL.Face = "Top"
2630
			DECAL.Texture = "http://www.roblox.com/asset/?id=1501226061"
2631
			DECAL.Color3 = C3(0,0,0)
2632
		--BUILDING THE BOX--
2633
		coroutine.resume(coroutine.create(function()
2634
			repeat
2635
				Swait()
2636
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * ANGLES(RAD(0), RAD(2.45), RAD(0)))
2637
			until BOXSPIN == false
2638
		end))
2639
		for i = 1, 25 do
2640
			Swait()
2641
			PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,1.5-(i/12.5),0))
2642
		end
2643
		wait(0.5)
2644
		BOXSPIN = false
2645
		CONSTRUCTING = false	
2646
		coroutine.resume(coroutine.create(function()
2647
			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})
2648
			--[[for i = 1, 45 do
2649
				Swait()
2650
				LID:SetPrimaryPartCFrame(LIDPART.CFrame * CF(0,1.5-(i/12.5),0.5) * ANGLES(RAD(0.7), RAD(0), RAD(0)))
2651
			end-
2652
			LID:remove()]]--
2653
			for _, c in pairs(LID:GetChildren()) do
2654
				if c.ClassName == "Part" then
2655
					c.Anchored = false
2656
					c.CanCollide = true
2657
					if c ~= LIDPART then
2658
						weldBetween(LIDPART,c)
2659
					end
2660
				end
2661
			end
2662
			LIDPART.Velocity = CF(LIDPART.Position,LIDPART.CFrame*CF(15,25,0).p).lookVector*65
2663
			Debris:AddItem(LID,15)
2664
			wait(0.5)
2665
			local RANDOMEFFECT = MRANDOM(1,4)
2666
			if RANDOMEFFECT == 1 then
2667
				for i = 1, 45 do
2668
					wait((2-(i/15))/15)
2669
					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})
2670
				end	
2671
				wait(1)
2672
				WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35)*12, Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
2673
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*10, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 469345336, SoundPitch = 0.75, SoundVolume = 6})
2674
				WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*9, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
2675
				for i = 1, 5 do
2676
					WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*12, Transparency = 0.5, Transparency2 = 1, CFrame = BASE.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
2677
				end
2678
				ApplyAoE(BASE.Position,50,1,200,375,false)
2679
				ApplyAoE(BASE.Position,250,35,75,175,false)
2680
			elseif RANDOMEFFECT == 2 then
2681
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "New Yeller", "Field", VT(0.3,0.3,0.3))
2682
				FIELD.CFrame = BASE.CFrame
2683
				MakeForm(FIELD,"Ball")
2684
				for i = 1, 50 do
2685
					Swait()
2686
					FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
2687
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
2688
				end
2689
				wait(0.2)
2690
				local LOOP = CreateSound(1393698948, FIELD, 0, 1.2, true)
2691
				coroutine.resume(coroutine.create(function()
2692
					for i = 1, 75 do
2693
						Swait()
2694
						LOOP.Volume = LOOP.Volume + 10/75
2695
						LOOP.Parent = FIELD
2696
						local CHILDREN = workspace:GetDescendants()
2697
						for index, CHILD in pairs(CHILDREN) do
2698
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2699
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2700
								if HUM then
2701
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2702
									if TORSO then
2703
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
2704
											HUM.Health = HUM.Health - 0.1
2705
											TORSO.Velocity = VT(0,5,0)
2706
											HUM.PlatformStand = true
2707
											if TORSO.RotVelocity.Magnitude < 15 then
2708
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
2709
											end
2710
										end
2711
									end
2712
								end
2713
							end
2714
						end
2715
						FIELD.Size = FIELD.Size + VT(3,3,3)
2716
						FIELD.Transparency = FIELD.Transparency + 0.8/75
2717
					end
2718
					for i = 1, 500 do
2719
						Swait()
2720
						LOOP.Parent = FIELD
2721
						local CHILDREN = workspace:GetDescendants()
2722
						for index, CHILD in pairs(CHILDREN) do
2723
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2724
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2725
								if HUM then
2726
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2727
									if TORSO then
2728
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
2729
											TORSO.Velocity = VT(0,5,0)
2730
											HUM.Health = HUM.Health - 0.1
2731
											HUM.PlatformStand = true
2732
											if TORSO.RotVelocity.Magnitude < 15 then
2733
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
2734
											end
2735
										end
2736
									end
2737
								end
2738
							end
2739
						end
2740
					end
2741
					for i = 1, 25 do
2742
						Swait()
2743
						LOOP.Volume = LOOP.Volume + 10/25
2744
						LOOP.Parent = FIELD
2745
						local CHILDREN = workspace:GetDescendants()
2746
						for index, CHILD in pairs(CHILDREN) do
2747
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2748
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2749
								if HUM then
2750
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2751
									if TORSO then
2752
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
2753
											TORSO.Velocity = VT(0,5,0)
2754
											HUM.Health = HUM.Health - 0.1
2755
											HUM.PlatformStand = false
2756
											if TORSO.RotVelocity.Magnitude < 15 then
2757
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
2758
											end
2759
										end
2760
									end
2761
								end
2762
							end
2763
						end
2764
						FIELD.Size = FIELD.Size - VT(3,3,3)
2765
						FIELD.Transparency = FIELD.Transparency + 0.2/25
2766
					end	
2767
					FIELD:remove()
2768
				end))
2769
			elseif RANDOMEFFECT == 3 then
2770
				for i = 1, 10 do
2771
					wait(0.15)
2772
					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})
2773
					coroutine.resume(coroutine.create(function()
2774
						local MINION = CLONE:Clone()
2775
						MINION.Parent = Effects
2776
						MINION.Name = "Shadow"
2777
						MINION.HumanoidRootPart.CFrame = BASE.CFrame*CF(0,5,0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
2778
						MINION.HumanoidRootPart.Velocity = CF(MINION.HumanoidRootPart.Position,MINION.HumanoidRootPart.CFrame*CF(0,8,-15).p).lookVector*MRANDOM(55,100)
2779
						for _, c in pairs(MINION:GetChildren()) do
2780
							if c.ClassName == "Part" then
2781
								c.Material = "Neon"
2782
								c.Color = C3(0,0,0)
2783
								c.Transparency = 0.25
2784
								if c.Name == "Head" then
2785
									c:ClearAllChildren()
2786
									local MSH = IT("BlockMesh",c)
2787
									MSH.Scale = VT(0.5,1,1)
2788
								end
2789
							end
2790
						end
2791
						local TORSO = MINION.Torso
2792
						local HUMAN = MINION.Humanoid
2793
						HUMAN.WalkSpeed = 20
2794
						HUMAN.MaxHealth = math.huge
2795
						HUMAN.Health = math.huge
2796
						HUMAN.DisplayDistanceType = "None"
2797
						HUMAN.Died:connect(function()
2798
							MINION:remove()
2799
							--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 3, 0.5, false)
2800
						end)
2801
						wait(1)
2802
						local findNearestTorso = function(POS)
2803
							local list = game.Workspace:GetDescendants()
2804
							local torso = nil
2805
							local dist = 500
2806
							local temp = nil
2807
							local human = nil
2808
							local temp2 = nil
2809
							for x = 1, #list do
2810
								temp2 = list[x]
2811
								if (temp2.className == "Model") and (temp2 ~= Character) and (temp2.Parent ~= Effects) then
2812
									temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
2813
									human = temp2:findFirstChildOfClass("Humanoid")
2814
									if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
2815
										if (temp.Position - POS).magnitude < dist then
2816
											torso = temp
2817
											dist = (temp.Position - POS).magnitude
2818
										end
2819
									end
2820
								end
2821
							end
2822
							return torso, dist
2823
						end
2824
						for i = 1, 40 do
2825
							if HUMAN.Health == 0 then
2826
								break
2827
							end
2828
							wait(0.3)
2829
							local target,dist= findNearestTorso(TORSO.Position)
2830
							if target then
2831
								HUMAN:MoveTo(target.Position)
2832
								if dist < 25 then
2833
									CreateSound(348663022, TORSO, 10, 1, true)
2834
									wait(2)
2835
									--local ANIM = HUMAN:LoadAnimation(ATANIM)
2836
									--ANIM:Play()
2837
									--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 1, 1, false)
2838
									ApplyAoE(TORSO.Position,10,0,0,85,true)
2839
									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})
2840
									for i = 1, 5 do
2841
										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})
2842
									end
2843
									break
2844
								end
2845
							end
2846
						end
2847
						MINION:remove()
2848
					end))
2849
				end
2850
			elseif RANDOMEFFECT == 4 then
2851
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
2852
				FIELD.Color = C3(0,0,0)
2853
				FIELD.CFrame = BASE.CFrame
2854
				MakeForm(FIELD,"Ball")
2855
				FIELD.CanCollide = true
2856
				for i = 1, 50 do
2857
					Swait()
2858
					FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
2859
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
2860
				end
2861
				wait(0.2)
2862
				local LOOP = CreateSound(487214658, FIELD, 0, 1, true)
2863
				coroutine.resume(coroutine.create(function()
2864
					local E = 0
2865
					for i = 1, 75 do
2866
						E = E + 1
2867
						Swait()
2868
						if E >= 35 then
2869
							E = 0
2870
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
2871
						end
2872
						LOOP.Volume = LOOP.Volume + 10/75
2873
						LOOP.Parent = FIELD
2874
						local CHILDREN = workspace:GetDescendants()
2875
						for index, CHILD in pairs(CHILDREN) do
2876
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2877
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2878
								if HUM then
2879
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2880
									if TORSO then
2881
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
2882
											for _, c in pairs(CHILD:GetChildren()) do
2883
												if c:IsA("BasePart") then
2884
													local bv = Instance.new("BodyVelocity") 
2885
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2886
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
2887
													bv.Parent = c
2888
													Debris:AddItem(bv,0.05)
2889
												end
2890
											end
2891
											HUM.Health = HUM.Health - 0.3
2892
										end
2893
									end
2894
								end
2895
							end
2896
						end
2897
						FIELD.Size = FIELD.Size + VT(0.3,0.3,0.3)/5
2898
					end
2899
					for i = 1, 180 do
2900
						E = E + 1
2901
						Swait()
2902
						if E >= 35 then
2903
							E = 0
2904
							WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
2905
						end
2906
						LOOP.Parent = FIELD
2907
						local CHILDREN = workspace:GetDescendants()
2908
						for index, CHILD in pairs(CHILDREN) do
2909
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2910
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2911
								if HUM then
2912
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2913
									if TORSO then
2914
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
2915
											for _, c in pairs(CHILD:GetChildren()) do
2916
												if c:IsA("BasePart") then
2917
													local bv = Instance.new("BodyVelocity") 
2918
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2919
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
2920
													bv.Parent = c
2921
													Debris:AddItem(bv,0.05)
2922
												end
2923
											end
2924
											HUM.Health = HUM.Health - 0.3
2925
										end
2926
									end
2927
								end
2928
							end
2929
						end
2930
					end
2931
					ApplyAoE(FIELD.Position,40,15,20,375,false)
2932
					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})
2933
					for i = 1, 5 do
2934
						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})
2935
					end
2936
					FIELD:remove()
2937
				end))
2938
			elseif RANDOMEFFECT == 5 then
2939
			end
2940
			wait(0.5)
2941
			for i = 1, 25 do
2942
				Swait()
2943
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,-0.3,0))
2944
			end
2945
			PANDORASBOX:remove()
2946
			RINGSPIN = false
2947
		end))
2948
		ATTACK = false
2949
		Rooted = false
2950
	end
2951
end
2952
2953
function TimeSweep() 
2954
    ATTACK = true
2955
    Rooted = false
2956
    for i=0, 0.5, 0.1 / Animation_Speed do
2957
        Swait()
2958
		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)
2959
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 1*SIZE, -0.3*SIZE) * ANGLES(RAD(0.98), RAD(-119.59 + 2.5 * SIN(SINE / 25)), RAD(-175.39 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2960
    end
2961
    for e = 1, #BODY do
2962
        if BODY[e] ~= nil then
2963
            local STUFF = BODY[e]
2964
            local PART = STUFF[1]
2965
            if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
2966
                local PRT = PART:Clone()
2967
                PRT.Anchored = true
2968
                PRT.CanCollide = false
2969
                PRT.Material = "Neon"
2970
                PRT.Color = C3(1,0,0)
2971
                PRT.Name = "WarpEffect"
2972
                PRT.Parent = Effects
2973
                PRT.CFrame = PART.CFrame
2974
                PRT:BreakJoints()
2975
                if PRT:FindFirstChildOfClass("Sound") then
2976
                    PRT:FindFirstChildOfClass("Sound"):remove()
2977
                end
2978
                if PRT:FindFirstChildOfClass("Decal") then
2979
                    PRT:FindFirstChildOfClass("Decal"):remove()
2980
                end
2981
                coroutine.resume(coroutine.create(function()
2982
                    for i = 1, 100 do
2983
                        Swait()
2984
                        PRT.Transparency = PRT.Transparency + 1/100
2985
                    end
2986
                    PRT:remove()
2987
                end))
2988
            end
2989
        end
2990
    end
2991
    local POS = RootPart.Orientation
2992
    RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
2993
    RootPart.Orientation = POS
2994
    RootJoint.Parent = RootPart
2995
    for i=0, 0.5, 0.1 / Animation_Speed do
2996
        Swait()
2997
		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)
2998
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 1*SIZE, -0.3*SIZE) * ANGLES(RAD(0.98), RAD(-119.59 + 2.5 * SIN(SINE / 25)), RAD(-175.39 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2999
     end
3000
    for i=0, 0.1, 0.1 / Animation_Speed do
3001
        Swait()
3002
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 1*SIZE, -0.3*SIZE) * ANGLES(RAD(0.98), RAD(-119.59 + 2.5 * SIN(SINE / 25)), RAD(-175.39 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3003
    end
3004
    ATTACK = false
3005
    Rooted = false
3006
end
3007
3008
function Taunt()
3009
    chatfunc("Just don't bore me yeah")
3010
	ATTACK = true
3011
	Rooted = true
3012
	local TAUNT = CreateSound(159882635, Torso,17, 1, false)
3013
	repeat
3014
		Swait()
3015
		TAUNT.Parent = Torso
3016
		TAUNT.Playing = true
3017
		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(0)), 1 / Animation_Speed)
3018
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(-0.02*SIZE, 0*SIZE, 0.4*SIZE + ((1*SIZE) - 1*SIZE)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
3019
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1*SIZE, 0.5*SIZE, -0.45*SIZE) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3020
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1*SIZE, 0.15*SIZE, -0.45*SIZE) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3021
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3022
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3023
	until TAUNT.TimePosition >= 1.25
3024
	for i=0, 1.6, 0.1 / Animation_Speed do
3025
		Swait()
3026
		TAUNT.Parent = Torso
3027
		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(5)), 1 / Animation_Speed)
3028
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((1*SIZE) - 1*SIZE)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
3029
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1*SIZE, 0.5*SIZE, -0.45*SIZE) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3030
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1*SIZE, 0.15*SIZE, -0.45*SIZE) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3031
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3032
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3033
	end
3034
	ATTACK = false
3035
	Rooted = false
3036
end
3037
3038
function Smite()
3039
	local RING, MESH, DELET = MakeRing()
3040
	local POS = Mouse.Hit.p
3041
	RING.CFrame = CF(Mouse.Hit.p + VT(MRANDOM(-25, 25), 200, MRANDOM(-25, 25)), Mouse.Hit.p) * ANGLES(RAD(90), RAD(0), RAD(0))
3042
	for i = 1, 45 do
3043
		Swait()
3044
		MESH.Scale = MESH.Scale + VT(12, 0, 12)
3045
		RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
3046
	end
3047
	local HITFLOOR, HITPOS = Raycast(RING.Position, CF(RING.Position, RING.CFrame * CF(0, -1, 0).p).lookVector, 500, Character)
3048
	if HITFLOOR then
3049
		local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Really red"), "Beam", VT(0, 0, 0), true)
3050
		MakeForm(BEAM, "Cyl")
3051
		local DIST = (RING.Position - HITPOS).Magnitude
3052
		BEAM.Size = VT(0, DIST, 0)
3053
		BEAM.CFrame = CF(RING.Position, HITPOS) * CF(0, 0, -DIST / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
3054
		for i = 1, 5 do
3055
			WACKYEFFECT({
3056
				EffectType = "Wave",
3057
				Size = VT(25, 0, 25),
3058
				Size2 = VT(40, 0, 40) + VT(i * 6, i / 5, i * 6),
3059
				Transparency = 0,
3060
				Transparency2 = 1,
3061
				CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
3062
				MoveToPos = nil,
3063
				RotationX = 0,
3064
				RotationY = 3,
3065
				RotationZ = 0,
3066
				Material = "Neon",
3067
				Color = C3(0, 0, 0),
3068
				SoundID = nil,
3069
				SoundPitch = nil,
3070
				SoundVolume = nil
3071
			})
3072
			WACKYEFFECT({
3073
				EffectType = "Round Slash",
3074
				Size = VT(3, 0, 3) / 13,
3075
				Size2 = (VT(3, 0, 3) + VT(i, 0, i)) / 5,
3076
				Transparency = 0,
3077
				Transparency2 = 1,
3078
				CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
3079
				MoveToPos = nil,
3080
				RotationX = 0,
3081
				RotationY = 0,
3082
				RotationZ = 0,
3083
				Material = "Neon",
3084
			    Color = C3(1, 0, 0),
3085
				SoundID = nil,
3086
				SoundPitch = nil,
3087
				SoundVolume = nil
3088
			})
3089
			WACKYEFFECT({
3090
				Time = 35,
3091
				EffectType = "Sphere",
3092
				Size = VT(22, 22, 22),
3093
				Size2 = VT(45, 45, 45) + VT(i * 5, i * 5, i * 5),
3094
				Transparency = 0,
3095
				Transparency2 = 1,
3096
				CFrame = CF(HITPOS),
3097
				MoveToPos = nil,
3098
				RotationX = 0,
3099
				RotationY = 0,
3100
				RotationZ = 0,
3101
				Material = "Neon",
3102
				Color = C3(0, 0, 0),
3103
				SoundID = 459523898,
3104
				SoundPitch = MRANDOM(9, 12) / 10,
3105
				SoundVolume = 10
3106
			})
3107
		end
3108
		SHAKECAM(HITPOS, 100, 8, 15)
3109
		ApplyAoE(HITPOS, 50)
3110
		for i = 1, 25 do
3111
			Swait()
3112
			BEAM.Size = BEAM.Size + VT(0.5, 0, 0.5)
3113
			BEAM.Transparency = BEAM.Transparency + 0.04
3114
		end
3115
		BEAM:remove()
3116
	end
3117
	wait(0.2)
3118
	DELET()
3119
end
3120
3121
function Earthquake()
3122
	ATTACK = true
3123
	Rooted = true
3124
	local GYRO = IT("BodyGyro", RootPart)
3125
	GYRO.D = 20
3126
	GYRO.P = 4000
3127
	GYRO.MaxTorque = VT(0, 40000, 0)
3128
	local RING, MESH, DELET = MakeRing()
3129
	local HITFLOOR, HITPOS = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
3130
	RING.CFrame = CF(HITPOS)
3131
	for i = 0, 0.6, 0.1 / Animation_Speed do
3132
		GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
3133
		Swait()
3134
		MESH.Scale = MESH.Scale + VT(53, 0, 53)
3135
		RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
3136
		WACKYEFFECT({TIME = 15, EffectType = "Block", Size = VT(3,3,3)/3, Size2 = VT(1,1,1)/3, Transparency = 0.5, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3137
		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)
3138
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
3139
	end
3140
	local BLASTS = {468991944, 468991990}
3141
	coroutine.resume(coroutine.create(function()
3142
		local CFRAME = RootPart.CFrame
3143
		for i = 1, 100 do
3144
			CFRAME = CFRAME * CF(0, 0, -35)
3145
			do
3146
				local HITFLOOR, HITPOS = Raycast(CFRAME.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
3147
				if HITFLOOR then
3148
					Swait()
3149
					do
3150
						local OFFSET = CFRAME * CF(MRANDOM(-25, 25), 0, 0)
3151
						coroutine.resume(coroutine.create(function()
3152
							local RING, MESH, DELET = MakeRing()
3153
							RING.CFrame = CF(OFFSET.p.X, HITPOS.Y, OFFSET.p.Z)
3154
							for i = 1, 25 do
3155
								Swait()
3156
								MESH.Scale = MESH.Scale + VT(42, 0, 42)
3157
								RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
3158
							end
3159
							ApplyAoE(RING.Position, 65)
3160
							SHAKECAM(RING.Position, 80, 15, 30)
3161
							local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
3162
							WACKYEFFECT({
3163
								Time = 25,
3164
								EffectType = "Sphere",
3165
								Size = VT(22, 22, 22),
3166
								Size2 = VT(85, 85, 85),
3167
								Transparency = 0,
3168
								Transparency2 = 1,
3169
								CFrame = CF(RING.Position),
3170
								MoveToPos = nil,
3171
								RotationX = 0,
3172
								RotationY = 0,
3173
								RotationZ = 0,
3174
								Material = "Neon",
3175
								Color = C3(0, 0, 0),
3176
								SoundID = BLASTS[MRANDOM(1, #BLASTS)],
3177
								SoundPitch = MRANDOM(9, 12) / 10,
3178
								SoundVolume = 10
3179
							})
3180
							for e = 1, 3 do
3181
								WACKYEFFECT({
3182
									EffectType = "Wave",
3183
									Size = VT(25, 0, 25),
3184
									Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
3185
									Transparency = 0,
3186
									Transparency2 = 1,
3187
									CFrame = CF(RING.Position) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
3188
									MoveToPos = nil,
3189
									RotationX = 0,
3190
									RotationY = 3,
3191
									RotationZ = 0,
3192
									Material = "Neon",
3193
									Color = C3(0, 0, 0),
3194
									SoundID = nil,
3195
									SoundPitch = nil,
3196
									SoundVolume = nil
3197
								})
3198
								WACKYEFFECT({
3199
									Time = 35,
3200
									EffectType = "Sphere",
3201
									Size = VT(22, 45, 22),
3202
									Size2 = VT(25, 45 + e * 75, 25),
3203
									Transparency = 0,
3204
									Transparency2 = 1,
3205
									CFrame = CF(RING.Position) * TURN,
3206
									MoveToPos = nil,
3207
									RotationX = 0,
3208
									RotationY = 0,
3209
									RotationZ = 0,
3210
									Material = "Neon",
3211
									Color = C3(0, 0, 0),
3212
									SoundID = nil,
3213
									SoundPitch = MRANDOM(9, 12) / 10,
3214
									SoundVolume = 10
3215
								})
3216
							end
3217
							wait(0.3)
3218
							DELET()
3219
						end))
3220
					end
3221
				end
3222
			end
3223
		end
3224
	end))
3225
	Rooted = false
3226
	DELET()
3227
	GYRO:remove()
3228
	ATTACK = false
3229
	Rooted = false
3230
end
3231
3232
function SpawnSmite(POS)
3233
	local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
3234
	local EMITPOS = HITPOS
3235
	if HITFLOOR ~= nil then
3236
		if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
3237
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
3238
			EMITPOS = HITPOS
3239
		elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
3240
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
3241
			EMITPOS = HITPOS
3242
		end
3243
	end
3244
	if HITFLOOR ~= nil then
3245
		ApplyAoE(EMITPOS,10)
3246
		WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
3247
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3248
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3249
		for i = 1, 5 do
3250
			local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
3251
			WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
3252
		end
3253
	end
3254
end
3255
3256
function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
3257
	coroutine.resume(coroutine.create(function()
3258
		local METEOR = IT("Model",Effects)
3259
		METEOR.Name = "Meteorite"
3260
		local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
3261
		METEOR.PrimaryPart = CENTER
3262
		local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
3263
		PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
3264
		for i = 1, 15 do
3265
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really red", "Fire", VT(5.1,1,5.1)*SIZE)
3266
			FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
3267
		end
3268
		if ISDEBREE ~= true then
3269
			METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
3270
		else
3271
			METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
3272
		end
3273
		local IMPACT = false
3274
		CreateSound(463593339, CENTER, 10, 0.6)
3275
		if SIZE >= 3.5 then
3276
			for i = 1, MRANDOM(3,7) do
3277
				SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
3278
			end
3279
		end
3280
		for i = 1, 200 do
3281
			Swait()
3282
			local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
3283
			if HITFLOOR == nil then
3284
				local ORI = CENTER.Orientation
3285
				METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
3286
			else
3287
				if HITFLOOR.Anchored == true then
3288
					CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
3289
					CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
3290
				end
3291
				IMPACT = true
3292
				break
3293
			end
3294
		end
3295
		if IMPACT == true then
3296
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
3297
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
3298
			WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
3299
			ApplyAoE(CENTER.Position,30*SIZE)
3300
		end
3301
		METEOR:remove()
3302
	end))
3303
end
3304
3305
function Smite2()
3306
	ATTACK = true
3307
	Rooted = false
3308
	CreateSound(1368573150, RightArm, 3, 0.8)
3309
	CreateSound(649634100, Torso, 10, 0.8)
3310
	for i=0, 1.2, 0.1 / Animation_Speed do
3311
		Swait()
3312
		WACKYEFFECT({TIME = 15, EffectType = "Block", Size = VT(3,3,3)/2, Size2 = VT(1,1,1)/3, Transparency = 0.5, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3313
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5 + ((0.1) - 0.1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
3314
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
3315
	end
3316
	local POS = Mouse.Hit.p
3317
	CreateSound(463593339, Effects, 3, 1)
3318
	coroutine.resume(coroutine.create(function()
3319
		for i = 1, 35 do
3320
			wait(MRANDOM(35,45)/100)
3321
			SpawnMeteor(CF(POS) * ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(0,1500)/10).p,MRANDOM(10,25)/10)
3322
		end
3323
	end))
3324
	ATTACK = false
3325
	Rooted = false
3326
end
3327
3328
function Taunt()
3329
	ATTACK = true
3330
	Rooted = false
3331
	TAUNT = true
3332
	for i=0, 0.1, 0.1 / Animation_Speed do
3333
		Swait()
3334
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3335
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
3336
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
3337
	end
3338
	for i=0, 3, 0.1 / Animation_Speed do
3339
		Swait()
3340
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3341
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3342
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(15)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3343
	end
3344
	CreateSound(363808674, Torso, 10, 1.3)
3345
	for i=0, 1, 0.1 / Animation_Speed do
3346
		Swait()
3347
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(120)), 3 / Animation_Speed)
3348
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 3/ Animation_Speed)
3349
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(230), RAD(0), RAD(35)) * LEFTSHOULDERC0, 3 / Animation_Speed)
3350
	end
3351
	WACKYEFFECT({EffectType = "Block", Size = VT(6,6,6), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3352
	CreateSound(649634100, Torso, 10, 0.8)
3353
	for i=0, 0.01, 0.1 / Animation_Speed do
3354
		Swait()
3355
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
3356
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
3357
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, 0.5) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 3 / Animation_Speed)
3358
	end
3359
	ATTACK = false
3360
	Rooted = false
3361
	TAUNT = false
3362
end
3363
3364
function Taunt2()
3365
	ATTACK = true
3366
	Rooted = true
3367
	local TAUNT = CreateSound(159882303,Torso,10,1,false)
3368
	coroutine.resume(coroutine.create(function()
3369
		repeat
3370
			Swait()
3371
			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(0)), 0.15 / Animation_Speed)
3372
			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)
3373
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15*SIZE, 0.75*SIZE, -0.5*SIZE) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3374
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15*SIZE, 0.25*SIZE, -0.5*SIZE) * ANGLES(RAD(90), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3375
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3376
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3377
		until ATTACK == false
3378
	end))
3379
	repeat wait() until TAUNT.Playing == false
3380
	ATTACK = false
3381
	Rooted = false
3382
end
3383
3384
function Prison_Key()
3385
	if Mouse.Target ~= nil then
3386
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3387
			local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
3388
			local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
3389
			local GYRO = IT("BodyGyro",RootPart)
3390
			GYRO.D = 750
3391
			GYRO.P = 20000
3392
			GYRO.MaxTorque = VT(0,40000000,0)
3393
			local grav = Instance.new("BodyPosition",TORSO)
3394
			grav.D = 15
3395
			grav.P = 20000
3396
			grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
3397
			grav.position = TORSO.Position
3398
			local GYRO2 = IT("BodyGyro",TORSO)
3399
			GYRO2.D = 750
3400
			GYRO2.P = 20000
3401
			GYRO2.MaxTorque = VT(0,40000000,0)
3402
			GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
3403
			grav.Name = "Jail"
3404
			local LOCKPARTS = {}
3405
			ATTACK = true
3406
			Rooted = false
3407
			local LOCK = IT("Model",Effects)
3408
			LOCK.Name = "Lock"
3409
			local LOCK2 = IT("Model",LOCK)
3410
			LOCK2.Name = "Metal"
3411
			--CREATE LOCK--
3412
				local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Really black", "Keylock", VT(3, 2.5, 1))
3413
				LOCK.PrimaryPart = BASE
3414
				BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
3415
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Really black", "Keylock", VT(3, 1, 3))
3416
				PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
3417
				MakeForm(PRT,"Cyl")
3418
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
3419
				PRT.Color = C3(0.58,0.58,0.58)
3420
				PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
3421
				MakeForm(PRT,"Cyl")
3422
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
3423
				PRT.Color = C3(0.58,0.58,0.58)
3424
				PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
3425
				for i = 1, 45 do
3426
					local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
3427
					PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
3428
				end
3429
				local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
3430
				PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
3431
				LOCK2.PrimaryPart = PRT
3432
			---------------
3433
			local CHILDREN = LOCK:GetDescendants()
3434
			for index, CHILD in pairs(CHILDREN) do
3435
				if CHILD:IsA("BasePart") then
3436
					CHILD.Transparency = 1
3437
				end
3438
			end
3439
			for i = 1, 75 do
3440
				LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
3441
				Swait()
3442
				GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
3443
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
3444
				local CHILDREN = LOCK:GetDescendants()
3445
				for index, CHILD in pairs(CHILDREN) do
3446
					if CHILD:IsA("BasePart") then
3447
						CHILD.Transparency = CHILD.Transparency - 1/75
3448
					end
3449
				end
3450
			end
3451
			HUM.DisplayDistanceType = "None"
3452
			local KEY = IT("Model",Effects)
3453
			KEY.Name = "Key"
3454
			--CREATE KEY--
3455
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Black", "KeyBase", VT(0.1, 1, 0.1),false)
3456
				KEY.PrimaryPart = KBASE
3457
				KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
3458
				local WLD = weldBetween(RightArm,KBASE)
3459
				for i = 1, 45 do
3460
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Black", "Key", VT(0.1, 0.1, 0.1),false)
3461
					PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
3462
					weldBetween(KBASE,PRT)
3463
				end
3464
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Black", "Key", VT(0.3, 0.1, 0.1),false)
3465
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
3466
				weldBetween(KBASE,PRT)
3467
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Black", "Key", VT(0.3, 0.1, 0.1),false)
3468
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
3469
				weldBetween(KBASE,PRT)
3470
			--------------
3471
			Rooted = true
3472
			Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
3473
			coroutine.resume(coroutine.create(function()
3474
				for i = 1, 10 do
3475
					Swait()
3476
					GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
3477
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
3478
				end
3479
				CreateSound(1149318312,BASE,5,1,false)
3480
				CreateSound(160772554,BASE,3,1,false)
3481
				LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
3482
				for i = 1, 4 do
3483
					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})
3484
				end
3485
				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})
3486
				wait(1)
3487
				TORSO.Parent.Parent = LOCK
3488
				for i = 1, 75 do
3489
					Swait()
3490
					local CHILDREN = KEY:GetDescendants()
3491
					for index, CHILD in pairs(CHILDREN) do
3492
						if CHILD:IsA("BasePart") then
3493
							CHILD.Transparency = i/25
3494
						end
3495
					end
3496
					local CHILDREN = LOCK:GetDescendants()
3497
					for index, CHILD in pairs(CHILDREN) do
3498
						if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
3499
							CHILD.Transparency = CHILD.Transparency + 1/75
3500
						elseif CHILD.ClassName == "Decal" then
3501
							CHILD.Transparency = CHILD.Transparency + 1/75
3502
						end
3503
					end
3504
				end
3505
				TORSO.Parent:ClearAllChildren()
3506
				KEY:remove()
3507
				LOCK:remove()
3508
			end))
3509
			Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
3510
			GYRO:remove()
3511
			ATTACK = false
3512
			Rooted = false
3513
		end
3514
	end
3515
end
3516
3517
function Endless_Pain()
3518
	local HITBODIES = {}
3519
	local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
3520
	if HITFLOOR ~= nil then
3521
		CreateSound("463598785", RootPart, 10, 0.8)
3522
		ATTACK = true
3523
		Rooted = true
3524
		VALUE1 = true
3525
		for i = 1, 500 do
3526
			Swait()
3527
			AddChildrenToTable(HITPOS, workspace, i / 3, HITBODIES)
3528
			Slice("Round", 0.5 + i / 50, 35, CF(HITPOS + VT(0*SIZE, 0.1*SIZE, 0*SIZE), HITPOS + VT(0, 0.1, 0) + NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Mid grey", VT(0.001, 0, 0.001))
3529
			Slice("Round", 0.5 + i / 50, 45, CF(HITPOS + VT(0*SIZE, 0.1*SIZE, 0*SIZE), HITPOS + VT(0, 0.1, 0) + NORMAL) * ANGLES(RAD(90), RAD(MRANDOM(-180, 180)), RAD(0)), "Mid grey", VT(0, 0, 0))
3530
			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)
3531
			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)
3532
			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)
3533
			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)
3534
			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)
3535
			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)
3536
			for e = 1, #HITBODIES do
3537
				if HITBODIES[e] ~= nil then
3538
					local BOD = HITBODIES[e]
3539
					local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
3540
					if TORS and TORS:FindFirstChild("BV") == nil then
3541
						local bv = Instance.new("BodyVelocity")
3542
						bv.Name = "BV"
3543
						bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
3544
						bv.velocity = CF(TORS.Position, TORS.Position + VT(0, 1, 0)).lookVector * 20
3545
						bv.Parent = TORS
3546
						Debris:AddItem(bv, 0.1)
3547
					end
3548
				end
3549
			end
3550
		end
3551
		coroutine.resume(coroutine.create(function()
3552
			for e = 1, #HITBODIES do
3553
				Swait()
3554
				if HITBODIES[e] ~= nil then
3555
					local BOD = HITBODIES[e]
3556
					for i = 1, #HITBODIES do
3557
						if HITBODIES[i] == BOD and i ~= e then
3558
							table.remove(HITBODIES, i)
3559
						end
3560
					end
3561
					local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
3562
					if TORS then
3563
						TORS.Anchored = false
3564
						CreateSound("92597369", TORS, 10, 0.8)
3565
						Slice("Thin", 1, 35, CF(TORS.Position, HITPOS) * ANGLES(RAD(0), RAD(-90), RAD(0)), "Really red", VT(0.01, 0, 0.01))
3566
						BOD:BreakJoints()
3567
						for _, c in pairs(BOD:GetChildren()) do
3568
							if c.ClassName == "Part" or c.ClassName == "MeshPart" then
3569
								local bv = Instance.new("BodyVelocity")
3570
								bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
3571
								bv.velocity = CF(HITPOS, c.Position).lookVector * 250
3572
								bv.Parent = c
3573
								Debris:AddItem(bv, 0.2)
3574
							end
3575
						end
3576
					end
3577
				end
3578
			end
3579
		end))
3580
		VALUE1 = false
3581
		ATTACK = false
3582
		Rooted = false
3583
	end
3584
end
3585
3586
function Inferno_Ring()
3587
	ATTACK = true
3588
	Rooted = false
3589
	local GYRO = IT("BodyGyro",RootPart)
3590
	GYRO.D = 750
3591
	GYRO.P = 20000
3592
	GYRO.MaxTorque = VT(0,40000000,0)
3593
	local FIRE = IT("Model",Effects)
3594
	FIRE.Name = "Fire"
3595
	local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "Center", VT(0,0,0))
3596
	FIRE.PrimaryPart = MAIN
3597
	local FIRES = {}
3598
	for i = 1, 45 do
3599
		local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "RingPart", VT(3,3,3))
3600
		PRT.CFrame = MAIN.CFrame*ANGLES(RAD(0),RAD((360/45)*i),RAD(0))*CF(0,0,20)
3601
		local F = Fire(PRT)
3602
		table.insert(FIRES,F)
3603
	end
3604
	repeat
3605
		FIRE:SetPrimaryPartCFrame(CF(Mouse.Hit.p))
3606
		Pose("Cast1",1.5,0.01,false,GYRO)
3607
	until HOLD == true
3608
	coroutine.resume(coroutine.create(function()
3609
		for i = 1, 4 do
3610
			ApplyAoE(MAIN.Position,21,-15,true)
3611
			CreateSound(463598785,MAIN,3,1,false)
3612
			for E = 1, #FIRES do
3613
				if FIRES[E] ~= nil then
3614
					FIRES[E].Acceleration = VT(0,300,0)
3615
					FIRES[E].Lifetime=NumberRange.new(0.35,1.5)
3616
				end
3617
			end
3618
			wait(0.3)
3619
		end
3620
		for E = 1, #FIRES do
3621
			if FIRES[E] ~= nil then
3622
				FIRES[E].Enabled = false
3623
			end
3624
		end
3625
		Debris:AddItem(FIRE,5)
3626
	end))
3627
	CreateSound(215395388,RightArm,3,2,false)
3628
	Pose("RightArmUp",1.5,0.5,true)
3629
	GYRO:remove()
3630
	ATTACK = false
3631
	Rooted = false
3632
end
3633
3634
function TakeOnMe()
3635
	Speed = 5
3636
	local MEME = CreateSound(1554763595, Effects, 2, 1, false)
3637
	ATTACK = true
3638
	Rooted = false
3639
	local DANCE = true
3640
	local KEY = Mouse.KeyDown:connect(function(NEWKEY)
3641
		if NEWKEY == "]" then
3642
			DANCE = false
3643
		end
3644
	end)
3645
	PLAYSONG = false
3646
	while true do
3647
		for i = 1, 15 do
3648
			Swait()
3649
			MEME.Parent = Effects
3650
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 1 + 0.25*SIZE+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3651
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((0) - 0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3652
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55*SIZE, 0.75*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3653
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55*SIZE, 0.75*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3654
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.6*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3655
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, 0*SIZE, -1*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3656
		end
3657
		if DANCE == false then
3658
			break
3659
		end
3660
		for i = 1, 15 do
3661
			Swait()
3662
			MEME.Parent = Effects
3663
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 1 + -0.25*SIZE+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3664
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((0) - 0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3665
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55*SIZE, 0.75*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3666
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55*SIZE, 0.75*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(10)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3667
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, 0*SIZE, -1*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3668
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.6*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3669
		end
3670
	end
3671
	PLAYSONG = true
3672
	KEY:Disconnect()
3673
	MEME:remove()
3674
	Speed = 25
3675
	ATTACK = false
3676
	Rooted = false
3677
end
3678
3679
function RavagingOverthrower()
3680
    ATTACK = true
3681
    Rooted = true
3682
for i=0, 1, 0.1 / Animation_Speed do
3683
        Swait()
3684
        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)
3685
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1.4 * SIZE) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3686
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * SIZE, 0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(100), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3687
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * SIZE, 0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(30), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3688
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * SIZE, -1 * SIZE, -0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3689
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * SIZE, -1 * SIZE, -0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3690
    end
3691
    CreateSound("348663022", Torso, 5, 1)
3692
    local StartPos = RootPart.CFrame * CF(0,15,0).p
3693
    for i = 1, 5 do
3694
        MagicSphere2(25,25,CF(StartPos),"Really black")
3695
        Swait(15)
3696
    end
3697
    local soundeffect = IT("Sound",Torso)
3698
    soundeffect.SoundId = "rbxassetid://487186990"
3699
    soundeffect.Looped = true
3700
    soundeffect.Volume = 3
3701
    soundeffect.Playing = true
3702
    repeat
3703
        turnto(Mouse.Hit.p)
3704
        MagicSphere2(25,25,CF(StartPos),"White")
3705
        MagicSphere(25/10,25,CF(StartPos),"White")
3706
        local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Mouse.Hit.p, 750, Character, false)
3707
        local distance = (StartPos - RayPos).magnitude
3708
        local RayBeam = IT("Part",Effects)
3709
        RayBeam.Material = "Neon"
3710
        RayBeam.Anchored = true
3711
        RayBeam.BrickColor = BRICKC"Lavender"
3712
        local mesh = IT("SpecialMesh",RayBeam)
3713
        mesh.MeshType = "Cylinder"
3714
        RayBeam.Size = Vector3.new(distance+10, 5, 5)
3715
        RayBeam.CFrame = CFrame.new(StartPos, RayPos) * CFrame.new(0, 0, -distance/2) * ANGLES(RAD(0),RAD(90),RAD(0))
3716
        MagicSphere(15,5,CF(RayPos),"Lavender")
3717
        killnearest(RayPos,15,100)
3718
        for i = 1, 3 do
3719
            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")
3720
        end
3721
        Swait()
3722
        if KEYHOLD == false then
3723
            coroutine.resume(coroutine.create(function()
3724
                for i = 1, 5 do
3725
                    RayBeam.Transparency = RayBeam.Transparency + 1/5
3726
                    Swait()
3727
                end
3728
                RayBeam:remove()
3729
            end))
3730
        else
3731
            RayBeam:remove()
3732
        end
3733
    until KEYHOLD == false
3734
    soundeffect:remove()
3735
    ATTACK = false
3736
    Rooted = false
3737
end
3738
3739
function Wall()
3740
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
3741
	if HITFLOOR ~= nil then
3742
		if HITFLOOR.Anchored == true then
3743
			local WALL = HITFLOOR:Clone()
3744
			WALL.Size = VT(45,45,5)
3745
			WALL.Parent = Effects
3746
			WALL.Name = "Wall"
3747
			WALL.CFrame = RootPart.CFrame*CF(0,-65/2.1,-5)*ANGLES(RAD(-15),RAD(0),RAD(0))
3748
			CreateSound(130972023,WALL,5,0.8,false)
3749
			ATTACK = true
3750
			Rooted = true
3751
			local HIT = WALL.Touched:Connect(function(hit)
3752
				if hit.Parent ~= Character then
3753
					hit:BreakJoints()
3754
				end
3755
			end)
3756
			coroutine.resume(coroutine.create(function()
3757
				WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
3758
				for i = 1, 90 do
3759
					Swait()
3760
					WALL.CFrame = WALL.CFrame*CF(0,0.5,0)
3761
				end
3762
				HIT:disconnect()
3763
				wait(5)
3764
				for i = 1, 46 do
3765
					Swait()
3766
					WALL.CFrame = WALL.CFrame*CF(0,-1,0)
3767
				end
3768
				WALL:remove()
3769
			end))
3770
			Pose("RightArmUp2",1.5,1.2,true)
3771
			ATTACK = false
3772
			Rooted = false
3773
		end
3774
	end
3775
end
3776
3777
function Petrify(Foe)
3778
	local STONEMODEL = IT("Model", Effects)
3779
	local CHILDREN = Foe:GetDescendants()
3780
	for index, CHILD in pairs(CHILDREN) do
3781
		if CHILD:IsA("BasePart") and CHILD.Parent.ClassName ~= "Folder" then
3782
			CHILD.Parent = STONEMODEL
3783
			CHILD.Material = "Slate"
3784
			CHILD.Color = C3(0.5, 0.5, 0.5)
3785
			if CHILD:FindFirstChildOfClass("SpecialMesh") then
3786
				local mesh = CHILD:FindFirstChildOfClass("SpecialMesh")
3787
				mesh.TextureId = ""
3788
			end
3789
			if CHILD:FindFirstChildOfClass("Decal") then
3790
				local mesh = CHILD:FindFirstChildOfClass("Decal")
3791
				mesh:remove()
3792
			end
3793
			if CHILD.ClassName == "MeshPart" then
3794
				CHILD.TextureID = ""
3795
			end
3796
			if CHILD.ClassName == "UnionOperation" then
3797
				CHILD.UsePartColor = true
3798
			end
3799
			CHILD.CanCollide = true
3800
		end
3801
	end
3802
	Debris:AddItem(STONEMODEL, 5)
3803
end
3804
3805
function Stonewill()
3806
	ATTACK = true
3807
	Rooted = true
3808
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
3809
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
3810
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
3811
		if TORSO then
3812
			local GYRO = IT("BodyGyro", RootPart)
3813
			GYRO.D = 750
3814
			GYRO.P = 2000
3815
			GYRO.MaxTorque = VT(0, 40000, 0)
3816
			CreateSound("907330103", Torso, 5, 1.1)
3817
			for i = 0, 1.6, 0.1 / Animation_Speed do
3818
				Swait()
3819
				WACKYEFFECT({
3820
					Time = 5,
3821
					EffectType = "Round Slash",
3822
					Size = VT(0, 0, 0),
3823
					Size2 = VT(0.01, 0, 0.01),
3824
					Transparency = 0.5,
3825
					Transparency2 = 1,
3826
					CFrame = CF(Head.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
3827
					MoveToPos = nil,
3828
					RotationX = MRANDOM(-50, 50) / 10,
3829
					RotationY = MRANDOM(-50, 50) / 10,
3830
					RotationZ = MRANDOM(-50, 50) / 10,
3831
					Material = "Neon",
3832
					Color = C3(1, 0, 0),
3833
					SoundID = nil,
3834
					SoundPitch = nil,
3835
					SoundVolume = nil
3836
				})
3837
				GYRO.cframe = CF(RootPart.Position, TORSO.Position)
3838
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.2 / Animation_Speed)
3839
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.2 / Animation_Speed)
3840
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 0.8 + 0.025 * COS(SINE / 22), -1) * ANGLES(RAD(120), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-45)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
3841
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 22), -1) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
3842
				if ANIM == "Idle" then
3843
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
3844
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
3845
				elseif ANIM == "Walk" then
3846
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
3847
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
3848
				elseif ANIM == "Jump" or ANIM == "Fall" then
3849
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3850
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
3851
				end
3852
			end
3853
			GYRO:remove()
3854
			for i = 1, 15 do
3855
				WACKYEFFECT({
3856
					Time = MRANDOM(15, 85),
3857
					EffectType = "Round Slash",
3858
					Size = VT(0, 0, 0),
3859
					Size2 = VT(0.3, 0, 0.3),
3860
					Transparency = 0.5,
3861
					Transparency2 = 1,
3862
					CFrame = CF(TORSO.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
3863
					MoveToPos = nil,
3864
					RotationX = MRANDOM(-50, 50) / 10,
3865
					RotationY = MRANDOM(-50, 50) / 10,
3866
					RotationZ = MRANDOM(-50, 50) / 10,
3867
					Material = "Neon",
3868
					Color = C3(1, 0, 0),
3869
					SoundID = nil,
3870
					SoundPitch = nil,
3871
					SoundVolume = nil
3872
				})
3873
			end
3874
			local bv = Instance.new("BodyVelocity")
3875
			bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
3876
			bv.velocity = CF(Torso.Position, TORSO.Position).lookVector * 5
3877
			bv.Parent = TORSO
3878
			Debris:AddItem(bv, 0.05)
3879
			CreateSound("1222405264", TORSO, 10, 0.9)
3880
			Petrify(HUM.Parent)
3881
			for i = 0, 0.5, 0.1 / Animation_Speed do
3882
				Swait()
3883
				WACKYEFFECT({
3884
					Time = 5,
3885
					EffectType = "Round Slash",
3886
					Size = VT(0, 0, 0),
3887
					Size2 = VT(0.01, 0, 0.01),
3888
					Transparency = 0.5,
3889
					Transparency2 = 1,
3890
					CFrame = CF(Head.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
3891
					MoveToPos = nil,
3892
					RotationX = MRANDOM(-50, 50) / 10,
3893
					RotationY = MRANDOM(-50, 50) / 10,
3894
					RotationZ = MRANDOM(-50, 50) / 10,
3895
					Material = "Neon",
3896
					Color = C3(1, 0, 0),
3897
					SoundID = nil,
3898
					SoundPitch = nil,
3899
					SoundVolume = nil
3900
				})
3901
				GYRO.cframe = CF(RootPart.Position, TORSO.Position)
3902
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 2 / Animation_Speed)
3903
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 2 / Animation_Speed)
3904
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.8, 0.8 + 0.025 * COS(SINE / 22), 0) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(90)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
3905
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 22), -1) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
3906
				if ANIM == "Idle" then
3907
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
3908
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
3909
				elseif ANIM == "Walk" then
3910
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
3911
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
3912
				elseif ANIM == "Jump" or ANIM == "Fall" then
3913
					RightHip.C0 = Clerp(RightHip.C0, CF(1.5, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3914
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.5, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
3915
				end
3916
			end
3917
		end
3918
	end
3919
	ATTACK = false
3920
	Rooted = false
3921
end
3922
3923
--//=================================\\
3924
--||	  ASSIGN THINGS TO KEYS
3925
--\\=================================//
3926
3927
function MouseDown(Mouse)
3928
	HOLD = true
3929
	if ATTACK == false then
3930
	end
3931
end
3932
3933
function MouseUp(Mouse)
3934
HOLD = false
3935
end
3936
3937
function KeyDown(Key)
3938
	KEYHOLD = true
3939
	if Key == "z" and ATTACK == false then
3940
		if MODE == "Superior" then
3941
			TimeSweep()
3942
		elseif MODE == "JusticeHorn" then
3943
			MagicMissiles()
3944
		elseif MODE == "Maniac" then
3945
			Wall()
3946
		end
3947
	end
3948
	
3949
	if Key == "x" and ATTACK == false then
3950
		if MODE == "Superior" then
3951
			Smite2()
3952
		elseif MODE == "JusticeHorn" then
3953
			PandorasBox()
3954
		elseif MODE == "Maniac" then
3955
			Inferno_Ring()
3956
		end
3957
	end
3958
	
3959
	if Key == "c" and ATTACK == false then
3960
		if MODE == "Superior" then
3961
			Smite()
3962
		elseif MODE == "JusticeHorn" then
3963
			ChainPunch()
3964
		elseif MODE == "Maniac" then
3965
			RavagingOverthrower()
3966
		end
3967
	end
3968
3969
	if Key == "v" and ATTACK == false then
3970
		if MODE == "Superior" then
3971
			Earthquake()
3972
		elseif MODE == "JusticeHorn" then
3973
			WarpMeteor()
3974
		elseif MODE == "Maniac" then
3975
			Endless_Pain()
3976
		end
3977
	end
3978
	
3979
	if Key == "b" and ATTACK == false then
3980
		if MODE == "Superior" then
3981
			Prison_Key()
3982
		elseif MODE == "JusticeHorn" then
3983
			TimesUp()
3984
		elseif MODE == "Maniac" then
3985
			Stonewill()
3986
		end
3987
	end
3988
	
3989
3990
	if Key == "p" and ATTACK == false then
3991
		TakeOnMe()
3992
	end
3993
3994
	if Key == "1" and ATTACK == false then
3995
		Taunt()
3996
	end
3997
3998
	if Key == "2" and ATTACK == false then
3999
		Taunt2()
4000
	end
4001
	
4002
	if Key == "f" and ATTACK == false then
4003
		Switch()	
4004
	end
4005
	
4006
	if Key == "e" and ATTACK == false then
4007
		Switch2()
4008
	end
4009
	
4010
	if Key == "q" and ATTACK == false then
4011
		Switch3()
4012
	end
4013
end
4014
4015
function KeyUp(Key)
4016
	KEYHOLD = false
4017
end
4018
4019
	Mouse.Button1Down:connect(function(NEWKEY)
4020
		MouseDown(NEWKEY)
4021
	end)
4022
	Mouse.Button1Up:connect(function(NEWKEY)
4023
		MouseUp(NEWKEY)
4024
	end)
4025
	Mouse.KeyDown:connect(function(NEWKEY)
4026
		KeyDown(NEWKEY)
4027
	end)
4028
	Mouse.KeyUp:connect(function(NEWKEY)
4029
		KeyUp(NEWKEY)
4030
	end)
4031
4032
--//=================================\\
4033
--\\=================================//
4034
4035
4036
function unanchor()
4037
	if UNANCHOR == true then
4038
		RootPart.Anchored = false
4039
	end
4040
	g = Character:GetChildren()
4041
	for i = 1, #g do
4042
		if g[i].ClassName == "Part" and g[i] ~= RootPart then
4043
			g[i].Anchored = false
4044
		end
4045
	end
4046
	g = Weapon:GetChildren()
4047
	for i = 1, #g do
4048
		if g[i].ClassName == "Part" then
4049
			g[i].Anchored = false
4050
		end
4051
	end
4052
end
4053
4054
4055
--//=================================\\
4056
--||	WRAP THE WHOLE SCRIPT UP
4057
--\\=================================//
4058
4059
Humanoid.Changed:connect(function(Jump)
4060
	if Jump == "Jump" and (Disable_Jump == true) then
4061
		Humanoid.Jump = false
4062
	end
4063
end)
4064
4065
while true do
4066
	Swait()
4067
	script.Parent = WEAPONGUI
4068
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
4069
	    v:Stop();
4070
	end
4071
	ANIMATE.Parent = nil
4072
	SINE = SINE + CHANGE*1.5
4073
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
4074
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
4075
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
4076
	local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
4077
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
4078
		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)
4079
		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)
4080
		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)
4081
		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)
4082
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
4083
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
4084
		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)
4085
		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)
4086
		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)
4087
	end
4088
	if TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
4089
		ANIM = "Fall"
4090
		if ATTACK == false then
4091
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
4092
			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)
4093
			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)
4094
			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)
4095
			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)
4096
			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)
4097
		end
4098
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
4099
		ANIM = "Idle"
4100
		if ATTACK == false then
4101
			if MODE == "Main" then
4102
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4103
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.5 + ((0.1) - 0.1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4104
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.95, 0.75, 0) * ANGLES(RAD(0), RAD(-15), RAD(5 + 1 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
4105
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.95, 0.75, 0) * ANGLES(RAD(0), RAD(15), RAD(-5 - 1 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
4106
            RightHip.C0 = Clerp(RightHip.C0, CF(1.45, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4107
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.45, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(-74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4108
			elseif MODE == "Superior" then
4109
            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)
4110
            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)
4111
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 1*SIZE, -0.3*SIZE) * ANGLES(RAD(0.98), RAD(-119.59 + 2.5 * SIN(SINE / 25)), RAD(-175.39 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
4112
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.35*SIZE, 0.3*SIZE) * ANGLES(RAD(9.71), RAD(3.14 - -2.5 * SIN(SINE / 12)), RAD(0.2 - -2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
4113
            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)
4114
            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)
4115
			elseif MODE == "JusticeHorn" then
4116
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
4117
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0.4*SIZE + ((0.1) - 0.1)) * ANGLES(RAD(-5 - 2.5 * COS(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
4118
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.9*SIZE, 0.5*SIZE + 0.05*SIZE * SIN(SINE / 12), -0.5) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
4119
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.9*SIZE, 0.25*SIZE + 0.05*SIZE * SIN(SINE / 12), -0.35) * ANGLES(RAD(70), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
4120
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
4121
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
4122
			elseif MODE == "Maniac" then
4123
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
4124
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), 1 / Animation_Speed)
4125
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(45), RAD(0), RAD(52 - 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-70), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
4126
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-42 + 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(70), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
4127
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1.02*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(20), RAD(55), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
4128
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(10), RAD(-74), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
4129
		   end
4130
		end
4131
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
4132
		ANIM = "Walk"
4133
		if ATTACK == false then
4134
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.005 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
4135
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
4136
            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)
4137
            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)
4138
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE - 0.05*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4139
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.8*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4140
		end
4141
	end
4142
	unanchor()
4143
	Humanoid.MaxHealth = "inf"
4144
	Humanoid.Health = "inf"
4145
	if Rooted == false then
4146
		Disable_Jump = false
4147
		Humanoid.WalkSpeed = Speed
4148
	elseif Rooted == true then
4149
		Disable_Jump = true
4150
		Humanoid.WalkSpeed = 0
4151
	end
4152
	for _, c in pairs(Character:GetChildren()) do
4153
		if c.ClassName == "Part" and c.Name ~= "Detail" then
4154
			c.Material = "Fabric"
4155
			if c:FindFirstChildOfClass("ParticleEmitter") then
4156
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
4157
			end
4158
			if c ~= Head then
4159
				c.Color = C3(0,0,0)
4160
			else
4161
				c.Color = C3(0,0,0)
4162
			end
4163
			if c == Head then
4164
				if c:FindFirstChild("face") then
4165
					c.face:remove()
4166
				end
4167
			end
4168
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
4169
			c:remove()
4170
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
4171
			c:remove()
4172
		end
4173
	sick.SoundId = "rbxassetid://"..SONG
4174
	sick.Looped = true
4175
	sick.Pitch = 1
4176
	sick.Volume = 1
4177
	sick.Parent = Effects
4178
	sick.Playing = PLAYSONG
4179
	end
4180
	Humanoid.Name = "The-Switcher = "..Player.Name
4181
end
4182
4183
--//=================================\\
4184
--\\=================================//
4185
4186
4187
4188
4189
4190
--//====================================================\\--
4191
--||			  		 END OF SCRIPT
4192
--\\====================================================//--