View difference between Paste ID: kR0kdM34 and x9TLScgY
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4-
if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility by WaverlyCole");InternalData = {}InternalData.RealOwner = owner;InternalData.Version = "v1.0.0"
4+
local Player = game:GetService("Players").basstracker1970
5
local Mouse,mouse,UserInputService,ContextActionService
6-
    script.Parent = InternalData.RealOwner.Character
6+
7-
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
7+
	script.Parent = Player.Character
8-
    local function createObject (connections, index)
8+
	local CAS = {Actions={}}
9-
        local proxy = newproxy (true);local meta = getmetatable (proxy);
9+
	local Event = Instance.new("RemoteEvent")
10-
        local runbind = function (self, i, ...) connections[i]:Fire (...); end;
10+
	Event.Name = "UserInput_Event"
11-
        while (#connections > 0) do connections [table.remove (connections, 1)] = Instance.new ('BindableEvent');end;
11+
	Event.Parent = Player.Character
12-
        meta.__index = function (self, i)
12+
	local fakeEvent = function()
13-
            if (i == 'TriggerEvent') then return runbind end;
13+
		local t = {_fakeEvent=true}
14-
            return connections[i] and connections[i].Event or index[i];
14+
		t.Connect = function(self,f)self.Function=f end
15-
        end;
15+
		t.connect = t.Connect
16-
        meta.__newindex = index;meta.__metatable = false;return proxy
16+
		return t
17-
    end;
17+
18-
    local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
18+
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
19-
    local UserInputService = createObject({"InputBegan","InputEnded"},{})
19+
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
20-
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
20+
	function CAS:BindAction(name,fun,touch,...)
21-
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
21+
		CAS.Actions[name] = {Name=name,Function=fun,Keys={...}}
22-
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
22+
23-
    Event.OnServerEvent:Connect(function(FiredBy,Input)
23+
	function CAS:UnbindAction(name)
24-
        if FiredBy.Name ~= InternalData.RealOwner.Name then return end
24+
		CAS.Actions[name] = nil
25-
        if Input.MouseEvent then
25+
26-
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
26+
	local function te(self,ev,...)
27-
        else
27+
		local t = m[ev]
28-
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
28+
		if t and t._fakeEvent and t.Function then
29-
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
29+
			t.Function(...)
30-
            for _,Action in pairs(ContextActionService.Actions) do
30+
31-
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
31+
32-
            end
32+
	m.TrigEvent = te
33-
            Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
33+
	UIS.TrigEvent = te
34-
        end
34+
	Event.OnServerEvent:Connect(function(plr,io)
35-
    end)
35+
	    if plr~=Player then return end
36-
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
36+
		if io.isMouse then
37-
    Event.Parent = NLS([[
37+
			m.Target = io.Target
38-
        local Player = owner;
38+
			m.Hit = io.Hit
39-
        local Event = script:WaitForChild("UserInput");
39+
		elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
40-
        local UserInputService = game:GetService("UserInputService");
40+
	        if io.UserInputState == Enum.UserInputState.Begin then
41-
        local Mouse = Player:GetMouse();
41+
				m:TrigEvent("Button1Down")
42-
        local Input = function(Input,gameProcessedEvent)
42+
43-
            if gameProcessedEvent then return end
43+
				m:TrigEvent("Button1Up")
44-
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
44+
45-
        end
45+
46-
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
46+
			for n,t in pairs(CAS.Actions) do
47-
        local Hit,Target
47+
				for _,k in pairs(t.Keys) do
48-
        while wait(1/60) do
48+
					if k==io.KeyCode then
49-
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
49+
						t.Function(t.Name,io.UserInputState,io)
50-
                Hit = Mouse.Hit;Target = Mouse.Target;
50+
51-
                Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
51+
52-
            end
52+
53-
        end
53+
	        if io.UserInputState == Enum.UserInputState.Begin then
54-
    ]],InternalData.RealOwner.Character)
54+
	            m:TrigEvent("KeyDown",io.KeyCode.Name:lower())
55
				UIS:TrigEvent("InputBegan",io,false)
56-
InternalData.RealInstance = Instance;Instance = setmetatable({},{
56+
57-
    __index = function (self,Index)
57+
				m:TrigEvent("KeyUp",io.KeyCode.Name:lower())
58-
        if Index:lower() == 'new' then
58+
				UIS:TrigEvent("InputEnded",io,false)
59-
            return function (Type, Parent)
59+
	        end
60-
                local Real = InternalData.RealInstance.new(Type,Parent)
60+
	    end
61-
                if not Type then return end
61+
62-
                if Type == "BillboardGui" then
62+
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
63-
                    return setmetatable({},{
63+
64-
                        __index = function (self,Index)
64+
65-
                            return Real[Index]
65+
66-
                        end;
66+
67-
                        __newindex = function (self,Index,Value)
67+
68-
                            if Index:lower() == "playertohidefrom" then
68+
69-
                                if Value.Name == owner.Name then Real[Index] = InternalData.RealOwner else Real[Index] = Value end
69+
70-
                            else
70+
71-
                                Real[Index] = Value
71+
72-
                            end
72+
73-
                        end;
73+
74-
                        __tostring = function(self) return tostring(Real) end;
74+
75-
                    })
75+
76-
                end
76+
77-
                return Real
77+
78-
            end
78+
79-
        end
79+
80-
        return InternalData.RealInstance[Index]
80+
81-
    end;
81+
82-
    __tostring = function(self) return tostring(InternalData.RealInstance) end;
82+
83-
});
83+
84-
InternalData.RealGame = game;game = setmetatable({},{
84+
85-
    __index = function (self,Index)
85+
86-
        local Sandbox = function (Thing)
86+
87-
            if Thing:IsA("Player") then
87+
88-
                local RealPlayer = Thing
88+
89-
                return setmetatable({},{
89+
90-
                    __index = function (self,Index)
90+
91-
                        local Type = type(RealPlayer[Index])
91+
92-
                        if Type == "function" then
92+
93-
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
93+
94-
                                return function (self)return InternalData["Mouse"] end
94+
95-
                            end
95+
96-
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
96+
97-
                        elseif Index == "FakePlayer" then
97+
98-
                            return true
98+
99-
                        end
99+
100-
                        return RealPlayer[Index]
100+
101-
                    end;
101+
102-
                    __tostring = function(self) return tostring(RealPlayer) end
102+
103-
                })
103+
104-
            end
104+
105-
        end
105+
106-
        if InternalData.RealGame[Index] then
106+
107-
            local Type = type(InternalData.RealGame[Index])
107+
108-
            if Type == "function" then
108+
109-
                if Index:lower() == "getservice" or Index:lower() == "service" then
109+
110-
                    return function (self,Service)
110+
111-
                        local FakeServices = {
111+
112-
                            ["players"] = function()
112+
113-
                                return setmetatable({},{
113+
114-
                                    __index = function (self2,Index2)
114+
115-
                                        local RealService = InternalData.RealGame:GetService(Service)
115+
116-
                                        local Type2 = type(Index2)
116+
117-
                                        if Type2 == "function" then
117+
118-
                                            return function (self,...) return RealService[Index2](RealService,...)end
118+
119-
                                        else
119+
120-
                                            if Index2:lower() == "localplayer" then return Sandbox(InternalData.RealOwner) end
120+
121-
                                            return RealService[Index2]
121+
122-
                                        end
122+
123-
                                    end;
123+
124-
                                    __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
124+
125-
                                })
125+
126-
                            end;
126+
127-
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
127+
128-
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
128+
129-
                            ["runservice"] = function()
129+
130-
                                return setmetatable({},{
130+
131-
                                    __index = function(self2,Index2)
131+
132-
                                        local RealService = InternalData.RealGame:GetService(Service)
132+
133-
                                        local Type2 = type(Index2)
133+
134-
                                        if Type2 == "function" then
134+
135-
                                            return function (self,...) return RealService[Index2](RealService,...) end
135+
136-
                                        else
136+
137-
                                            local RunServices = {
137+
138-
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
138+
139-
                                                ["renderstepped"] = function() return RealService["Stepped"] end
139+
140-
                                            }
140+
141-
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
141+
142-
                                            return RealService[Index2]
142+
143-
                                        end
143+
144-
                                    end;
144+
145-
                                    __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
145+
146-
                                })
146+
147-
                            end
147+
148-
                        }
148+
149-
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
149+
150-
                        return InternalData.RealGame:GetService(Service)
150+
151-
                    end
151+
152-
                end
152+
153-
                return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
153+
154-
            else
154+
155-
                if game:GetService(Index) then return game:GetService(Index) end
155+
156-
                return InternalData.RealGame[Index]
156+
157-
            end
157+
158-
        end
158+
159-
        return nil
159+
160-
    end;
160+
161-
    __tostring = function(self) return tostring(InternalData.game) end
161+
162-
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
162+
163
--\\=================================//
164-
--//Paste script below this line.
164+
165
	local function weldBetween(a, b)
166
	    local weldd = Instance.new("ManualWeld")
167
	    weldd.Part0 = a
168
	    weldd.Part1 = b
169
	    weldd.C0 = CFrame.new()
170-
Player = game.Players.LocalPlayer
170+
171
	    weldd.Parent = a
172
	    return weldd
173
	end
174
175
--//=================================\\
176-
Mouse = Player:GetMouse()
176+
177
--\\=================================//
178
179
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
180
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
181
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
182
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
183
local CHANGEDEFENSE = 0
184
local CHANGEDAMAGE = 0
185
local CHANGEMOVEMENT = 0
186
local ANIM = "Idle"
187
local ATTACK = false
188
local EQUIPPED = false
189
local HOLD = false
190
local COMBO = 1
191
local Rooted = false
192
local SINE = 0
193
local KEYHOLD = false
194
local CHANGE = 2 / Animation_Speed
195
local WALKINGANIM = false
196
local WALK = 0
197
local VALUE1 = false
198
local VALUE2 = false
199
local ROBLOXIDLEANIMATION = IT("Animation")
200
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
201
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
202
--ROBLOXIDLEANIMATION.Parent = Humanoid
203
local WEAPONGUI = IT("ScreenGui", PlayerGui)
204
WEAPONGUI.Name = "Weapon GUI"
205
local Weapon = IT("Model")
206
Weapon.Name = "Weapon"
207
local Delete = IT("Model",Character)
208
Delete.Name = "Banlist"
209
local Effects = IT("Folder", Weapon)
210
Effects.Name = "Effects"
211
local ANIMATOR = Humanoid.Animator
212
local ANIMATE = Character.Animate
213
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
214
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
215
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
216
local HITBLOCKSOUNDS = {"199148933", "199148947"}
217
local UNANCHOR = true
218
local PLAYMAINANIM = true
219
local INTRO = false
220
local TRANSFORMED = false
221
local INSTANT = false
222
223
224
--//=================================\\
225
--\\=================================//
226
227
228
--//=================================\\
229
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
230
--\\=================================//
231
232
ArtificialHB = Instance.new("BindableEvent", script)
233
ArtificialHB.Name = "ArtificialHB"
234
235
script:WaitForChild("ArtificialHB")
236
237
frame = Frame_Speed
238
tf = 0
239
allowframeloss = false
240
tossremainder = false
241
lastframe = tick()
242
script.ArtificialHB:Fire()
243
244
game:GetService("RunService").Heartbeat:connect(function(s, p)
245
	tf = tf + s
246
	if tf >= frame then
247
		if allowframeloss then
248
			script.ArtificialHB:Fire()
249
			lastframe = tick()
250
		else
251
			for i = 1, math.floor(tf / frame) do
252
				script.ArtificialHB:Fire()
253
			end
254
		lastframe = tick()
255
		end
256
		if tossremainder then
257
			tf = 0
258
		else
259
			tf = tf - frame * math.floor(tf / frame)
260
		end
261
	end
262
end)
263
264
--//=================================\\
265
--\\=================================//
266
267
268
269
270
271
--//=================================\\
272
--|| 	      SOME FUNCTIONS
273
--\\=================================//
274
275
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
276
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
277
end
278
279
function PositiveAngle(NUMBER)
280
	if NUMBER >= 0 then
281
		NUMBER = 0
282
	end
283
	return NUMBER
284
end
285
286
function NegativeAngle(NUMBER)
287
	if NUMBER <= 0 then
288
		NUMBER = 0
289
	end
290
	return NUMBER
291
end
292
293
function Swait(NUMBER)
294
	if NUMBER == 0 or NUMBER == nil then
295
		ArtificialHB.Event:wait()
296
	else
297
		for i = 1, NUMBER do
298
			ArtificialHB.Event:wait()
299
		end
300
	end
301
end
302
303
function QuaternionFromCFrame(cf)
304
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
305
	local trace = m00 + m11 + m22
306
	if trace > 0 then 
307
		local s = math.sqrt(1 + trace)
308
		local recip = 0.5 / s
309
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
310
	else
311
		local i = 0
312
		if m11 > m00 then
313
			i = 1
314
		end
315
		if m22 > (i == 0 and m00 or m11) then
316
			i = 2
317
		end
318
		if i == 0 then
319
			local s = math.sqrt(m00 - m11 - m22 + 1)
320
			local recip = 0.5 / s
321
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
322
		elseif i == 1 then
323
			local s = math.sqrt(m11 - m22 - m00 + 1)
324
			local recip = 0.5 / s
325
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
326
		elseif i == 2 then
327
			local s = math.sqrt(m22 - m00 - m11 + 1)
328
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
329
		end
330
	end
331
end
332
 
333
function QuaternionToCFrame(px, py, pz, x, y, z, w)
334
	local xs, ys, zs = x + x, y + y, z + z
335
	local wx, wy, wz = w * xs, w * ys, w * zs
336
	local xx = x * xs
337
	local xy = x * ys
338
	local xz = x * zs
339
	local yy = y * ys
340
	local yz = y * zs
341
	local zz = z * zs
342
	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))
343
end
344
 
345
function QuaternionSlerp(a, b, t)
346
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
347
	local startInterp, finishInterp;
348
	if cosTheta >= 0.0001 then
349
		if (1 - cosTheta) > 0.0001 then
350
			local theta = ACOS(cosTheta)
351
			local invSinTheta = 1 / SIN(theta)
352
			startInterp = SIN((1 - t) * theta) * invSinTheta
353
			finishInterp = SIN(t * theta) * invSinTheta
354
		else
355
			startInterp = 1 - t
356
			finishInterp = t
357
		end
358
	else
359
		if (1 + cosTheta) > 0.0001 then
360
			local theta = ACOS(-cosTheta)
361
			local invSinTheta = 1 / SIN(theta)
362
			startInterp = SIN((t - 1) * theta) * invSinTheta
363
			finishInterp = SIN(t * theta) * invSinTheta
364
		else
365
			startInterp = t - 1
366
			finishInterp = t
367
		end
368
	end
369
	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
370
end
371
372
function Clerp(a, b, t)
373
	local qa = {QuaternionFromCFrame(a)}
374
	local qb = {QuaternionFromCFrame(b)}
375
	local ax, ay, az = a.x, a.y, a.z
376
	local bx, by, bz = b.x, b.y, b.z
377
	local _t = 1 - t
378
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
379
end
380
381
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
382
	local frame = IT("Frame")
383
	frame.BackgroundTransparency = TRANSPARENCY
384
	frame.BorderSizePixel = BORDERSIZEPIXEL
385
	frame.Position = POSITION
386
	frame.Size = SIZE
387
	frame.BackgroundColor3 = COLOR
388
	frame.BorderColor3 = BORDERCOLOR
389
	frame.Name = NAME
390
	frame.Parent = PARENT
391
	return frame
392
end
393
394
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
395
	local label = IT("TextLabel")
396
	label.BackgroundTransparency = 1
397
	label.Size = UD2(1, 0, 1, 0)
398
	label.Position = UD2(0, 0, 0, 0)
399
	label.TextColor3 = TEXTCOLOR
400
	label.TextStrokeTransparency = STROKETRANSPARENCY
401
	label.TextTransparency = TRANSPARENCY
402
	label.FontSize = TEXTFONTSIZE
403
	label.Font = TEXTFONT
404
	label.BorderSizePixel = BORDERSIZEPIXEL
405
	label.TextScaled = false
406
	label.Text = TEXT
407
	label.Name = NAME
408
	label.Parent = PARENT
409
	return label
410
end
411
412
function NoOutlines(PART)
413
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
414
end
415
416
417
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
418
	local NEWWELD = IT(TYPE)
419
	NEWWELD.Part0 = PART0
420
	NEWWELD.Part1 = PART1
421
	NEWWELD.C0 = C0
422
	NEWWELD.C1 = C1
423
	NEWWELD.Parent = PARENT
424
	return NEWWELD
425
end
426
427
function CreateSound(ID, PARENT, VOLUME, PITCH)
428
	local NEWSOUND = nil
429
	coroutine.resume(coroutine.create(function()
430
		NEWSOUND = IT("Sound", PARENT)
431
		NEWSOUND.Volume = VOLUME
432
		NEWSOUND.Pitch = PITCH
433
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
434
		Swait()
435
		NEWSOUND:play()
436
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
437
	end))
438
	return NEWSOUND
439
end
440
441
function CFrameFromTopBack(at, top, back)
442
	local right = top:Cross(back)
443
	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)
444
end
445
446
function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
447
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
448
	local mesh = IT("SpecialMesh",wave)
449
	mesh.MeshType = "FileMesh"
450
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
451
	mesh.Scale = SIZE
452
	mesh.Offset = VT(0,0,0)
453
	wave.CFrame = CFRAME
454
	coroutine.resume(coroutine.create(function(PART)
455
		for i = 1, WAIT do
456
			Swait()
457
			mesh.Scale = mesh.Scale + GROW
458
			if DOESROT == true then
459
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
460
			end
461
			wave.Transparency = wave.Transparency + (0.5/WAIT)
462
			if wave.Transparency > 0.99 then
463
				wave:remove()
464
			end
465
		end
466
	end))
467
end
468
469
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
470
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
471
	local mesh = IT("SpecialMesh",wave)
472
	mesh.MeshType = "Sphere"
473
	mesh.Scale = SIZE
474
	mesh.Offset = VT(0,0,0)
475
	wave.CFrame = CFRAME
476
	coroutine.resume(coroutine.create(function(PART)
477
		for i = 1, WAIT do
478
			Swait()
479
			mesh.Scale = mesh.Scale + GROW
480
			wave.Transparency = wave.Transparency + (1/WAIT)
481
			if wave.Transparency > 0.99 then
482
				wave:remove()
483
			end
484
		end
485
	end))
486
end
487
488
function Slice(SIZE,WAIT,CFRAME,COLOR,GROW)
489
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
490
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
491
	wave.CFrame = CFRAME
492
	coroutine.resume(coroutine.create(function(PART)
493
		for i = 1, WAIT do
494
			Swait()
495
			mesh.Scale = mesh.Scale * GROW
496
			wave.Transparency = wave.Transparency + (0.5/WAIT)
497
			if wave.Transparency > 0.99 then
498
				wave:remove()
499
			end
500
		end
501
	end))
502
end
503
504
function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
505
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
506
	local mesh = IT("BlockMesh",wave)
507
	wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
508
	coroutine.resume(coroutine.create(function(PART)
509
		for i = 1, WAIT do
510
			Swait()
511
			mesh.Scale = mesh.Scale + GROW
512
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
513
			wave.Transparency = wave.Transparency + (1/WAIT)
514
			if wave.Transparency > 0.99 then
515
				wave:remove()
516
			end
517
		end
518
	end))
519
end
520
521
function MakeForm(PART,TYPE)
522
	if TYPE == "Cyl" then
523
		local MSH = IT("CylinderMesh",PART)
524
	elseif TYPE == "Ball" then
525
		local MSH = IT("SpecialMesh",PART)
526
		MSH.MeshType = "Sphere"
527
	elseif TYPE == "Wedge" then
528
		local MSH = IT("SpecialMesh",PART)
529
		MSH.MeshType = "Wedge"
530
	end
531
end
532
533
function CheckTableForString(Table, String)
534
	for i, v in pairs(Table) do
535
		if string.find(string.lower(String), string.lower(v)) then
536
			return true
537
		end
538
	end
539
	return false
540
end
541
542
function CheckIntangible(Hit)
543
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
544
	if Hit and Hit.Parent then
545
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
546
			return true
547
		end
548
	end
549
	return false
550
end
551
552
Debris = game:GetService("Debris")
553
554
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
555
	local Direction = CFrame.new(StartPos, Vec).lookVector
556
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
557
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
558
	if RayHit and CheckIntangible(RayHit) then
559
		if DelayIfHit then
560
			wait()
561
		end
562
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
563
	end
564
	return RayHit, RayPos, RayNormal
565
end
566
567
function RayCast(Position, Direction, MaxDistance, IgnoreList)
568
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList) 
569
end
570
571
function turnto(position)
572
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
573
end
574
575
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
576
	PLAYMAINANIM = false
