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