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