577
	if WhichPose == "Cast1" then
578
		for i=0, Time, 0.1 / Animation_Speed do
579
			Swait()
580
			if Magic == true then
581
				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})
582
			end
583
			if Gyro ~= nil and Gyro ~= false then
584
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
585
			end
586
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
587
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
588
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
589
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
590
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
591
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
592
		end
593
	elseif WhichPose == "Cast2" then
594
		for i=0, Time, 0.1 / Animation_Speed do
595
			Swait()
596
			if Magic == true then
597
				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})
598
				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})
599
			end
600
			if Gyro ~= nil and Gyro ~= false then
601
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
602
			end
603
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
604
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
605
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
606
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
607
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
608
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
609
		end
610
	elseif WhichPose == "RightArmUp" then
611
		for i=0, Time, 0.1 / Animation_Speed do
612
			Swait()
613
			if Magic == true then
614
				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})
615
			end
616
			if Gyro ~= nil and Gyro ~= false then
617
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
618
			end
619
			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)
620
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
621
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
622
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
623
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
624
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
625
		end
626
	elseif WhichPose == "Taunt" then
627
		for i=0, Time, 0.1 / Animation_Speed do
628
			Swait()
629
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
630
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
631
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
632
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
633
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
634
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
635
		end
636
		CreateSound(221057812,Torso,10,1,false)
