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