637
		for i=0, Time*2, 0.1 / Animation_Speed do
638
			Swait()
639
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
640
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
641
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
642
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
643
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
644
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
645
		end
646
		for i=0, Time, 0.1 / Animation_Speed do
647
			Swait()
648
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
649
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
650
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
651
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
652
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
653
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
654
		end
655
	elseif WhichPose == "Prepare key" then
656
		for i=0, Time, 0.1 / Animation_Speed do
657
			Swait()
658
			if Gyro ~= nil and Gyro ~= false then
659
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
660
			end
661
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
662
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
663
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
664
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
665
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
666
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
667
		end
668
	elseif WhichPose == "Turn key" then
669
		for i=0, Time, 0.1 / Animation_Speed do
670
			Swait()
671
			if Gyro ~= nil and Gyro ~= false then
672
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
673
			end
674
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
675
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
676
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
677
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
678
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
679
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
680
		end
681
	end
682
	PLAYMAINANIM = true
683
end
684
685
--//=================================\\
686
--|| 			SPEECH
687
--\\=================================//
688
689
690
691
692
--// Start Stuff for Banishing \\--
693
694
local TOBANISH = {}
695
696
function CastProperRay(StartPos, EndPos, Distance, Ignore)
697
	local DIRECTION = CF(StartPos,EndPos).lookVector
698
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
699
end
700
701
function printbye(Name)
702
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your life is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
703
	----chatfunc(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
704
end
705
706
function Banish(Foe)
707
	if Foe then
708
		coroutine.resume(coroutine.create(function()
709
			--if game.Players:FindFirstChild(Foe.Name) then
710
				table.insert(TOBANISH,Foe.Name)
711
				printbye(Foe.Name)
712
			--end
713
			Foe.Archivable = true
714
			local CLONE = Foe:Clone()
715
			Foe:Destroy()
716
			CLONE.Parent = Effects
717
			CLONE:BreakJoints()
718
			local MATERIALS = {"Glass","Neon"}
719
			for _, c in pairs(CLONE:GetDescendants()) do
720
				if c:IsA("BasePart") then
721
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
722
 						CreateSound(340722848, c, 10, 1, false)
723
					end
724
					c.Anchored = true
725
					c.Transparency = c.Transparency + 0.2
726
					c.Material = MATERIALS[MRANDOM(1,2)]
727
					c.Color = C3(0,255,0)
728
					if c.ClassName == "MeshPart" then
729
						c.TextureID = ""
730
					end
731
					if c:FindFirstChildOfClass("SpecialMesh") then
732
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
733
					end
734
					if c:FindFirstChildOfClass("Decal") then
735
						c:FindFirstChildOfClass("Decal"):remove()
736
					end
737
					c.Name = "Banished"
738
					c.CanCollide = false
739
				else
740
					c:remove()
741
				end
742
			end
743
			local A = false
744
			for i = 1, 35 do
745
				if A == false then
746
					A = true
747
				elseif A == true then
748
					A = false
749
				end
750
				for _, c in pairs(CLONE:GetDescendants()) do
751
					if c:IsA("BasePart") then
752
						c.Anchored = true
753
						c.Material = MATERIALS[MRANDOM(1,2)]
754
						c.Transparency = c.Transparency + 0.8/35
755
						if A == false then
756
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
757
						elseif A == true then
758
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
759
						end
760
					end
761
				end
762
				Swait()
763
			end
764
			CLONE:remove()
765
		end))
766
	end
767
end
768
769
function BANNEAREST(POS,RANGE)
770
	for i,v in ipairs(workspace:GetChildren()) do
771
	local body = v:GetChildren()
772
		for part = 1, #body do
773
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
774
				if(body[part].Position - POS).Magnitude < RANGE then
775
					if v:FindFirstChildOfClass("Humanoid") then
776
						Banish(v)
777
						if game.Players:FindFirstChild(v.Name) then
778
							local Value = IT("BoolValue",Delete)
779
							Value.Name = v.Name
780
						end
781
					end
782
				end
783
			end
784
		end
785
	end
786
end
787
788
workspace.ChildAdded:connect(function(instance)
789
    for BANISH = 1, #TOBANISH do
790
		if TOBANISH[BANISH] ~= nil then
791
			if instance.Name == TOBANISH[BANISH] then
792
				coroutine.resume(coroutine.create(function()
793
					printbye(instance.Name)
794
					instance:ClearAllChildren()
795
					Debris:AddItem(instance,0.0005)
796
				end))
797
			end
798
		end
799
	end
800
end)
801
802
function SpawnTrail(FROM,TO,BIG)
803
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
804
	MakeForm(TRAIL,"Cyl")
805
	local DIST = (FROM - TO).Magnitude
806
	if BIG == true then
807
		TRAIL.Size = VT(10,DIST,10)
808
	else
809
		TRAIL.Size = VT(0.25,DIST,0.25)
810
	end
811
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
812
	coroutine.resume(coroutine.create(function()
813
		for i = 1, 5 do
814
			Swait()
815
			TRAIL.Transparency = TRAIL.Transparency + 0.1
816
		end
817
		TRAIL:remove()
818
	end))
819
end
820
821
function WACKYEFFECT(Table)
822
	local TYPE = (Table.EffectType or "Sphere")
823
	local SIZE = (Table.Size or VT(1,1,1))
824
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
825
	local TRANSPARENCY = (Table.Transparency or 0)
826
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
827
	local CFRAME = (Table.CFrame or Torso.CFrame)
828
	local MOVEDIRECTION = (Table.MoveToPos or nil)
829
	local ROTATION1 = (Table.RotationX or 0)
830
	local ROTATION2 = (Table.RotationY or 0)
831
	local ROTATION3 = (Table.RotationZ or 0)
832
	local MATERIAL = (Table.Material or "Neon")
833
	local COLOR = (Table.Color or C3(0,255,0))
834
	local TIME = (Table.Time or 45)
835
	local SOUNDID = (Table.SoundID or nil)
836
	local SOUNDPITCH = (Table.SoundPitch or nil)
837
	local SOUNDVOLUME = (Table.SoundVolume or nil)
838
	coroutine.resume(coroutine.create(function()
839
		local PLAYSSOUND = false
840
		local SOUND = nil
841
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
842
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
843
			PLAYSSOUND = true
844
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
845
		end
846
		EFFECT.Color = COLOR
847
		local MSH = nil
848
		if TYPE == "Sphere" then
849
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
850
		elseif TYPE == "Block" then
851
			MSH = IT("BlockMesh",EFFECT)
852
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
853
		elseif TYPE == "Wave" then
854
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
855
		elseif TYPE == "Ring" then
856
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
857
		elseif TYPE == "Slash" then
858
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
859
		elseif TYPE == "Round Slash" then
860
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
861
		elseif TYPE == "Swirl" then
862
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
863
		elseif TYPE == "Skull" then
864
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
865
		elseif TYPE == "Crystal" then
866
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
867
		end
868
		if MSH ~= nil then
869
			local MOVESPEED = nil
870
			if MOVEDIRECTION ~= nil then
871
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
872
			end
873
			local GROWTH = SIZE - ENDSIZE
874
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
875
			if TYPE == "Block" then
876
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
877
			else
878
				EFFECT.CFrame = CFRAME
879
			end
880
			for LOOP = 1, TIME+1 do
881
				Swait()
882
				MSH.Scale = MSH.Scale - GROWTH/TIME
883
				if TYPE == "Wave" then
884
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
885
				end
886
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
887
				if TYPE == "Block" then
888
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
889
				else
890
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
891
				end
892
				if MOVEDIRECTION ~= nil then
893
					local ORI = EFFECT.Orientation
894
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
895
					EFFECT.Orientation = ORI
896
				end
897
			end
898
			if PLAYSSOUND == false then
899
				EFFECT:remove()
900
			else
901
				SOUND.Stopped:Connect(function()
902
					EFFECT:remove()
903
				end)
904
			end
905
		else
906
			if PLAYSSOUND == false then
907
				EFFECT:remove()
908
			else
909
				repeat Swait() until SOUND.Playing == false
910
				EFFECT:remove()
911
			end
912
		end
913
	end))
914
end
915
916
-- \\ End Stuff for Banishing //--
917
918
--//=================================\\
919
--||	     WEAPON CREATION
920
--\\=================================//
921
print("hello this is Epticallity and you're watching Disney Channel")
922
warn("let dreamer suck you off VengefulProgram")
923
local EyeSizes={
924
	NumberSequenceKeypoint.new(0,1,0),
925
	NumberSequenceKeypoint.new(1,0,0)
926
}
927
local EyeTrans={
928
	NumberSequenceKeypoint.new(0,0.8,0),
929
	NumberSequenceKeypoint.new(1,1,0)
930
}
931
local PE=Instance.new("ParticleEmitter")
932
PE.LightEmission=.8
933
PE.Color = ColorSequence.new(BRICKC("Really red").Color)
934
PE.Size=NumberSequence.new(EyeSizes)
935
PE.Transparency=NumberSequence.new(EyeTrans)
936
PE.Lifetime=NumberRange.new(0.35,1.5)
937
PE.Rotation=NumberRange.new(0,360)
938
PE.Rate=999
939
PE.VelocitySpread = 10000
940
PE.Acceleration = Vector3.new(0,0,0)
941
PE.Drag = 5
942
PE.Speed = NumberRange.new(0,0,0)
943
PE.Texture="http://www.roblox.com/asset/?id=0"
944
PE.ZOffset = -1.5
945
PE.Name = "PE"
946
PE.Enabled = false
947
948
function particles(art)
949
	local PARTICLES = PE:Clone()
950
	PARTICLES.Parent = art
951
end
952
953
local SCYTHE = IT("Model",Character)
954
SCYTHE.Name = "SCYTHE"
955
956
local B = SCYTHE
957
local HandlePart = CreatePart(3, B, "Neon", 0, 1, "Really red", "HandPart", VT(0.3,0.3,0.3),false)
958
particles(HandlePart)
959
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", Character, Torso, HandlePart, CF(0,1,1) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
960
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.2,3.5,0.2),false)
961
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0,-1.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
962
MakeForm(part,"Ball")
963
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,1,0.3),false)
964
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
965
MakeForm(part,"Ball")
966
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.25,1,0.25),false)
967
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0,-0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
968
MakeForm(part,"Ball")
969
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.15,2,0.15),false)
970
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0,0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
971
MakeForm(part,"Ball")
972
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.15,0.55,0.15),false)
973
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.2,0.75) * ANGLES(RAD(40), RAD(0), RAD(0)), CF(0, 0, 0))
974
MakeForm(part,"Ball")
975
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.15,0.5,0.15),false)
976
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.15,1) * ANGLES(RAD(40), RAD(0), RAD(0)), CF(0, 0, 0))
977
MakeForm(part,"Ball")
978
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.15,0.45,0.15),false)
979
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.125,1.25) * ANGLES(RAD(40), RAD(0), RAD(0)), CF(0, 0, 0))
980
MakeForm(part,"Ball")
981
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,2,0.3),false)
982
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0,-2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
983
MakeForm(part,"Ball")
984
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,0.8,0.3),false)
985
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.2,-3.2) * ANGLES(RAD(120), RAD(0), RAD(0)), CF(0, 0, 0))
986
MakeForm(part,"Ball")
987
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,0.3,0.3),false)
988
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.025,-2.8) * ANGLES(RAD(120), RAD(0), RAD(0)), CF(0, 0, 0))
989
MakeForm(part,"Ball")
990
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.15,0.8,0.15),false)
991
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.5,-3.5) * ANGLES(RAD(160), RAD(0), RAD(0)), CF(0, 0, 0))
992
MakeForm(part,"Ball")
993
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.2,0.8,0.2),false)
994
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.85,-3.8) * ANGLES(RAD(120), RAD(0), RAD(0)), CF(0, 0, 0))
995
MakeForm(part,"Ball")
996
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.4,1.3,0.8),false)
997
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.6,-4.2) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
998
MakeForm(part,"Ball")
999
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,1.3,0.6),false)
1000
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.3,-4.3) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1001
MakeForm(part,"Ball")
1002
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.2,2,0.4),false)
1003
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.2,-4.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1004
MakeForm(part,"Ball")
1005
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.1,2,0.4),false)
1006
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,-0.6,-4.1) * ANGLES(RAD(-25), RAD(0), RAD(0)), CF(0, 0, 0))
1007
MakeForm(part,"Ball")
1008
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.05,2,0.2),false)
1009
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,-1.6,-3.475) * ANGLES(RAD(-45), RAD(0), RAD(0)), CF(0, 0, 0))
1010
MakeForm(part,"Ball")
1011
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.3,1.3,0.6),false)
1012
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.5,-4) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1013
MakeForm(part,"Ball")
1014
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.2,1,0.4),false)
1015
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,-0.1,-4) * ANGLES(RAD(-35), RAD(0), RAD(0)), CF(0, 0, 0))
1016
MakeForm(part,"Ball")
1017
local part = CreatePart(3, B, "Granite", 0, 1, "Really red", "ScythePart", VT(0.15,1,0.2),false)
1018
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,-0.45,-3.8) * ANGLES(RAD(-55), RAD(0), RAD(0)), CF(0, 0, 0))
1019
MakeForm(part,"Ball")
1020
local part = CreatePart(3, B, "SmoothPlastic", 0, 1, "Really red", "ScythePart", VT(0.1,0.5,0.1),false)
1021
local weld = CreateWeldOrSnapOrMotor("Weld", part, HandlePart, part, CF(0,0.1,-3.3) * ANGLES(RAD(-25), RAD(0), RAD(0)), CF(0, 0, 0))
1022
MakeForm(part,"Ball")
1023
local HitBox = CreatePart(3, B, "Neon", 0, 1, "Really red", "Hitbox", VT(5,1.3,0.6),false)
1024
local weld = CreateWeldOrSnapOrMotor("Weld", HitBox, HandlePart, HitBox, CF(0,0,-3) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1025
1026
for _, c in pairs(SCYTHE:GetChildren()) do
1027
	if c.ClassName == "Part" then
1028
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1029
	end
1030
end
1031
1032
Weapon.Parent = Character
1033
1034
Humanoid.Died:connect(function()
1035
	KillChildren(Character)
1036
	SCYTHE:ClearAllChildren()
1037
	for i = 1, 100 do
1038
		Swait()
1039
		sick.Volume = sick.Volume - 0.02
1040
	end
1041
end)
1042
1043
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.13, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1044
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.60, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1045
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1046
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1047
local SKILL5FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1048
1049
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Warp", BrickColor.new("Really red").Color, 8, "Code", 0, 2, 0, "Text 1")
1050
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Deadly Dash", BrickColor.new("Really blue").Color, 8, "Code", 0, 2, 0, "Text 2")
1051
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Key To Hell", BrickColor.new("Lime green").Color, 8, "Code", 0, 2, 0, "Text 3")
1052
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Fatal Wave", BrickColor.new("Pink").Color, 8, "Code", 0, 2, 0, "Text 4")
1053
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Reap", BrickColor.new("White").Color, 8, "Code", 0, 2, 0, "Text 5")
1054
1055
--//=================================\\
1056
--||			DAMAGING
1057
--\\=================================//
1058
1059
function KillChildren(v)
1060
	v:BreakJoints()
1061
	for _, c in pairs(v:GetChildren()) do
1062
		if c.ClassName == "Part" or c.ClassName == "MesPart" then
1063
			if c.Transparency < 1 then
1064
				if c:FindFirstChildOfClass("Decal") then
1065
					c:FindFirstChildOfClass("Decal"):remove()
1066
				end
1067
				particles(c)
1068
				c.PE.Enabled = true
1069
				c.Parent = Effects
1070
				c.CanCollide = false
1071
				c.Material = "Neon"
1072
				c.Color = C3(0,0,0)
1073
				c.Transparency = 0.5
1074
				local grav = Instance.new("BodyPosition",c)
1075
				grav.P = 20000
1076
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1077
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
1078
				grav.Name = "GravityForce"
1079
				coroutine.resume(coroutine.create(function()
1080
				for i = 1, 50 do
1081
					Swait()
1082
					c.Transparency = c.Transparency + 0.01
1083
				end
1084
				c.PE.Enabled = false
1085
				Debris:AddItem(c,2)
1086
				end))
1087
			end
1088
		end
1089
	end
1090
end
1091
1092
function killnearest(position,range)
1093
	for i,v in ipairs(workspace:GetChildren()) do
1094
	local body = v:GetChildren()
1095
		for part = 1, #body do
1096
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1097
				if(body[part].Position - position).Magnitude < range then
1098
					if v.ClassName == "Model" then
1099
						KillChildren(v)
1100
					end
1101
				end
1102
			end
1103
		end
1104
	end
1105
end
1106
1107
function ApplyDamage(Humanoid,Damage)
1108
	Damage = Damage * 1
1109
	local DEAD = false
1110
	if Humanoid.Health < 2000 then
1111
		if Humanoid.Health - Damage > 0 then
1112
			Humanoid.Health = Humanoid.Health - Damage
1113
		else
1114
			DEAD = true
1115
			Humanoid.Parent:BreakJoints()
1116
		end
1117
	else
1118
		DEAD = true
1119
		Humanoid.Parent:BreakJoints()
1120
	end
1121
	if DEAD == true then
1122
		Chatter("That's your fault. Isn't it.",0)
1123
	end
1124
end
1125
1126
--//=================================\\
1127
--||	ATTACK FUNCTIONS AND STUFF
1128
--\\=================================//
1129
1130
function Intro()
1131
	ATTACK = true
1132
	Rooted = true
1133
	repeat 
1134
		Swait() 
1135
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1136
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(-3.5 * COS(SINE / 12)), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1137
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.8 / Animation_Speed)
1138
		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, 0.15 / Animation_Speed)
1139
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
1140
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-8), RAD(5), RAD(15-2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
1141
	until sick.TimePosition > 120
1142
	repeat 
1143
		Swait()
1144
		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)
1145
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1146
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-15), RAD(5 + 1 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1147
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(15), RAD(-5 - 1 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1148
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 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)
1149
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 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)
1150
	until sick.TimePosition > 129
1151
	repeat 
1152
		Swait() 
1153
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1154
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1155
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1156
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1157
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1158
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1159
	until sick.TimePosition > 130.5
1160
	---tecks2.TextTransparency = 0
1161
	HandleWeld.Part0 = RightArm
1162
	for i = 1, 100 do
1163
		Swait()
1164
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1)
1165
		for _, c in pairs(Character:GetChildren()) do
1166
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
1167
				c.Transparency = 0
1168
			end
1169
		end
1170
		for _, c in pairs(Weapon:GetChildren()) do
1171
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
1172
				c.Transparency = 0
1173
			end
1174
		end
1175
		for _, c in pairs(SCYTHE:GetChildren()) do
1176
			if c.ClassName == "Part" then
1177
				if c.Material ~= Enum.Material.Neon then
1178
					c.Transparency = c.Transparency - 0.01
1179
				end
1180
				c.Color = C3(0,0,0)
1181
			end
1182
		end
1183
	end
1184
	HandleWeld.Part0 = Torso
1185
	TRANSFORMED = true
1186
	ATTACK = false
1187
	Rooted = false
1188
end
1189
1190
function AttackTemplate()
1191
	ATTACK = true
1192
	Rooted = false
1193
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1194
	HandleWeld.Part0 = RightArm
1195
	HandleWeld.C0 = CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
1196
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1197
	for i=0, 1, 0.1 / Animation_Speed do
1198
		Swait()
1199
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1200
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1201
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1202
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1203
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -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)
1204
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -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)
1205
	end
1206
	HandleWeld.Part0 = Torso
1207
	ATTACK = false
1208
	Rooted = false
1209
end
1210
1211
function Warp()
1212
	ATTACK = true
1213
	Rooted = true
1214
	UNANCHOR = false
1215
	RootPart.Anchored = true
1216
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1217
	HandleWeld.Part0 = RightArm
1218
	HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1)
1219
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1220
	for i=0, 0.5, 0.1 / Animation_Speed do
1221
		Swait()
1222
		CreateRing(VT(0,0,0),false,0,15,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(1,1,0))
1223
		MagicSphere(VT(0,0.2,0),15,CF(RootPart.Position-VT(0,3,0)),"Really red",VT(0.5,0,0.5))
1224
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 2) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2)
1225
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1226
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1227
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1228
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1229
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1230
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1231
	end
1232
	for i = 1, 10 do
1233
		Swait()
1234
		CreateRing(VT(0,0,0),false,0,15,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(1,1,0))
1235
		MagicSphere(VT(0,0.2,0),15,CF(RootPart.Position-VT(0,3,0)),"Really red",VT(0.5,0,0.5))
1236
	end
1237
	for i=0, 1, 0.1 / Animation_Speed do
1238
		Swait()
1239
		CreateRing(VT(0,0,0),false,0,15,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(1,1,0))
1240
		MagicSphere(VT(0,0.2,0),15,CF(RootPart.Position-VT(0,3,0)),"Really red",VT(0.5,0,0.5))
1241
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 2) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2)
1242
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -25) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1243
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1244
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1245
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1246
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1247
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1248
	end
1249
	local ORIGIN = RootPart.Position
1250
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,3,0),ORIGIN)
1251
	for i=0, 1, 0.1 / Animation_Speed do
1252
		Swait()
1253
		CreateRing(VT(0,0,0),false,0,15,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(1,1,0))
1254
		MagicSphere(VT(0,0.2,0),15,CF(RootPart.Position-VT(0,3,0)),"Really red",VT(0.5,0,0.5))
1255
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 2) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2)
1256
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1257
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1258
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1259
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -0.8) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1260
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1261
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1262
	end
1263
	UNANCHOR = true
1264
	RootPart.Anchored = false
1265
	for i = 1, 10 do
1266
		Swait()
1267
		CreateRing(VT(0,0,0),false,0,15,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(1,1,0))
1268
		MagicSphere(VT(0,0.2,0),15,CF(RootPart.Position-VT(0,3,0)),"Really red",VT(0.5,0,0.5))
1269
	end
1270
	HandleWeld.Part0 = Torso
1271
	ATTACK = false
1272
	Rooted = false
1273
end
1274
1275
function DeathlyDash()
1276
	ATTACK = true
1277
	Rooted = false
1278
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1279
	HandleWeld.Part0 = RightArm
1280
	HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1)
1281
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1282
	for i=0, 1, 0.1 / Animation_Speed do
1283
		Swait()
1284
		turnto(Mouse.Hit.p)
1285
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(-74), RAD(0)), 0.2)
1286
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.5 / Animation_Speed)
1287
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.5 / Animation_Speed)
1288
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1289
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.2, 0.5, -1) * ANGLES(RAD(0), RAD(0), RAD(90)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1290
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1291
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1292
	end
1293
	local TRAILS = {}
1294
	local FOUND = false
1295
	for i = 1, 75 do
1296
		Swait()
1297
		local TRAIL = Character:Clone()
1298
		for _, c in pairs(TRAIL:GetChildren()) do
1299
			if c.ClassName == "Part" then
1300
				c.Anchored = true
1301
				c.Color = C3(0,0,0)
1302
				c.Transparency = 0.5
1303
				c.Material = "Neon"
1304
				c.CanCollide = false
1305
			else
1306
				c:remove()
1307
			end
1308
		end
1309
		TRAIL.Parent = Effects
1310
		table.insert(TRAILS,TRAIL)
1311
		Debris:AddItem(TRAIL,0.08)
1312
		for _, c in pairs(workspace:GetChildren()) do
1313
			if c.ClassName == "Model" then
1314
				if c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
1315
					local HUMANOID = c:FindFirstChildOfClass("Humanoid")
1316
					local TORSO = (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso"))
1317
					if (TORSO.Position - (Torso.CFrame*CF(0,0,-8).p)).Magnitude < 15 then
1318
						BANNEAREST(TORSO.Position,25)
1319
						FOUND = true
1320
					end
1321
				end
1322
			end
1323
		end
1324
		if FOUND == true then
1325
			for i = 1, 65 do
1326
				BANNEAREST(Torso.CFrame*CF(0,0,-8).p,25)
1327
				RootPart.CFrame = RootPart.CFrame * CF(0,0,-1)
1328
			end
1329
			local SOUND = CreateSound("62339698", HitBox, 10, 0.3)
1330
			Slice(2,25,RootPart.CFrame *CF(0,0,-5)*ANGLES(RAD(90),RAD(90),RAD(0)),"Really red",1)
1331
			for i=0, 1, 0.1 / Animation_Speed do
1332
				Swait()
1333
				HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(-74), RAD(0)) * ANGLES(RAD(-70), RAD(0), RAD(0)), 1)
1334
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(25)), 3 / Animation_Speed)
1335
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 3 / Animation_Speed)
1336
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1337
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1338
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 3 / Animation_Speed)
1339
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 3 / Animation_Speed)
1340
			end
1341
			break
1342
		end
1343
		RootPart.CFrame = RootPart.CFrame * CF(0,0,-2.5)
1344
	end
1345
	HandleWeld.Part0 = Torso  
1346
	ATTACK = false
1347
	Rooted = false
1348
end
1349
1350
function FatalWave()
1351
	ATTACK = true
1352
	Rooted = true
1353
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1354
	HandleWeld.Part0 = RightArm
1355
	HandleWeld.C0 = CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
1356
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1357
	for i=0, 1, 0.1 / Animation_Speed do
1358
		Swait()
1359
		CreateRing(VT(0,0,0),false,0,5,CF(RootPart.Position-VT(0,3,0))*ANGLES(RAD(90),RAD(0),RAD(0)),"Really red",VT(1,1,0))
1360
		turnto(Mouse.Hit.p)
1361
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(-74), RAD(0)), 0.2)
1362
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.5 / Animation_Speed)
1363
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.5 / Animation_Speed)
1364
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-45), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1365
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.2, 0.5, -1) * ANGLES(RAD(0), RAD(0), RAD(90)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1366
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1367
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-45), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1368
	end
1369
	for i=0,0.1, 0.1 / Animation_Speed do
1370
		Swait()
1371
		turnto(Mouse.Hit.p)
1372
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)), 0.2)
1373
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.5)
1374
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.5)
1375
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, 0.5)
1376
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(75)) * LEFTSHOULDERC0, 0.5)
1377
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5)
1378
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5)
1379
	end
1380
	local angle = - 30
1381
	for i = 1, 5 do
1382
		coroutine.resume(coroutine.create(function()
1383
			local RayHit, RayPos = RayCast(Torso.Position, Vector3.new(0, -15, 0), 10000, {Character})
1384
			local SpawnPosition = RayPos
1385
			local floor = RayHit
1386
			local needcframe = RootPart.CFrame*ANGLES(RAD(0),RAD(angle),RAD(0))
1387
			local LastPosition = RayPos
1388
			local Delay = 1
1389
			for i = 1, 15 do
1390
				local RayHit, RayPos = RayCast(LastPosition, needcframe.lookVector, 10, {workspace})
1391
				local End = RayPos
1392
				LastPosition = End
1393
					if SpawnPosition then
1394
						BANNEAREST(End,25)
1395
						CreateRing(VT(0,0,0),false,0,15,needcframe * CF(0,0,-5*i)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really red",VT(0.4,0.4,0)*i)
1396
						Slice(2+(i/5),25, needcframe * CF(0,0,-5*i)*ANGLES(RAD(90),RAD(90),RAD(0)),"Really red",1)
1397
					end
1398
				Swait()
1399
			end
1400
		end))
1401
		angle = angle + 15
1402
	end
1403
	local SOUND = CreateSound("rbxasset://sounds/swordlunge.wav", HitBox, 5, 0.6)
1404
	SOUND.SoundId = "rbxasset://sounds/swordlunge.wav"
1405
	CreateSound("62339698", HitBox, 10, 0.4)
1406
	for i=0, 1, 0.1 / Animation_Speed do
1407
		Swait()
1408
		turnto(Mouse.Hit.p)
1409
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)), 0.2)
1410
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.5)
1411
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.5)
1412
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-75)) * RIGHTSHOULDERC0, 0.5)
1413
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(75)) * LEFTSHOULDERC0, 0.5)
1414
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5)
1415
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5)
1416
	end
1417
	HandleWeld.Part0 = Torso
1418
	ATTACK = false
1419
	Rooted = false
1420
end
1421
1422
function Reap()
1423
	ATTACK = true
1424
	Rooted = true
1425
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1426
	HandleWeld.Part0 = RightArm
1427
	HandleWeld.C0 = CF(0, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
1428
	MagicSphere(VT(0,0,0),15,HitBox.CFrame,"Really red",VT(2,2,2))
1429
	for i=0, 3, 0.1 / Animation_Speed do
1430
		Swait()
1431
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(5), RAD(0), RAD(45)), 0.2)
1432
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -0.1) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1433
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1434
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.5) * ANGLES(RAD(125), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1435
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1436
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-15), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1437
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-15), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1438
	end
1439
	local SOUND = CreateSound("rbxasset://sounds/swordlunge.wav", HitBox, 5, 0.6)
1440
	SOUND.SoundId = "rbxasset://sounds/swordlunge.wav"
1441
	local SOUND = CreateSound("135017578", Effects, 5, 1)
1442
	Swait()
1443
	repeat
1444
		Swait()
1445
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0, -1, 0) * ANGLES(RAD(-35), RAD(0), RAD(45)), 0.2)
1446
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.8) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1447
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1448
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0, -0.5) * ANGLES(RAD(15), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1449
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0, -0.5) * ANGLES(RAD(15), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1450
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(25), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1451
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-45), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1452
	until SOUND.playing == false
1453
	local FLOOR = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Blood", VT(800,0,800))
1454
	MakeForm(FLOOR,"Cyl")
1455
	FLOOR.CFrame = CF(RootPart.Position+VT(0,-3,0))
1456
	CreateSound("289315275", Effects, 5, 0.3)
1457
	for i = 1, 400 do
1458
		Swait()
1459
		FLOOR.Transparency = FLOOR.Transparency - (1/400)
1460
		if i > 100 then
1461
	 		if MRANDOM(1,2) == 1 then 
1462
				local SPHERE = CreatePart(3, Head, "Neon", 0, 0, "Really red", "Magic", VT(1,1,1)*MRANDOM(2,35)/10)
1463
				SPHERE.CFrame = CF(FLOOR.Position) * CF(MRANDOM(-285,285),-5,MRANDOM(-285,285))
1464
				MakeForm(SPHERE,"Ball")
1465
				coroutine.resume(coroutine.create(function()
1466
					for i = 1, 100 do
1467
						Swait()
1468
						SPHERE.CFrame = SPHERE.CFrame * CF(0,0.3,0)
1469
						SPHERE.Transparency = (i/100)
1470
					end
1471
					SPHERE:remove()
1472
				end))
1473
			end
1474
		end
1475
	end
1476
	CreateSound("62339698", Effects, 10, 0.3)
1477
	BANNEAREST(FLOOR.Position,FLOOR.Size.Z/2)
1478
	FLOOR:ClearAllChildren()
1479
	MakeForm(FLOOR,"Ball")
1480
	for i = 1, 50 do
1481
		Swait()
1482
		FLOOR.Size = FLOOR.Size + VT(-16,1,-16)
1483
		FLOOR.Transparency = FLOOR.Transparency + (1/50)
1484
	end
1485
	FLOOR:remove()
1486
	HandleWeld.Part0 = Torso
1487
	ATTACK = false
1488
	Rooted = false
1489
end
1490
1491
function Banisher_Bullet()
1492
	ATTACK = true
1493
	Rooted = false
1494
	for i=0, 0.05, 0.1 / Animation_Speed do
1495
		Swait()
1496
		turnto(Mouse.Hit.p)
1497
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1498
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1499
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1500
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1501
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1502
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1503
	end
1504
	repeat
1505
		for i=0, 0.05, 0.1 / Animation_Speed do
1506
			Swait()
1507
			turnto(Mouse.Hit.p)
1508
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1509
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1510
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1511
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1512
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1513
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1514
		end
1515
		local HIT,POS = CastProperRay(RightArm.Position, Mouse.Hit.p, 1000, Character)
1516
		SpawnTrail(RightArm.Position,POS,true)
1517
		if HIT ~= nil then
1518
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1519
				Banish(HIT.Parent)
1520
			end
1521
		end
1522
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(10,0,10), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = RightArm.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255/255,0/255,0/255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1523
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(10,0,10), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(255/255,0/255,0/255), SoundID = 340722848, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1524
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(10,0,10), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(255/255,0/255,0/255), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1525
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(10,0,10), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(255/255,0/255,0/255), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1526
		for i=0, 0.05, 0.1 / Animation_Speed do
1527
			Swait()
1528
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1529
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1530
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1531
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1532
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1533
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1534
		end
1535
	until KEYHOLD == false
1536
	ATTACK = false
1537
	Rooted = false
1538
end
1539
1540
function Forgive_Sins()
1541
	---chatfunc("You are forgiven.")
1542
1543
	for p,v in next, TOBANISH do
1544
		TOBANISH[p] = nil
1545
	end
1546
end
1547
1548
function Taunt()
1549
	ATTACK = true
1550
	Rooted = true
1551
	local SOUND = CreateSound("134978657", Head, 10, 1.3)
1552
	Swait()
1553
	repeat
1554
		Swait()
1555
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.5, -0.5) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1556
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1557
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-55), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1558
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-55), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1559
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1560
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1561
	until SOUND.Playing == false
1562
	ATTACK = false
1563
	Rooted = false
1564
end
1565
1566
function Prison_Key()
1567
	if Mouse.Target ~= nil then
1568
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
1569
			local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
1570
			local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
1571
			local GYRO = IT("BodyGyro",RootPart)
1572
			GYRO.D = 750
1573
			GYRO.P = 20000
1574
			GYRO.MaxTorque = VT(0,40000000,0)
1575
			local grav = Instance.new("BodyPosition",TORSO)
1576
			grav.D = 15
1577
			grav.P = 20000
1578
			grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1579
			grav.position = TORSO.Position
1580
			local GYRO2 = IT("BodyGyro",TORSO)
1581
			GYRO2.D = 750
1582
			GYRO2.P = 20000
1583
			GYRO2.MaxTorque = VT(0,40000000,0)
1584
			GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1585
			grav.Name = "Jail"
1586
			local LOCKPARTS = {}
1587
			ATTACK = true
1588
			Rooted = false
1589
			local LOCK = IT("Model",Effects)
1590
			LOCK.Name = "Lock"
1591
			local LOCK2 = IT("Model",LOCK)
1592
			LOCK2.Name = "Metal"
1593
			--CREATE LOCK--
1594
				local BASE = CreatePart(3, LOCK, "Neon", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
1595
				LOCK.PrimaryPart = BASE
1596
				BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
1597
				local PRT = CreatePart(3, LOCK, "Neon", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
1598
				PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
1599
				MakeForm(PRT,"Cyl")
1600
				local PRT = CreatePart(3, LOCK, "Neon", 0, 0, "Gold", "Hole", VT(1, 1, 1))
1601
				PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
1602
				MakeForm(PRT,"Cyl")
1603
				local PRT = CreatePart(3, LOCK, "Neon", 0, 0, "Gold", "Hole", VT(0.5, 1, 1))
1604
				PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
1605
				for i = 1, 45 do
1606
					local PRT = CreatePart(3, LOCK2, "Neon", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1607
					PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
1608
				end
1609
				local PRT = CreatePart(3, LOCK2, "Neon", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1610
				PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
1611
				LOCK2.PrimaryPart = PRT
1612
			---------------
1613
			local CHILDREN = LOCK:GetDescendants()
1614
			for index, CHILD in pairs(CHILDREN) do
1615
				if CHILD:IsA("BasePart") then
1616
					CHILD.Transparency = 1
1617
				end
1618
			end
1619
			for i = 1, 75 do
1620
				LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
1621
				Swait()
1622
				GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1623
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1624
				local CHILDREN = LOCK:GetDescendants()
1625
				for index, CHILD in pairs(CHILDREN) do
1626
					if CHILD:IsA("BasePart") then
1627
						CHILD.Transparency = CHILD.Transparency - 1/75
1628
					end
1629
				end
1630
			end
1631
			HUM.DisplayDistanceType = "None"
1632
			local KEY = IT("Model",Effects)
1633
			KEY.Name = "Key"
1634
			--CREATE KEY--
1635
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, BrickColor.Random(), "KeyBase", VT(0.1, 1, 0.1),false)
1636
				KEY.PrimaryPart = KBASE
1637
				KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
1638
				local WLD = weldBetween(RightArm,KBASE)
1639
				for i = 1, 45 do
1640
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, BrickColor.Random(), "Key", VT(0.1, 0.1, 0.1),false)
1641
					PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
1642
					weldBetween(KBASE,PRT)
1643
				end
1644
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, BrickColor.Random(), "Key", VT(0.3, 0.1, 0.1),false)
1645
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
1646
				weldBetween(KBASE,PRT)
1647
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, BrickColor.Random(), "Key", VT(0.3, 0.1, 0.1),false)
1648
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
1649
				weldBetween(KBASE,PRT)
1650
			--------------
1651
			Rooted = true
1652
			Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
1653
			coroutine.resume(coroutine.create(function()
1654
				for i = 1, 10 do
1655
					Swait()
1656
					GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1657
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1658
				end
1659
				CreateSound(1149318312,BASE,5,1,false)
1660
				CreateSound(160772554,BASE,3,1,false)
1661
				LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
1662
				for i = 1, 4 do
1663
					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 = BrickColor.Random().Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1664
				end
1665
				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 = BrickColor.Random().Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1666
				wait(1)
1667
				TORSO.Parent.Parent = LOCK
1668
				for i = 1, 75 do
1669
					Swait()
1670
					local CHILDREN = KEY:GetDescendants()
1671
					for index, CHILD in pairs(CHILDREN) do
1672
						if CHILD:IsA("BasePart") then
1673
							CHILD.Transparency = i/25
1674
						end
1675
					end
1676
					local CHILDREN = LOCK:GetDescendants()
1677
					for index, CHILD in pairs(CHILDREN) do
1678
						if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
1679
							CHILD.Transparency = CHILD.Transparency + 1/75
1680
						elseif CHILD.ClassName == "Decal" then
1681
							CHILD.Transparency = CHILD.Transparency + 1/75
1682
						end
1683
					end
1684
				end
1685
				TORSO.Parent:ClearAllChildren()
1686
				KEY:remove()
1687
				LOCK:remove()
1688
			end))
1689
			Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
1690
			GYRO:remove()
1691
			ATTACK = false
1692
			Rooted = false
1693
		end
1694
	end
1695
end
1696
1697
function Cuffs()
1698
	local TARGET = Mouse.Target
1699
	if TARGET ~= nil then
1700
		if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
1701
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
1702
			local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
1703
			if ROOT and HUM.Health > 0 then
1704
				local FOE = Mouse.Target.Parent
1705
				ATTACK = true
1706
				Rooted = true
1707
				RootPart.CFrame = ROOT.CFrame*CF(0,0,2)
1708
				ROOT.Anchored = true
1709
				CreateSound(289556450, RootPart, 5, 1.4, false)
1710
				Chatter("Stay down.",0)
1711
				for i=0, 2, 0.1 / Animation_Speed do
1712
					Swait()
1713
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1714
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1715
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1716
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1717
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(15), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1718
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1719
				end
1720
				local RIGHTCUFF = nil
1721
				local LEFTCUFF = nil
1722
				local ChainLink = nil
1723
				CreateSound(1279090548, ROOT, 10, 1.4, false)
1724
				for _, c in pairs(FOE:GetChildren()) do
1725
					if c.Name == "Left Arm" or c.Name == "LeftLowerArm" then
1726
						LEFTCUFF = CreatePart(3, FOE, "Metal", 0, 0, "Mid gray", "Cuff", VT(c.Size.X+0.1, 0.1, c.Size.Z+0.1),false)
1727
						LEFTCUFF.CFrame = c.CFrame
1728
						weldBetween(c,LEFTCUFF)
1729
					end
1730
				end
1731
				for _, c in pairs(FOE:GetChildren()) do
1732
					if c.Name == "Right Arm" or c.Name == "RightLowerArm" then
1733
						RIGHTCUFF = CreatePart(3, FOE, "Metal", 0, 0, "Mid gray", "Cuff", VT(c.Size.X+0.1, 0.1, c.Size.Z+0.1),false)
1734
						RIGHTCUFF.CFrame = c.CFrame
1735
						weldBetween(c,RIGHTCUFF)
1736
					end
1737
				end
1738
				if RIGHTCUFF and LEFTCUFF then
1739
					local A = IT("Attachment",RIGHTCUFF)
1740
					local B = IT("Attachment",LEFTCUFF)
1741
					ChainLink = IT("Beam",FOE)
1742
					ChainLink.Texture = "rbxassetid://73042633"
1743
					ChainLink.Color = ColorSequence.new(C3(0.8,0.8,0.8))
1744
					ChainLink.TextureSpeed = 0
1745
					ChainLink.Width0 = 1
1746
					ChainLink.Width1 = 1
1747
					ChainLink.Segments = 25
1748
					ChainLink.TextureLength = 3
1749
					ChainLink.Attachment0 = B
1750
					ChainLink.Attachment1 = A
1751
					ChainLink.FaceCamera = true
1752
					ChainLink.Transparency = NumberSequence.new(0)
1753
				end
1754
				coroutine.resume(coroutine.create(function()
1755
					wait(4)
1756
					if RIGHTCUFF and LEFTCUFF then
1757
						RIGHTCUFF:remove()
1758
						LEFTCUFF:remove()
1759
						ChainLink:remove()
1760
						local bv = Instance.new("BodyVelocity",ROOT) 
1761
						bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1762
						bv.velocity = CF(ROOT.Position-VT(0,5,0),ROOT.Position).lookVector*70
1763
						Debris:AddItem(bv,0.05)
1764
						ApplyDamage(HUM,100e10)
1765
						HUM.PlatformStand = false
1766
						WACKYEFFECT({Time = 50, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(6,6,6), Transparency = 0, Transparency2 = 1, CFrame = CF(RIGHTCUFF.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Glass = C3(1,1,0), SoundID = 174580476, SoundPitch = 1, SoundVolume = 7})
1767
						WACKYEFFECT({Time = 50, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(6,6,6), Transparency = 0, Transparency2 = 1, CFrame = CF(LEFTCUFF.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Glass = C3(1,0,0), SoundID = 174580476, SoundPitch = 1, SoundVolume = 7})
1768
					end
1769
				end))
1770
				for i=0, 1.5, 0.1 / Animation_Speed do
1771
					Swait()
1772
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1773
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(5), RAD(0)), 1 / Animation_Speed)
1774
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(70), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1775
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(70), RAD(0), RAD(15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1776
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(15), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1777
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1778
				end
1779
				HUM.PlatformStand = true
1780
				ROOT.CFrame = ROOT.CFrame * ANGLES(RAD(15), RAD(0), RAD(0))
1781
				ROOT.Anchored = false
1782
				Chatter("Begone.",0)
1783
				for i=0, 3, 0.1 / Animation_Speed do
1784
					Swait()
1785
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(-35)), 1 / Animation_Speed)
1786
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
1787
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-1), RAD(0), RAD(3)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1788
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-1), RAD(0), RAD(-3)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1789
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-12), RAD(80), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1790
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-60), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1791
				end
1792
				ATTACK = false
1793
				Rooted = false
1794
			end
1795
		end
1796
	end
1797
end
1798
1799
--//=================================\\
1800
--||	  ASSIGN THINGS TO KEYS
1801
--\\=================================//
1802
1803
function MouseDown(Mouse)
1804
	if ATTACK == false then
1805
		
1806
	end
1807
end
1808
1809
function MouseUp(Mouse)
1810
HOLD = false
1811
end
1812
1813
function KeyDown(Key)
1814
	KEYHOLD = true
1815
	if TRANSFORMED == true and Rooted == false then
1816
		if Key == "t" and ATTACK == false then
1817
			Taunt()
1818
		end
1819
1820
		if Key == "z" and ATTACK == false then
1821
			Warp()
1822
		end
1823
	
1824
		if Key == "b" and ATTACK == false then
1825
			DeathlyDash()
1826
		end
1827
	
1828
		if Key == "c" and ATTACK == false then
1829
			Prison_Key()
1830
		end
1831
	
1832
		if Key == "v" and ATTACK == false then
1833
			FatalWave()
1834
		end
1835
	
1836
		if Key == "x" and ATTACK == false then
1837
			Reap()
1838
		end
1839
		
1840
		if Key == "e" and ATTACK == false then
1841
			Banisher_Bullet()
1842
		end
1843
		
1844
		if Key == "q" and ATTACK == false then
1845
			Forgive_Sins()
1846
		end
1847
		
1848
		if Key ==  "f" and ATTACK == false then
1849
			Cuffs()
1850
		end
1851
	end
1852
1853
	if Key == "9" and ATTACK == false then
1854
		CreateSound("135017578", Effects, 5, 1)
1855
	end
1856
end
1857
1858
function KeyUp(Key)
1859
	KEYHOLD = false
1860
end
1861
1862
	Mouse.Button1Down:connect(function(NEWKEY)
1863
		MouseDown(NEWKEY)
1864
	end)
1865
	Mouse.Button1Up:connect(function(NEWKEY)
1866
		MouseUp(NEWKEY)
1867
	end)
1868
	Mouse.KeyDown:connect(function(NEWKEY)
1869
		KeyDown(NEWKEY)
1870
	end)
1871
	Mouse.KeyUp:connect(function(NEWKEY)
1872
		KeyUp(NEWKEY)
1873
	end)
1874
1875
--//=================================\\
1876
--\\=================================//
1877
1878
1879
function unanchor()
1880
	if UNANCHOR == true then
1881
		RootPart.Anchored = false
1882
	end
1883
	for _, c in pairs(SCYTHE:GetChildren()) do
1884
		if c.ClassName == "Part" then
1885
			c.Anchored = false
1886
		end
1887
	end
1888
	for _, c in pairs(Weapon:GetChildren()) do
1889
		if c.ClassName == "Part" then
1890
			c.Anchored = false
1891
		end
1892
	end
1893
end
1894
1895
1896
--//=================================\\
1897
--||	WRAP THE WHOLE SCRIPT UP
1898
--\\=================================//
1899
1900
Humanoid.Changed:connect(function(Jump)
1901
	if Jump == "Jump" and (Disable_Jump == true) then
1902
		Humanoid.Jump = false
1903
	end
1904
end)
1905
1906
local FF = IT("ForceField",Character)
1907
FF.Visible = false
1908
1909
INSTANT = false
1910
Speed = 20
1911
1912
while true do
1913
	Swait()
1914
	SINE = SINE + CHANGE
1915
		ANIMATE.Parent = nil
1916
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1917
		IDLEANIMATION:Play()
1918
		if TRANSFORMED == true then
1919
			--tecks2.TextTransparency = 0
1920
			for _, c in pairs(Character:GetChildren()) do
1921
				if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
1922
					c.Anchored = false
1923
					c.Transparency = 0
1924
				end
1925
			end
1926
			for _, c in pairs(Weapon:GetChildren()) do
1927
				if c.ClassName == "Part" then
1928
					c.Transparency = 0
1929
				end
1930
			end
1931
			for _, c in pairs(SCYTHE:GetChildren()) do
1932
				if c.ClassName == "Part" then
1933
					if c.Material ~= Enum.Material.Neon then
1934
						c.Transparency = 0
1935
					end
1936
					c.Color = C3(0,0,0)
1937
					if c:FindFirstChild("PE") then
1938
						c.PE.Enabled = true
1939
					end
1940
				end
1941
			end
1942
			local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1943
			local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1944
			local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1945
			local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1946
			local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1947
			if ATTACK == false and VALUE2 == false then
1948
				HandleWeld.C0 = Clerp(HandleWeld.C0, CF(2, 3 + 0.35 * COS(SINE / 12), 1) * ANGLES(RAD(45  + 15 * COS(SINE / 12)), RAD(-45), RAD(0)), 0.2 / Animation_Speed)
1949
			end
1950
			if ANIM == "Walk" and TORSOVELOCITY > 1 then
1951
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1952
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * 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)
1953
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1954
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1955
			elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1956
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1957
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1958
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1959
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1960
			end
1961
			if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1962
				ANIM = "Jump"
1963
				if ATTACK == false then
1964
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1965
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1966
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1967
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1968
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1969
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1970
			       end
1971
			elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1972
				ANIM = "Fall"
1973
				if ATTACK == false then
1974
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1975
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1976
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1977
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1978
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1979
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1980
				end
1981
			elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1982
				ANIM = "Idle"
1983
				if ATTACK == false then
1984
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.1, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1985
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1986
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1987
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.35, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1988
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1989
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1990
				end
1991
			elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1992
				ANIM = "Walk"
1993
				WALK = WALK + 1 / Animation_Speed
1994
				if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1995
					WALK = 0
1996
					if WALKINGANIM == true then
1997
						WALKINGANIM = false
1998
					elseif WALKINGANIM == false then
1999
						WALKINGANIM = true
2000
					end
2001
				end
2002
				--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2003
				--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2004
				if ATTACK == false then
2005
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2006
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2007
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2008
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
2009
					RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
2010
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
2011
				end
2012
			end
2013
		end
2014
	--end
2015
	Humanoid.DisplayDistanceType = "None"
2016
	unanchor()
2017
	
2018
	Humanoid.MaxHealth = "inf"
2019
	Humanoid.Health = "inf"
2020
	if Rooted == false then
2021
		Disable_Jump = false
2022
		Humanoid.WalkSpeed = Speed
2023
	elseif Rooted == true then
2024
		Disable_Jump = true
2025
		Humanoid.WalkSpeed = 0
2026
	end
2027
	if Head:FindFirstChild("face") then
2028
		Head.face:remove()
2029
	end
2030
	local MATHS = {"0","1"}
2031
	Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
2032
	Humanoid.PlatformStand = false
2033
	if INTRO == false and INSTANT == false then
2034
		INTRO = true
2035
		coroutine.resume(coroutine.create(function()
2036
			sick:Play()
2037
			Intro()
2038
		end))
2039
	end
2040
	if INSTANT == true then
2041
		if TRANSFORMED == false then
2042
			sick.TimePosition = 60
2043
			sick:Play()
2044
		end
2045
		TRANSFORMED = true
2046
	end
2047
	script.Parent = PlayerGui
2048
	Character.Parent = workspace
2049
	Humanoid.Parent = Character
2050
end
2051
--//=================================\\
2052
--\\=================================//
2053
2054
2055
2056
2057
2058
--//====================================================\\--
2059
--||			  		 END OF SCRIPT
2060
--\\====================================================//--