View difference between Paste ID: 4CpXSUbX and mZbQGEYu
SHOW: | | - or go back to the newest paste.
1
2
--https://github.com/Mokiros/roblox-FE-compatibility
3
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
4
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
5
local RealPlayer = Player
6
do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
7
Player = game.Players.LocalPlayer
8
	Character = Player.Character
9
	local txt = Instance.new("BillboardGui", Character)
10
	txt.Adornee = Character.Head
11
	txt.Name = "_status"
12
	txt.Size = UDim2.new(2, 0, 1.2, 0)
13
	txt.StudsOffset = Vector3.new(-9, 10, 0)
14
	local text = Instance.new("TextLabel", txt)
15
	text.Size = UDim2.new(10, 0, 7, 0)
16-
	text.Font = "Antique"
16+
17
	text.TextScaled = true
18-
        text.Text = "Infectist"
18+
19
	text.BackgroundTransparency = 1 
20
	text.TextTransparency = 0
21
	text.TextStrokeTransparency = 0
22
	text.Font = "Fantasy"
23
	text.TextStrokeColor3 = Color3.new(1,0,0)
24
        text.Text = "Normal"
25
26
--//====================================================\\--
27
--||			   CREATED BY SHACKLUSTER EDIT BY NAMECLAN
28
--\\====================================================//--
29
30
script:ClearAllChildren()
31
wait(0.2)
32
33
Player = game:GetService("Players").LocalPlayer
34
PlayerGui = Player.PlayerGui
35
Cam = workspace.CurrentCamera
36
Backpack = Player.Backpack
37
Character = Player.Character
38
Humanoid = Character.Humanoid
39
Mouse = Player:GetMouse()
40
RootPart = Character["HumanoidRootPart"]
41
Torso = Character["Torso"]
42
Head = Character["Head"]
43
RightArm = Character["Right Arm"]
44
LeftArm = Character["Left Arm"]
45
RightLeg = Character["Right Leg"]
46
LeftLeg = Character["Left Leg"]
47
RootJoint = RootPart["RootJoint"]
48
Neck = Torso["Neck"]
49
RightShoulder = Torso["Right Shoulder"]
50
LeftShoulder = Torso["Left Shoulder"]
51
RightHip = Torso["Right Hip"]
52
LeftHip = Torso["Left Hip"]
53
local TIME = 0
54
local sick = Instance.new("Sound",Torso)
55
56
IT = Instance.new
57
CF = CFrame.new
58
VT = Vector3.new
59
RAD = math.rad
60
C3 = Color3.new
61
UD2 = UDim2.new
62
BRICKC = BrickColor.new
63
ANGLES = CFrame.Angles
64
EULER = CFrame.fromEulerAnglesXYZ
65
COS = math.cos
66
ACOS = math.acos
67
SIN = math.sin
68
ASIN = math.asin
69
ABS = math.abs
70
MRANDOM = math.random
71
FLOOR = math.floor
72
73
--//=================================\\
74
--|| 	      USEFUL VALUES
75
--\\=================================//
76
77
Animation_Speed = 3
78
local FORCERESET = false
79
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
80
local Speed = 18
81
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
82
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
83
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
84
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
85
local DAMAGEMULTIPLIER = 1
86
local ANIM = "Idle"
87
local ATTACK = false
88
local EQUIPPED = false
89
local HOLD = false
90
local COMBO = 1
91
local Rooted = false
92
local SINE = 0
93
local KEYHOLD = false
94
local CHANGE = 2 / Animation_Speed
95
local WALKINGANIM = false
96
local VALUE1 = false
97
local VALUE2 = false
98
local ROBLOXIDLEANIMATION = IT("Animation")
99
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
100
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
101
--ROBLOXIDLEANIMATION.Parent = Humanoid
102
local WEAPONGUI = IT("ScreenGui", PlayerGui)
103
WEAPONGUI.Name = "BanishV3Gui"
104
local Weapon = IT("Model")
105
Weapon.Name = "Adds"
106
local Effects = IT("Folder", Weapon)
107
Effects.Name = "Effects"
108
local KnifeM = IT("Model")
109
KnifeM.Name = "KAdds"
110
local ANIMATOR = Humanoid.Animator
111-
local SONG = 494139763
111+
112
local UNANCHOR = true
113-
local PITCH = 1
113+
114
script.Parent = PlayerGui
115
local FADERS = true
116
local MODE = "Infectist"
117
local SONG = 155334395
118
local VOLUME = 3.5
119
local PITCH = 0.89
120
local SIZE = 1
121
local GHOSTS = {}
122
ANIMATE:remove()
123
Character.Archivable = true
124
script.Parent = WEAPONGUI
125
local GHOSTBASE = Character:Clone()
126
GHOSTBASE.Parent = nil
127
GHOSTBASE.Name = "Infected"
128
for _, c in pairs(GHOSTBASE:GetChildren()) do
129
	if c.ClassName == "Part" and c.Transparency < 1 then
130
		c.Color = C3(0,0,0)
131
		if c.ClassName == "Accessory" or c.ClassName == "Hat" or c.ClassName == "CharacterMesh" or c.ClassName == "Shirt" or c.ClassName == "Pants" then
132
			c:remove()
133
		end
134
	end
135
end
136
local Effects = IT("Folder", Character)
137
Effects.Name = "Effects"
138
Character.Archivable = false
139
local BODY = {}
140
local SHOCKSOUND = 1544280726
141
local RINGSOUND = 340505360
142
local ULTHIT = 412831137
143
144
--//=================================\\
145
--\\=================================//
146
147
148
--//=================================\\
149
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
150
--\\=================================//
151
152
ArtificialHB = Instance.new("BindableEvent", script)
153
ArtificialHB.Name = "ArtificialHB"
154
155
script:WaitForChild("ArtificialHB")
156
157
frame = Frame_Speed
158
tf = 0
159
allowframeloss = false
160
tossremainder = false
161
lastframe = tick()
162
script.ArtificialHB:Fire()
163
164
game:GetService("RunService").Heartbeat:connect(function(s, p)
165
	tf = tf + s
166
	if tf >= frame then
167
		if allowframeloss then
168
			script.ArtificialHB:Fire()
169
			lastframe = tick()
170
		else
171
			for i = 1, math.floor(tf / frame) do
172
				script.ArtificialHB:Fire()
173
			end
174
		lastframe = tick()
175
		end
176
		if tossremainder then
177
			tf = 0
178
		else
179
			tf = tf - frame * math.floor(tf / frame)
180
		end
181
	end
182
end)
183
184
--//=================================\\
185
--\\=================================//
186
187
--//=================================\\
188
--|| 	      SOME FUNCTIONS
189
--\\=================================//
190
191
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
192
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
193
end
194
195
function PositiveAngle(NUMBER)
196
	if NUMBER >= 0 then
197
		NUMBER = 0
198
	end
199
	return NUMBER
200
end
201
202
function NegativeAngle(NUMBER)
203
	if NUMBER <= 0 then
204
		NUMBER = 0
205
	end
206
	return NUMBER
207
end
208
209
function Swait(NUMBER)
210
	if NUMBER == 0 or NUMBER == nil then
211
		ArtificialHB.Event:wait()
212
	else
213
		for i = 1, NUMBER do
214
			ArtificialHB.Event:wait()
215
		end
216
	end
217
end
218
219
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
220
	local NEWMESH = IT(MESH)
221
	if MESH == "SpecialMesh" then
222
		NEWMESH.MeshType = MESHTYPE
223
		if MESHID ~= "nil" and MESHID ~= "" then
224
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
225
		end
226
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
227
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
228
		end
229
	end
230
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
231
	NEWMESH.Scale = SCALE
232
	NEWMESH.Parent = PARENT
233
	return NEWMESH
234
end
235
236
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
237
	local NEWPART = IT("Part")
238
	NEWPART.formFactor = FORMFACTOR
239
	NEWPART.Reflectance = REFLECTANCE
240
	NEWPART.Transparency = TRANSPARENCY
241
	NEWPART.CanCollide = false
242
	NEWPART.Locked = true
243
	NEWPART.Anchored = true
244
	if ANCHOR == false then
245
		NEWPART.Anchored = false
246
	end
247
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
248
	NEWPART.Name = NAME
249
	NEWPART.Size = SIZE
250
	NEWPART.Position = Torso.Position
251
	NEWPART.Material = MATERIAL
252
	NEWPART:BreakJoints()
253
	NEWPART.Parent = PARENT
254
	return NEWPART
255
end
256
257
	local function weldBetween(a, b)
258
	    local weldd = Instance.new("ManualWeld")
259
	    weldd.Part0 = a
260
	    weldd.Part1 = b
261
	    weldd.C0 = CFrame.new()
262
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
263
	    weldd.Parent = a
264
	    return weldd
265
	end
266
267
268
function QuaternionFromCFrame(cf)
269
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
270
	local trace = m00 + m11 + m22
271
	if trace > 0 then 
272
		local s = math.sqrt(1 + trace)
273
		local recip = 0.5 / s
274
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
275
	else
276
		local i = 0
277
		if m11 > m00 then
278
			i = 1
279
		end
280
		if m22 > (i == 0 and m00 or m11) then
281
			i = 2
282
		end
283
		if i == 0 then
284
			local s = math.sqrt(m00 - m11 - m22 + 1)
285
			local recip = 0.5 / s
286
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
287
		elseif i == 1 then
288
			local s = math.sqrt(m11 - m22 - m00 + 1)
289
			local recip = 0.5 / s
290
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
291
		elseif i == 2 then
292
			local s = math.sqrt(m22 - m00 - m11 + 1)
293
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
294
		end
295
	end
296
end
297
 
298
function QuaternionToCFrame(px, py, pz, x, y, z, w)
299
	local xs, ys, zs = x + x, y + y, z + z
300
	local wx, wy, wz = w * xs, w * ys, w * zs
301
	local xx = x * xs
302
	local xy = x * ys
303
	local xz = x * zs
304
	local yy = y * ys
305
	local yz = y * zs
306
	local zz = z * zs
307
	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))
308
end
309
 
310
function QuaternionSlerp(a, b, t)
311
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
312
	local startInterp, finishInterp;
313
	if cosTheta >= 0.0001 then
314
		if (1 - cosTheta) > 0.0001 then
315
			local theta = ACOS(cosTheta)
316
			local invSinTheta = 1 / SIN(theta)
317
			startInterp = SIN((1 - t) * theta) * invSinTheta
318
			finishInterp = SIN(t * theta) * invSinTheta
319
		else
320
			startInterp = 1 - t
321
			finishInterp = t
322
		end
323
	else
324
		if (1 + cosTheta) > 0.0001 then
325
			local theta = ACOS(-cosTheta)
326
			local invSinTheta = 1 / SIN(theta)
327
			startInterp = SIN((t - 1) * theta) * invSinTheta
328
			finishInterp = SIN(t * theta) * invSinTheta
329
		else
330
			startInterp = t - 1
331
			finishInterp = t
332
		end
333
	end
334
	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
335
end
336
337
function Clerp(a, b, t)
338
	local qa = {QuaternionFromCFrame(a)}
339
	local qb = {QuaternionFromCFrame(b)}
340
	local ax, ay, az = a.x, a.y, a.z
341
	local bx, by, bz = b.x, b.y, b.z
342
	local _t = 1 - t
343
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
344
end
345
346
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
347
	local frame = IT("Frame")
348
	frame.BackgroundTransparency = TRANSPARENCY
349
	frame.BorderSizePixel = BORDERSIZEPIXEL
350
	frame.Position = POSITION
351
	frame.Size = SIZE
352
	frame.BackgroundColor3 = COLOR
353
	frame.BorderColor3 = BORDERCOLOR
354
	frame.Name = NAME
355
	frame.Parent = PARENT
356
	return frame
357
end
358
359
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
360
	local label = IT("TextLabel")
361
	label.BackgroundTransparency = 1
362
	label.Size = UD2(1, 0, 1, 0)
363
	label.Position = UD2(0, 0, 0, 0)
364
	label.TextColor3 = TEXTCOLOR
365
	label.TextStrokeTransparency = STROKETRANSPARENCY
366
	label.TextTransparency = TRANSPARENCY
367
	label.FontSize = TEXTFONTSIZE
368
	label.Font = TEXTFONT
369
	label.BorderSizePixel = BORDERSIZEPIXEL
370
	label.TextScaled = false
371
	label.Text = TEXT
372
	label.Name = NAME
373
	label.Parent = PARENT
374
	return label
375
end
376
377
function NoOutlines(PART)
378
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
379
end
380
381
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
382
	local NEWWELD = IT(TYPE)
383
	NEWWELD.Part0 = PART0
384
	NEWWELD.Part1 = PART1
385
	NEWWELD.C0 = C0
386
	NEWWELD.C1 = C1
387
	NEWWELD.Parent = PARENT
388
	return NEWWELD
389
end
390
391
local S = IT("Sound")
392
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
393
	local NEWSOUND = nil
394
	coroutine.resume(coroutine.create(function()
395
		NEWSOUND = S:Clone()
396
		NEWSOUND.Parent = PARENT
397
		NEWSOUND.Volume = VOLUME
398
		NEWSOUND.Pitch = PITCH
399
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
400
		NEWSOUND:play()
401
		if DOESLOOP == true then
402
			NEWSOUND.Looped = true
403
		else
404
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
405
			NEWSOUND:remove()
406
		end
407
	end))
408
	return NEWSOUND
409
end
410
411
function CFrameFromTopBack(at, top, back)
412
	local right = top:Cross(back)
413
	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)
414
end
415
416
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
417
function WACKYEFFECT(Table)
418
	local TYPE = (Table.EffectType or "Sphere")
419
	local SIZE = (Table.Size or VT(1,1,1))
420
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
421
	local TRANSPARENCY = (Table.Transparency or 0)
422
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
423
	local CFRAME = (Table.CFrame or Torso.CFrame)
424
	local MOVEDIRECTION = (Table.MoveToPos or nil)
425
	local ROTATION1 = (Table.RotationX or 0)
426
	local ROTATION2 = (Table.RotationY or 0)
427
	local ROTATION3 = (Table.RotationZ or 0)
428
	local MATERIAL = (Table.Material or "Neon")
429
	local COLOR = (Table.Color or C3(1,1,1))
430
	local TIME = (Table.Time or 45)
431
	local SOUNDID = (Table.SoundID or nil)
432
	local SOUNDPITCH = (Table.SoundPitch or nil)
433
	local SOUNDVOLUME = (Table.SoundVolume or nil)
434
	coroutine.resume(coroutine.create(function()
435
		local PLAYSSOUND = false
436
		local SOUND = nil
437
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
438
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
439
			PLAYSSOUND = true
440
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
441
		end
442
		EFFECT.Color = COLOR
443
		local MSH = nil
444
		if TYPE == "Sphere" then
445
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
446
		elseif TYPE == "Block" then
447
			MSH = IT("BlockMesh",EFFECT)
448
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
449
		elseif TYPE == "Wave" then
450
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
451
		elseif TYPE == "Ring" then
452
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
453
		elseif TYPE == "Slash" then
454
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
455
		elseif TYPE == "Round Slash" then
456
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
457
		elseif TYPE == "Swirl" then
458
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
459
		elseif TYPE == "Skull" then
460
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
461
		elseif TYPE == "Crystal" then
462
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
463
		end
464
		if MSH ~= nil then
465
			local MOVESPEED = nil
466
			if MOVEDIRECTION ~= nil then
467
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
468
			end
469
			local GROWTH = SIZE - ENDSIZE
470
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
471
			if TYPE == "Block" then
472
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
473
			else
474
				EFFECT.CFrame = CFRAME
475
			end
476
			for LOOP = 1, TIME+1 do
477
				Swait()
478
				MSH.Scale = MSH.Scale - GROWTH/TIME
479
				if TYPE == "Wave" then
480
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
481
				end
482
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
483
				if TYPE == "Block" then
484
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
485
				else
486
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
487
				end
488
				if MOVEDIRECTION ~= nil then
489
					local ORI = EFFECT.Orientation
490
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
491
					EFFECT.Orientation = ORI
492
				end
493
			end
494
			if PLAYSSOUND == false then
495
				EFFECT:remove()
496
			else
497
				SOUND.Stopped:Connect(function()
498
					EFFECT:remove()
499
				end)
500
			end
501
		else
502
			if PLAYSSOUND == false then
503
				EFFECT:remove()
504
			else
505
				repeat Swait() until SOUND.Playing == false
506
				EFFECT:remove()
507
			end
508
		end
509
	end))
510
end
511
512
function MakeForm(PART,TYPE)
513
	if TYPE == "Cyl" then
514
		local MSH = IT("CylinderMesh",PART)
515
	elseif TYPE == "Ball" then
516
		local MSH = IT("SpecialMesh",PART)
517
		MSH.MeshType = "Sphere"
518
	elseif TYPE == "Wedge" then
519
		local MSH = IT("SpecialMesh",PART)
520
		MSH.MeshType = "Wedge"
521
	end
522
end
523
524
function SpawnTrail(FROM,TO,BIG)
525
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Toothpaste", "Trail", VT(0,0,0))
526
	MakeForm(TRAIL,"Cyl")
527
	local DIST = (FROM - TO).Magnitude
528
	if BIG == true then
529
		TRAIL.Size = VT(1.5,DIST,1.5)
530
	else
531
		TRAIL.Size = VT(0.25,DIST,0.25)
532
	end
533
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
534
	coroutine.resume(coroutine.create(function()
535
		for i = 1, 5 do
536
			Swait()
537
			TRAIL.Transparency = TRAIL.Transparency + 0.1
538
		end
539
		TRAIL:remove()
540
	end))
541
end
542
543
function SpawnTrail2(FROM,TO,BIG)
544
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
545
	MakeForm(TRAIL,"Cyl")
546
	local DIST = (FROM - TO).Magnitude
547
	if BIG == true then
548
		TRAIL.Size = VT(8.5,DIST,8.5)
549
	else
550
		TRAIL.Size = VT(6.25,DIST,6.25)
551
	end
552
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
553
	coroutine.resume(coroutine.create(function()
554
		for i = 1, 5 do
555
			Swait()
556
			TRAIL.Transparency = TRAIL.Transparency + 0.1
557
		end
558
		TRAIL:remove()
559
	end))
560
end
561
562
Debris = game:GetService("Debris")
563
564
function CastProperRay(StartPos, EndPos, Distance, Ignore)
565
	local DIRECTION = CF(StartPos,EndPos).lookVector
566
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
567
end
568
569
function turnto(position)
570
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
571
end
572
local asd = Instance.new("ParticleEmitter")
573
asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
574
asd.LightEmission = .1
575
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
576
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
577
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
578
asd.Transparency = bbb
579
asd.Size = aaa
580
asd.ZOffset = .9
581
asd.Acceleration = Vector3.new(0, -15, 0)
582
asd.LockedToPart = false
583
asd.EmissionDirection = "Back"
584
asd.Lifetime = NumberRange.new(1, 2)
585
asd.Rotation = NumberRange.new(-100, 100)
586
asd.RotSpeed = NumberRange.new(-100, 100)
587
asd.Speed = NumberRange.new(10)
588
asd.Enabled = false
589
asd.VelocitySpread = 999
590
591
function getbloody(victim,amount)
592
	local PART = CreatePart(3, Effects, "Metal", 0, 1, "Lime green", "Blood", victim.Size)
593
	PART.CFrame = victim.CFrame
594
	local HITPLAYERSOUNDS = {"356551938","264486467"}
595
	Debris:AddItem(PART,5)
596
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
597
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
598
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
599
	local prtcl = asd:Clone()
600
	prtcl.Parent = PART
601
	prtcl:Emit(amount*10)
602
end
603
604
local Particle = IT("ParticleEmitter",nil)
605
Particle.Enabled = false
606
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
607
Particle.LightEmission = 0.5
608
Particle.Rate = 150
609
Particle.ZOffset = 1
610
Particle.Rotation = NumberRange.new(-180, 180)
611
Particle.RotSpeed = NumberRange.new(-180, 180)
612
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
613
Particle.Color = ColorSequence.new(C3(0,1,0),C3(0.4,0,0))
614
615
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
616
function ParticleEmitter(Table)
617
	local PRTCL = Particle:Clone()
618
	local Speed = Table.Speed or 5
619
	local Drag = Table.Drag or 0
620
	local Size1 = Table.Size1 or 1
621
	local Size2 = Table.Size2 or 5
622
	local Lifetime1 = Table.Lifetime1 or 1
623
	local Lifetime2 = Table.Lifetime2 or 1.5
624
	local Parent = Table.Parent or Torso
625
	local Emit = Table.Emit or 100
626
	local Offset = Table.Offset or 360
627
	local Acel = Table.Acel or VT(0,0,0)
628
	local Enabled = Table.Enabled or false
629
	PRTCL.Parent = Parent
630
	PRTCL.Size = NumberSequence.new(Size1,Size2)
631
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
632
	PRTCL.Speed = NumberRange.new(Speed)
633
	PRTCL.VelocitySpread = Offset
634
	PRTCL.Drag = Drag
635
	PRTCL.Acceleration = Acel
636
	if Enabled == false then
637
		PRTCL:Emit(Emit)
638
		Debris:AddItem(PRTCL,Lifetime2)
639
	else
640
		PRTCL.Enabled = true
641
	end
642
	return PRTCL
643
end
644
645
function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
646
	coroutine.resume(coroutine.create(function()
647
		local FADE = IT("Model",Effects)
648
		if PARENT ~= nil then
649
			FADE.Parent = PARENT
650
		end
651
		FADE.Name = "FadingEffect"
652
		for _, c in pairs(Character:GetChildren()) do
653
			if c.ClassName == "Part" then
654
				c.CanCollide = false
655
				local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Really red"), c.Name, c.Size, true)
656
				FADER.CFrame = c.CFrame
657
				FADER.Color = C3(0,0,0)
658
				if FADER.Name == "Head" then
659
					Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
660
				elseif FADER.Name == "HumanoidRootPart" then
661
					FADE.PrimaryPart = FADER
662
					FADER.Transparency = 1
663
				end
664
			end
665
		end
666
		local TRANS = 0.25/TIMER
667
		local DIST = nil
668
		if MOVEDIRECTION ~= nil then
669
			DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
670
		end
671
		for i = 1, TIMER do
672
			Swait()
673
			for _, c in pairs(FADE:GetChildren()) do
674
				if c.ClassName == "Part" then
675
					c.Transparency = c.Transparency + TRANS
676
				end
677
			end
678
			if MOVEDIRECTION ~= nil then
679
				local ORI = FADE.PrimaryPart.Orientation
680
				FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
681
			end
682
		end
683
		FADE:remove()
684
	end))
685
end
686
687
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH,DOES360)
688
	if FLOOR ~= nil then
689
		for i = 1, AMOUNT do
690
			local DEBREE = CreatePart(3, Effects, "Neon", 0, 0, "Peal", "Debree", BLOCKSIZE, false)
691
			DEBREE.Material = FLOOR.Material
692
			DEBREE.Color = FLOOR.Color
693
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
694
			if DOES360 == true then
695
				DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
696
			else
697
				DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),STRENGTH,MRANDOM(-STRENGTH,STRENGTH))
698
			end
699
			coroutine.resume(coroutine.create(function()
700
				Swait(15)
701
				DEBREE.Parent = workspace
702
				DEBREE.CanCollide = true
703
				Debris:AddItem(DEBREE,SWAIT)
704
			end))
705
		end
706
	end
707
end
708
709
local Decal = IT("Decal")
710
function SpawnBulletHole(POSITION)
711
	local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Bullet hole", VT(0.2,0,0.2))
712
	local decal = Decal:Clone()
713
	decal.Parent = O1
714
	decal.Face = "Top"
715
	decal.Texture = "http://www.roblox.com/asset/?id=130624105"
716
	local decal2 = Decal:Clone()
717
	decal2.Parent = O1
718
	decal2.Face = "Bottom"
719
	decal2.Texture = "http://www.roblox.com/asset/?id=130624105"
720
	O1.CFrame = POSITION*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))
721
	Debris:AddItem(O1,5)
722
end
723
724
function R_RANDOM(CFRAME,DIST)
725
	return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
726
end
727
728
function BulletDetection(FROM,TO)
729
	local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
730
	coroutine.resume(coroutine.create(function()
731
		if AIMHIT ~= nil then
732
			if AIMHIT.Parent ~= Character then
733
				if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
734
					if AIMHIT.Name ~= "Head" and AIMHIT.Parent.ClassName ~= "Accessory" then
735
						ApplyDamage(AIMHIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(15,25),AIMHIT)
736
					elseif AIMHIT.Name == "Head" or AIMHIT.Parent.ClassName == "Accessory" then
737
						if AIMHIT.Parent.ClassName == "Accessory" then
738
							if AIMHIT:FindFirstChild("HatAttachment") or AIMHIT:FindFirstChild("FaceFrontAttachment") or AIMHIT:FindFirstChild("HairAttachment") then
739
								AIMHIT.Parent.Parent:BreakJoints()
740
								if AIMHIT.Parent.Parent:FindFirstChild("Head") then
741
									getbloody(AIMHIT.Parent.Parent.Head,15)
742
									AIMHIT.Parent.Parent.Head:remove()
743
								end
744
							else
745
								ApplyDamage(AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(25,65),AIMHIT)
746
							end
747
						elseif AIMHIT.Name == "Head" then
748
							getbloody(AIMHIT,15)
749
							AIMHIT.Parent:BreakJoints()
750
							AIMHIT:remove()
751
						end
752
					end
753
				else
754
					CreateFlyingDebree(AIMHIT,CF(AIMPOS),7,VT(0.1,0.1,0.1),5,35,true)
755
					SpawnBulletHole(CF(AIMPOS,AIMPOS+NORMAL)*ANGLES(RAD(90),RAD(0),RAD(0)))
756
				end
757
			end
758
		end
759
	end))
760
	return AIMHIT,AIMPOS,NORMAL
761
end
762
763
--//=================================\\
764
--||	     WEAPON CREATION
765
--\\=================================//
766
767
local LASTPART = Head
768
for i = 1, 20 do
769
	local MATH = (1-(i/25))
770
	if LASTPART == Head then
771
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
772
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(15), RAD(-15)), CF(0, 0, 0))
773
		LASTPART = Horn
774
		Horn.Color = C3((i*3-3)/255,0,0)
775
	else
776
		local Horn = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
777
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(-0.3), RAD(0)), CF(0, 0, 0))
778
		LASTPART = Horn
779
		Horn.Color = C3((i*3-3)/255,0,0)
780
	end
781
end
782
local LASTPART = Head
783
for i = 1, 20 do
784
	local MATH = (1-(i/25))
785
	if LASTPART == Head then
786
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
787
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(-15), RAD(15)), CF(0, 0, 0))
788
		LASTPART = Horn
789
		Horn.Color = C3((i*3-3)/255,0,0)
790
	else
791
		local Horn = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
792
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(0.3), RAD(0)), CF(0, 0, 0))
793
		LASTPART = Horn
794
		Horn.Color = C3((i*3-3)/255,0,0)
795
	end
796
end
797
798
function refit()
799
	Character.Parent = workspace
800
	for e = 1, #BODY do
801
		if BODY[e] ~= nil then
802
			local STUFF = BODY[e]
803
			local PART = STUFF[1]
804
			local PARENT = STUFF[2]
805
			local MATERIAL = STUFF[3]
806
			local COLOR = STUFF[4]
807
			local TRANSPARENCY = STUFF[5]
808
			if PART.ClassName == "Part" and PART ~= RootPart then
809
				PART.Material = MATERIAL
810
				PART.Color = COLOR
811
				PART.Transparency = TRANSPARENCY
812
			end
813
			if PART.Parent ~= PARENT then
814
				Humanoid:remove()
815
				PART.Parent = PARENT
816
				Humanoid = IT("Humanoid",Character)
817
			end
818
		end
819
	end
820
end
821
822
local SKILLTEXTCOLOR = C3(0,1,0)
823
local SKILLFONT = "Antique"
824
local SKILLTEXTSIZE = 7
825
826
Humanoid.Died:connect(function()
827
	refit()
828
	ATTACK = true
829
end)
830
831
function printbye(Name)
832
	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 live 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, "}
833
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
834
end
835
836
workspace.ChildAdded:connect(function(instance)
837
    for BANISH = 1, #TOBANISH do
838
		if TOBANISH[BANISH] ~= nil then
839
			if instance.Name == TOBANISH[BANISH] then
840
				coroutine.resume(coroutine.create(function()
841
					printbye(instance.Name)
842
					instance:ClearAllChildren()
843
					Debris:AddItem(instance,0.0005)
844
				end))
845
			end
846
		end
847
	end
848
end)
849
850
851
--//=================================\\
852
--||	    WEAPON HOLDER
853
--\\=================================//
854
855
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
856
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
857
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
858
MakeForm(Part,"Wedge")
859
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
860
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
861
MakeForm(Part,"Wedge")
862
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
863
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
864
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
865
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
866
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
867
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
868
MakeForm(Part,"Cyl")
869
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
870
for i = 1, 8 do
871
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
872
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
873
end
874
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
875
MakeForm(Part,"Cyl")
876
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
877
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
878
MakeForm(Part,"Ball")
879
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
880
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
881
MakeForm(Part,"Wedge")
882
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
883
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
884
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
885
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
886
MakeForm(Part,"Cyl")
887
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
888
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
889
MakeForm(Part,"Cyl")
890
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
891
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
892
MakeForm(Part,"Cyl")
893
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
894
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
895
MakeForm(Part,"Wedge")
896
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
897
local LASTPART = Handle
898
for i = 1, 10 do
899
	if LASTPART == Handle then
900
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
901
		LASTPART = Part
902
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
903
	else
904
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
905
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
906
		LASTPART = Part
907
	end
908
end
909
910
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
911
MakeForm(Barrel,"Cyl")
912
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
913
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
914
MakeForm(Part,"Cyl")
915
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
916
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
917
MakeForm(Part,"Wedge")
918
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
919
local Hole2 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
920
MakeForm(Hole2,"Cyl")
921
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole2, CF(0, 0.98, 0), CF(0, 0, 0))
922
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
923
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
924
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
925
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
926
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
927
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
928
coroutine.resume(coroutine.create(function()
929
	while wait() do
930
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
931
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
932
	end
933
end))
934
935
for _, c in pairs(Weapon:GetDescendants()) do
936
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
937
		c.Material = "Glass"
938
		c.Color = C3(0,0,0)
939
	elseif c.ClassName == "Part" and c.Name == "Eye" then
940
		c.Color = C3(1,0,0)
941
		c.Material = "Neon"
942
	end
943
end
944
945
Weapon.Parent = Character
946
for _, c in pairs(Weapon:GetChildren()) do
947
	if c.ClassName == "Part" then
948
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
949
	end
950
end
951
952
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
953
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
954
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
955
MakeForm(Part,"Wedge")
956
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
957
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
958
MakeForm(Part,"Wedge")
959
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
960
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
961
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
962
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
963
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
964
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
965
MakeForm(Part,"Cyl")
966
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
967
for i = 1, 8 do
968
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
969
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
970
end
971
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
972
MakeForm(Part,"Cyl")
973
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
974
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
975
MakeForm(Part,"Ball")
976
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
977
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
978
MakeForm(Part,"Wedge")
979
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
980
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
981
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
982
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
983
MakeForm(Part,"Cyl")
984
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
985
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
986
MakeForm(Part,"Cyl")
987
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
988
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
989
MakeForm(Part,"Cyl")
990
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
991
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
992
MakeForm(Part,"Wedge")
993
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
994
local LASTPART = Handle
995
for i = 1, 10 do
996
	if LASTPART == Handle then
997
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
998
		LASTPART = Part
999
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1000
	else
1001
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1002
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1003
		LASTPART = Part
1004
	end
1005
end
1006
1007
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1008
MakeForm(Barrel,"Cyl")
1009
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1010
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1011
MakeForm(Part,"Cyl")
1012
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1013
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1014
MakeForm(Part,"Wedge")
1015
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1016
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1017
MakeForm(Hole,"Cyl")
1018
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1019
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1020
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1021
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1022
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1023
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1024
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1025
coroutine.resume(coroutine.create(function()
1026
	while wait() do
1027
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1028
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1029
	end
1030
end))
1031
1032
for _, c in pairs(Weapon:GetDescendants()) do
1033
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1034
		c.Material = "Glass"
1035
		c.Color = C3(0,0,0)
1036
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1037
		c.Color = C3(1,0,0)
1038
		c.Material = "Neon"
1039
	end
1040
end
1041
1042
Weapon.Parent = nil
1043
for _, c in pairs(Weapon:GetChildren()) do
1044
	if c.ClassName == "Part" then
1045
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1046
	end
1047
end
1048
1049
local Knife = CreatePart(3, KnifeM, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,1.2,0.2),false)
1050
local Grip = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Knife, CF(0,-1.2, -0.5) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0.3, 0))
1051
CreateMesh("SpecialMesh", Knife, "FileMesh", "470094777", "470149026", VT(0.2,0.2,0.2), VT(0,0,0))
1052
local A = IT("Attachment",Knife)
1053
A.Position = VT(-0, 0.2, 0.136)
1054
local B = IT("Attachment",Knife)
1055
B.Position = VT(-0, -0.95, -0.982)
1056
local Trail = IT("Trail",Knife)
1057
Trail.Attachment0 = B
1058
Trail.Attachment1 = A
1059
Trail.Lifetime = 0.1
1060
Trail.Transparency = NumberSequence.new(0.5, 1)
1061
Trail.Texture = "http://www.roblox.com/asset/?id=1472703539"
1062
Trail.Enabled = true
1063
1064
KnifeM.Parent = nil
1065
for _, c in pairs(KnifeM:GetChildren()) do
1066
	if c.ClassName == "Part" then
1067
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1068
	end
1069
end
1070
1071
local POWER = 250
1072
local MAXPOWER = 500
1073
1074
--//=================================\\
1075
--||	    TRANSFORMATIONS
1076
--\\=================================//
1077
1078
function Switch1()
1079
	ATTACK = true
1080
	Rooted = true
1081
	if MODE == "Infectist" then
1082
		CreateSound(363808674, Torso, 10, 1, false)
1083
		for i=0, 1, 0.1 / Animation_Speed do
1084
			Swait()
1085
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1086
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1087
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1088
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1089-
		SONG = 468994671
1089+
1090
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1091
		end
1092-
		text.Text = "Plagues"
1092+
1093
WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(0.5,0.5,0.5), Transparency = 0, Transparency2 = 1, CFrame = CF(RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0})
1094
Weapon.Parent = Character
1095
		SONG = 1873219898
1096
		Speed = 32
1097
		VOLUME = 1.5
1098
		text.Text = "Superior Gunner"
1099
		MODE = "Plagues"
1100
	elseif MODE == "Plagues" then
1101
		CreateSound(363808674, Torso, 10, 1, false)
1102
		for i=0, 1, 0.1 / Animation_Speed do
1103
			Swait()
1104
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1105
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1106
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(22 + -11 * COS(SINE / 23)), RAD(-10), RAD(-45)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1107
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(-15 + -11 * COS(SINE / 23)), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1108-
		SONG = 494139763
1108+
1109
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1110
		end
1111-
		text.Text = "Infectist"
1111+
1112
WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.5,0.5,0.5), Size2 = VT(10,10,10), Transparency = 0, Transparency2 = 1, CFrame = CF(RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0})
1113
Weapon.Parent = nil
1114
		SONG = 155334395
1115
		VOLUME = 3.5
1116
		Speed = 18
1117
		text.Text = "Normal"
1118
		MODE = "Infectist"
1119
	end
1120
	ATTACK = false
1121
	Rooted = false
1122
end
1123
1124
function Switch2()
1125
	ATTACK = true
1126
	Rooted = true
1127
	if MODE == "Plagues" then
1128
		CreateSound(363808674, Torso, 10, 1, false)
1129
		for i=0, 1, 0.1 / Animation_Speed do
1130
			Swait()
1131
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1132-
		SONG = 460439241
1132+
1133
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1134
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1135-
		text.Text = "Levithan"
1135+
1136
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-0.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1137
		end
1138
		SONG = 1382488262
1139
		Speed = 0.5
1140
		VOLUME = 2
1141
		text.Text = "Justice Levitation"
1142
		MODE = "Levithan"
1143
	elseif MODE == "Levithan" then
1144
		CreateSound(363808674, Torso, 10, 1, false)
1145
		for i=0, 1, 0.1 / Animation_Speed do
1146
			Swait()
1147
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1148-
		SONG = 468994671
1148+
1149
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(75)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1150
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-75)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1151-
		text.Text = "Plagues"
1151+
1152
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1153
		end
1154
		SONG = 1873219898
1155
		Speed = 32
1156
		VOLUME = 1.5
1157
		text.Text = "Superior Gunner"
1158
		MODE = "Plagues"
1159
	end
1160
	ATTACK = false
1161
	Rooted = false
1162
end
1163
1164
function Switch3()
1165
	ATTACK = true
1166
	Rooted = true
1167
	if MODE == "Infectist" then
1168
		CreateSound(363808674, Torso, 10, 1, false)
1169
		for i=0, 1, 0.1 / Animation_Speed do
1170
			Swait()
1171
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1172
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1173
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1174
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1175
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1176
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1177
		end
1178
WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(0.5,0.5,0.5), Transparency = 0, Transparency2 = 1, CFrame = CF(LeftArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0})
1179
WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(0.5,0.5,0.5), Transparency = 0, Transparency2 = 1, CFrame = CF(RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0})
1180-
		SONG = 719088014
1180+
1181
for _, c in pairs(KnifeM:GetChildren()) do
1182
	if c.ClassName == "Part" then
1183-
		text.Text = "Jester"
1183+
1184
	end
1185
end
1186
		SONG = 1564523997
1187
		Speed = 32
1188
		VOLUME = 1.5
1189
		text.Text = "Crazed"
1190
		MODE = "Jester"
1191
	elseif MODE == "Jester" then
1192
		CreateSound(363808674, Torso, 10, 1, false)
1193
		for i=0, 1, 0.1 / Animation_Speed do
1194
			Swait()
1195
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1196
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1197
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(22 + -11 * COS(SINE / 23)), RAD(-10), RAD(-45)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1198
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(-15 + -11 * COS(SINE / 23)), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1199-
		SONG = 494139763
1199+
1200
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.75 / Animation_Speed)
1201
		end
1202-
		text.Text = "Infectist"
1202+
1203
WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.5,0.5,0.5), Size2 = VT(10,10,10), Transparency = 0, Transparency2 = 1, CFrame = CF(RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0})
1204
KnifeM.Parent = nil
1205
		SONG = 155334395
1206
		VOLUME = 3.5
1207
		Speed = 18
1208
		text.Text = "Normal"
1209
		MODE = "Infectist"
1210
	end
1211
	ATTACK = false
1212
	Rooted = false
1213
end
1214
1215
--//=================================\\
1216
--||			DAMAGING
1217
--\\=================================//
1218
1219
function ApplyDamage(Humanoid,Damage,TorsoPart)
1220
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1221
	defence.Name = ("HitBy"..Player.Name)
1222
	game:GetService("Debris"):AddItem(defence, 0.001)
1223
	Damage = Damage * DAMAGEMULTIPLIER
1224
	if Humanoid.Health ~= 0 then
1225
		local CritChance = MRANDOM(1,100)
1226
		if Damage > Humanoid.Health then
1227
			Damage = math.ceil(Humanoid.Health)
1228
			if Damage == 0 then
1229
				Damage = 0.1
1230
			end
1231
		end
1232
		Humanoid.Health = Humanoid.Health - Damage
1233
	end
1234
end
1235
1236
function Ghostify(POSITION,RANGE)
1237
	local CHILDREN = workspace:GetDescendants()
1238
	for index, CHILD in pairs(CHILDREN) do
1239
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1240
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1241
			if HUM then
1242
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1243
				if TORSO then
1244
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
1245
						local GHOST = GHOSTBASE:Clone()
1246
						GHOST.Parent = Effects
1247
						GHOST.Torso.CFrame = TORSO.CFrame
1248
						table.insert(GHOSTS,GHOST)
1249
						CHILD:remove()
1250
					end
1251
				end
1252
			end
1253
		end
1254
	end
1255
end
1256
1257
function ApplyAoE2(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1258
	for index, CHILD in pairs(workspace:GetDescendants()) do
1259
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1260
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1261
			if HUM then
1262
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1263
				if TORSO then
1264
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1265
						if INSTAKILL == true then
1266
							CHILD:BreakJoints()
1267
						else
1268
							local DMG = MRANDOM(MINDMG,MAXDMG)
1269
							ApplyDamage(HUM,DMG)
1270
						end
1271
						if FLING > 0 then
1272
							for _, c in pairs(CHILD:GetChildren()) do
1273
								if c:IsA("BasePart") then
1274
									local bv = Instance.new("BodyVelocity") 
1275
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1276
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1277
									bv.Parent = c
1278
									Debris:AddItem(bv,0.05)
1279
								end
1280
							end
1281
						end
1282
					end
1283
				end
1284
			end
1285
		end
1286
	end
1287
end
1288
1289
function Banish(Foe)
1290
	if Foe then
1291
		coroutine.resume(coroutine.create(function()
1292
			--if game.Players:FindFirstChild(Foe.Name) then
1293
				table.insert(TOBANISH,Foe.Name)
1294
				printbye(Foe.Name)
1295
			--end
1296
			Foe.Archivable = true
1297
			local CLONE = Foe:Clone()
1298
			Foe:Destroy()
1299
			CLONE.Parent = Effects
1300
			CLONE:BreakJoints()
1301
			local MATERIALS = {"Glass","Neon"}
1302
			for _, c in pairs(CLONE:GetDescendants()) do
1303
				if c:IsA("BasePart") then
1304
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1305
 						CreateSound(340722848, c, 10, 1, false)
1306
					end
1307
					c.Anchored = true
1308
					c.Transparency = c.Transparency + 0.2
1309
					c.Material = MATERIALS[MRANDOM(1,2)]
1310
					c.Color = C3(0,1,0)
1311
					if c.ClassName == "MeshPart" then
1312
						c.TextureID = ""
1313
					end
1314
					if c:FindFirstChildOfClass("SpecialMesh") then
1315
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1316
					end
1317
					if c:FindFirstChildOfClass("Decal") then
1318
						c:FindFirstChildOfClass("Decal"):remove()
1319
					end
1320
					c.Name = "Banished"
1321
					c.CanCollide = false
1322
				else
1323
					c:remove()
1324
				end
1325
			end
1326
			local A = false
1327
			for i = 1, 35 do
1328
				if A == false then
1329
					A = true
1330
				elseif A == true then
1331
					A = false
1332
				end
1333
				for _, c in pairs(CLONE:GetDescendants()) do
1334
					if c:IsA("BasePart") then
1335
						c.Anchored = true
1336
						c.Material = MATERIALS[MRANDOM(1,2)]
1337
						c.Transparency = c.Transparency + 0.8/35
1338
						if A == false then
1339
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1340
						elseif A == true then
1341
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1342
						end
1343
					end
1344
				end
1345
				Swait()
1346
			end
1347
			CLONE:remove()
1348
		end))
1349
	end
1350
end
1351
1352
function ApplyAoE(POSITION,RANGE,ISBANISH)
1353
	local CHILDREN = workspace:GetDescendants()
1354
	for index, CHILD in pairs(CHILDREN) do
1355
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1356
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1357
			if HUM then
1358
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1359
				if TORSO then
1360
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1361
						if ISBANISH == true then
1362
							Banish(CHILD)
1363
						else
1364
							if ISBANISH == "Gravity" then
1365
								HUM.PlatformStand = true
1366
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1367
									local grav = Instance.new("BodyPosition",TORSO)
1368
									grav.D = 15
1369
									grav.P = 20000
1370
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1371
									grav.position = TORSO.Position
1372
									grav.Name = "V3BanishForce"..Player.Name
1373
								else
1374
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1375
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1376
								end
1377
							else
1378
								HUM.PlatformStand = false
1379
							end
1380
						end
1381
					elseif ISBANISH == "Gravity" then
1382
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1383
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1384
							HUM.PlatformStand = false
1385
						end
1386
					end
1387
				end
1388
			end
1389
		end
1390
	end
1391
end
1392
1393
function Kill(Char)
1394
	local NewCharacter = IT("Model",Effects)
1395
	NewCharacter.Name = "Ow im ded ;-;"
1396
	for _, c in pairs(Char:GetDescendants()) do
1397
		if c:IsA("BasePart") and c.Transparency == 0 then
1398
			if c.Parent == Char then
1399
				getbloody(c,5)
1400
			end
1401
			c:BreakJoints()
1402
			c.Material = "Glass"
1403
			c.Color = C3(1,0,0)
1404
			c.CanCollide = true
1405
			c.Transparency = 0.3
1406
			if c:FindFirstChildOfClass("SpecialMesh") then
1407
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1408
			end
1409
			if c.Name == "Head" then
1410
				c:ClearAllChildren()
1411
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1412
			end
1413
			if c.ClassName == "MeshPart" then
1414
				c.TextureID = ""
1415
			end
1416
			if c:FindFirstChildOfClass("BodyPosition") then
1417
				c:FindFirstChildOfClass("BodyPosition"):remove()
1418
			end
1419
			if c:FindFirstChildOfClass("ParticleEmitter") then
1420
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1421
			end
1422
			c.Parent = NewCharacter
1423
			c.Name = "DeadPart"
1424
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1425
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1426
		end
1427
	end
1428
	Char:remove()
1429
	Debris:AddItem(NewCharacter,5)
1430
end
1431
1432
local DECAL = IT("Decal",nil)
1433
function MagicRing(PART,CFRAME)
1434
    local RING = CreatePart(3, Effects, "Granite", 0, 1, "Really red", "MagicRing", VT(0,0,0),false)
1435
    local WELD = CreateWeldOrSnapOrMotor("Weld", PART, PART, RING, CFRAME, CF(0, 0, 0))
1436
    local MESH = IT("BlockMesh",RING)
1437
    local BOTTOMTEXTURE = DECAL:Clone()
1438
    BOTTOMTEXTURE.Parent = RING
1439
    BOTTOMTEXTURE.Face = "Bottom"
1440
    BOTTOMTEXTURE.Texture = "http://www.roblox.com/asset/?id=2237986353"
1441
    BOTTOMTEXTURE.Name = "BottomTexture"
1442
    local TOPTEXTURE = DECAL:Clone()
1443
    TOPTEXTURE.Parent = RING
1444
    TOPTEXTURE.Face = "Top"
1445
    TOPTEXTURE.Texture = "http://www.roblox.com/asset/?id=2237986353"
1446
    TOPTEXTURE.Name = "TopTexture"
1447
    local T = ParticleEmitter({Transparency1 = 0.2, Transparency2 = 1, Texture = 1084975295, Speed = 0, RotSpeed = NumberRange.new(-15, 15), Drag = 2, Size1 = 0, Size2 = 10, Lifetime1 = 1, Lifetime2 = 1, Parent = RING, Emit = 25, Offset = 360, Enabled = false, Color1 = BRICKC"Really red".Color, Color2 = BRICKC"Really red".Color})
1448
    T.LockedToPart = true
1449
    return RING,WELD,MESH
1450
end
1451
1452
function AfterZap(Humanoid,Times,Dmg)
1453
    coroutine.resume(coroutine.create(function()
1454
        if Humanoid ~= nil then
1455
            local ZAP = ParticleEmitter({Speed = 0.2, RotSpeed = NumberRange.new(-15, 15), Drag = 2, Size1 = 2, Size2 = 3, Lifetime1 = 0.01, Lifetime2 = 0.1, Parent = Humanoid.Torso, Emit = 100, Offset = 360, Enabled = true, Color1 = BRICKC"Really red".Color, Color2 = BRICKC"Really red".Color})
1456
            ZAP.Rate = 75
1457
            for i = 1, Times do
1458
                wait(1)
1459
                if Humanoid ~= nil and Humanoid.Health > 0 then
1460
                    Humanoid.Health = Humanoid.Health - Dmg
1461
                    CreateSound(SHOCKSOUND,Humanoid.Torso,1,MRANDOM(13,16)/10,false)
1462
                else
1463
                    break
1464
                end
1465
            end
1466
            ZAP.Enabled = false
1467
            Debris:AddItem(ZAP,3)
1468
        end
1469
    end))
1470
end
1471
1472
function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,DOESAFTERZAP,ZAPCOUNTER)
1473
    local CHILDREN = workspace:GetDescendants()
1474
    for index, CHILD in pairs(CHILDREN) do
1475
        if CHILD.ClassName == "Model" and CHILD ~= Character then
1476
            local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1477
            if HUM then
1478
                local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1479
                if TORSO then
1480
                    if (TORSO.Position - POSITION).Magnitude <= RANGE then
1481
                        if DOESAFTERZAP == true then
1482
                            AfterZap(HUM,ZAPCOUNTER,math.ceil(MINDMG/7))
1483
                        end
1484
                        local DMG = MRANDOM(MINDMG,MAXDMG)
1485
                        ApplyDamage(HUM,DMG,TORSO)
1486
                        if FLING > 0 then
1487
                            for _, c in pairs(CHILD:GetChildren()) do
1488
                                if c:IsA("BasePart") then
1489
                                    local bv = Instance.new("BodyVelocity")
1490
                                    bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1491
                                    bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1492
                                    bv.Parent = c
1493
                                    Debris:AddItem(bv,0.05)
1494
                                end
1495
                            end
1496
                        end
1497
                    end
1498
                end
1499
            end
1500
        end
1501
    end
1502
end
1503
--//=================================\\
1504
--||	ATTACK FUNCTIONS AND STUFF
1505
--\\=================================//
1506
1507
function Bullet1()
1508
	ATTACK = true
1509
	Rooted = false
1510
	for i=0, 0.1, 0.1 / Animation_Speed do
1511
		Swait()
1512
		turnto(Mouse.Hit.p)
1513
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(10), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1514
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(-15), RAD(0)), 0.15 / Animation_Speed)
1515
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(-36), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1516
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(-36), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1517
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1518
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1519
	end
1520
	repeat
1521
		for i=0, 0.2, 0.1 / Animation_Speed do
1522
			Swait()
1523
			turnto(Mouse.Hit.p)
1524
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1525
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(-15), RAD(0)), 0.15 / Animation_Speed)
1526
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(-63), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1527
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(-63), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1528
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1529
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1530
		end
1531
		local HIT,POS = CastProperRay(Head.Position, Mouse.Hit.p, 1000, Character)
1532
		SpawnTrail2(Head.Position,POS)
1533
		if HIT ~= nil then
1534
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1535
				Kill(HIT.Parent)
1536
			end
1537
		end
1538
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(3.75,0,3.75), Size2 = VT(25,6.25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 151414336, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1539
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(3.75,0,3.75), Size2 = VT(25,6.25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1540
		for i=0, 0, 0.1 / Animation_Speed do
1541
			Swait()
1542
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(30), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1543
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(-15), RAD(0)), 0.15 / Animation_Speed)
1544
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(-90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1545
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1546
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1547
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1548
		end
1549
	until KEYHOLD == false
1550
	ATTACK = false
1551
	Rooted = false
1552
end
1553
1554
function Bullet2()
1555
	ATTACK = true
1556
	Rooted = false
1557
	for i=0, 0.9, 0.1 / Animation_Speed do
1558
		Swait()
1559
		turnto(Mouse.Hit.p)
1560
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1561
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15 - 22 * SIN(SINE / 0.5)), RAD(0)), 0.15 / Animation_Speed)
1562
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1563
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1564
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1565
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1566
	end
1567
	repeat
1568
		for i=0, 0.1, 0.1 / Animation_Speed do
1569
			Swait()
1570
			turnto(Mouse.Hit.p)
1571
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0 - 55 * SIN(SINE / 0.5)), RAD(0 - 55 * SIN(SINE / 0.5)), RAD(0)), 0.15 / Animation_Speed)
1572
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15 - 22 * SIN(SINE / 0.5)), RAD(0)), 0.15 / Animation_Speed)
1573
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83 - 22 * SIN(SINE / 0.5)), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1574
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83 - 22 * SIN(SINE / 0.5)), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1575
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1576
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1577
		end
1578
		local HIT,POS = CastProperRay(Hole2.Position, Mouse.Hit.p, 1000, Character)
1579
		SpawnTrail(Hole2.Position,POS)
1580
		if HIT ~= nil then
1581
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1582
				Kill(HIT.Parent)
1583
			end
1584
		end
1585
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole2.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1586
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0.5})
1587
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1588
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1589
		for i=0, 0.2, 0.1 / Animation_Speed do
1590
			Swait()
1591
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0 - 55 * SIN(SINE / 0.5)), RAD(0 - 22 * SIN(SINE / 0.5)), RAD(0)), 0.15 / Animation_Speed)
1592
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.15 / Animation_Speed)
1593
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(90 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1594
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(90 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1595
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1596
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1597
		end
1598
			local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
1599
		SpawnTrail(Hole.Position,POS)
1600
		if HIT ~= nil then
1601
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1602
				Kill(HIT.Parent)
1603
			end
1604
		end
1605
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1606
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 0.5})
1607
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1608
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1609
	until KEYHOLD == false
1610
	ATTACK = false
1611
	Rooted = false
1612
end
1613
1614
function Infect()
1615
	ATTACK = true
1616
	Rooted = false
1617
	local GYRO = IT("BodyGyro",RootPart)
1618
	GYRO.D = 750
1619
	GYRO.P = 20000
1620
	GYRO.MaxTorque = VT(0,40000000,0)
1621
	for i=0, 1, 0.1 / Animation_Speed do
1622
		Swait()
1623
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
1624
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.3 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1625
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 22 * SIN(SINE / 0.1)), RAD(15 - 22 * SIN(SINE / 0.5)), RAD(-35)), 0.75 / Animation_Speed)
1626
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(115 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1627
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1628
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50 - 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1629
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.9 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85 - 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
1630
	end
1631
	GYRO:remove()
1632
	CreateSound(696483710, Hole2, 5, 1, false)
1633
	WACKYEFFECT({Time = 3, EffectType = "Sphere", Size = VT(1,0.3,0.3), Size2 = VT(1,0,0), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame*CF(1.5,0.5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1634
	coroutine.resume(coroutine.create(function()
1635
		local Bullet = CreatePart(3, Effects, "SmoothPlastic", 0, 0, "Really red", "Sinful bullet", VT(0,0,0))
1636
		CreateMesh("SpecialMesh", Bullet, "FileMesh", "94295100", "", VT(6, 6, 7), VT(0,0, 0))
1637
		Bullet.CFrame = Hole2.CFrame*CF(1.5,0.5,0)
1638
		local AIMPOINT = Mouse.Hit.p
1639
		local STARTPOS = Hole2.CFrame*CF(1.5,0.5,0).p
1640
		local VECTOR = CF(STARTPOS,AIMPOINT) 
1641
		local IMPACTED = false
1642
		CreateSound(1393698948, Bullet, 10, 1, true)
1643
		for E = 1, 50 do
1644
			if IMPACTED == true then
1645
				break
1646
			end
1647
			local TARGETPOINT = VECTOR*CF(0,0,-E*5)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,1,0).p
1648
			Bullet.CFrame = CF(Bullet.Position,TARGETPOINT)
1649
			for i = 1, 5 do
1650
				Swait()
1651
				WACKYEFFECT({Time = 15, EffectType = "Swirl", Size = VT(1,1,1), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i+E, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1652
				Bullet.CFrame = Bullet.CFrame*CF(0,0,-1)
1653
				local AIMHIT,AIMPOS,NORMAL = Raycast(Bullet.Position,Bullet.CFrame.lookVector,1.3,Character)
1654
				if AIMHIT ~= nil then
1655
					IMPACTED = true
1656
					break
1657
				end
1658
			end
1659
		end
1660
		WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(10,10,10), Size2 = VT(9,9,9), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 182765513, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 7})
1661
		for i = 1, 7 do
1662
			WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(1,15,1), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = Bullet.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1663
		end
1664
		Ghostify(Bullet.Position,10)
1665
		Bullet:remove()
1666
	end))
1667
	for i=0, 0.3, 0.1 / Animation_Speed do
1668
		Swait()
1669
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.3 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1670
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(15), RAD(-35)), 0.75 / Animation_Speed)
1671
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0.3) * ANGLES(RAD(110 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1672
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1673
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50 - 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1674
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.9 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85 - 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
1675
	end
1676
	ATTACK = false
1677
	Rooted = false
1678
end
1679
1680
function AttackTemplate()
1681
	ATTACK = true
1682
	Rooted = false
1683
	for i=0, 1, 0.1 / Animation_Speed do
1684
		Swait()
1685
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1686
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 0.1)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1687
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(100), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1688
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1689
		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.15 / Animation_Speed)
1690
		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.15 / Animation_Speed)
1691
	end
1692
	ATTACK = false
1693
	Rooted = false
1694
end
1695
1696
function Locked()
1697
	local TARGET = Mouse.Target
1698
	if TARGET ~= nil then
1699
		if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
1700
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
1701
			local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
1702
			if ROOT and HUM.Health > 0 then
1703
				local FOE = Mouse.Target.Parent
1704
				ATTACK = true
1705
				Rooted = true
1706
				CharacterFade(C3(0,0,0),70)
1707
				RootPart.CFrame = ROOT.CFrame*CF(0,0,2)
1708
				ROOT.Anchored = true
1709
				CreateSound(289556450, RootPart, 5, 1.4, false)
1710
				for i=0, 2, 0.1 / Animation_Speed do
1711
					Swait()
1712
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1713
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1714
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1715
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1716
					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)
1717
					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)
1718
				end
1719
				local RIGHTCUFF = nil
1720
				local LEFTCUFF = nil
1721
				local ChainLink = nil
1722
				CreateSound(1279090548, ROOT, 10, 1.4, false)
1723
				for _, c in pairs(FOE:GetChildren()) do
1724
					if c.Name == "Left Arm" or c.Name == "LeftLowerArm" then
1725
						LEFTCUFF = CreatePart(3, FOE, "Metal", 0, 0, "Mid gray", "Cuff", VT(c.Size.X+0.1, 0.1, c.Size.Z+0.1),false)
1726
						LEFTCUFF.CFrame = c.CFrame
1727
						weldBetween(c,LEFTCUFF)
1728
					end
1729
				end
1730
				for _, c in pairs(FOE:GetChildren()) do
1731
					if c.Name == "Right Arm" or c.Name == "RightLowerArm" then
1732
						RIGHTCUFF = CreatePart(3, FOE, "Metal", 0, 0, "Mid gray", "Cuff", VT(c.Size.X+0.1, 0.1, c.Size.Z+0.1),false)
1733
						RIGHTCUFF.CFrame = c.CFrame
1734
						weldBetween(c,RIGHTCUFF)
1735
					end
1736
				end
1737
				if RIGHTCUFF and LEFTCUFF then
1738
					local A = IT("Attachment",RIGHTCUFF)
1739
					local B = IT("Attachment",LEFTCUFF)
1740
					ChainLink = IT("Beam",FOE)
1741
					ChainLink.Texture = "rbxassetid://73042633"
1742
					ChainLink.Color = ColorSequence.new(C3(1,0,0))
1743
					ChainLink.TextureSpeed = 0
1744
					ChainLink.Width0 = 1
1745
					ChainLink.Width1 = 1
1746
					ChainLink.Segments = 25
1747
					ChainLink.TextureLength = 3
1748
					ChainLink.Attachment0 = B
1749
					ChainLink.Attachment1 = A
1750
					ChainLink.FaceCamera = true
1751
					ChainLink.Transparency = NumberSequence.new(0)
1752
				end
1753
				coroutine.resume(coroutine.create(function()
1754
					CreateSound(447682521, ChainLink, 1e1, 0.6, false)
1755
					wait(3)
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
						Kill(HUM.Parent)
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", Color = C3(1,0,0), SoundID = 174580476, SoundPitch = 1, SoundVolume = 4})
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", Color = C3(1,0,0), SoundID = 174580476, SoundPitch = 1, SoundVolume = 4})
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
				for i=0, 3, 0.1 / Animation_Speed do
1783
					Swait()
1784
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(-35)), 1 / Animation_Speed)
1785
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
1786
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-1), RAD(0), RAD(3)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1787
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-1), RAD(0), RAD(-3)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1788
					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)
1789
					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)
1790
				end
1791
				ATTACK = false
1792
				Rooted = false
1793
			end
1794
		end
1795
	end
1796
end
1797
1798
function InfectedFog()
1799
	ATTACK = true
1800
	Rooted = false
1801
	for i=0, 2, 0.1 / Animation_Speed do
1802
		Swait()
1803
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1804
		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)
1805
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1806
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1807
		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.15 / Animation_Speed)
1808
		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.15 / Animation_Speed)
1809
	end
1810
    CreateSound(769072651, RightArm, 10, 1, false)
1811
	for i=0, 2, 0.1 / Animation_Speed do
1812
		Swait()
1813
        WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0.5,0.5,0.5), Size2 = VT(2.5,2.5,2.5), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 0})
1814
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1815
		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)
1816
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1817
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1818
		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.15 / Animation_Speed)
1819
		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.15 / Animation_Speed)
1820
	    end
1821
	CreateSound(138931042, Torso, 10, 2.4, false)
1822
    WACKYEFFECT({Time = 120, EffectType = "Sphere", Size = VT(0.5,0.5,0.5), Size2 = VT(300,300,300), Transparency = 0.8, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 0})
1823
    Swait(100)
1824
    Ghostify(Torso.Position,135)
1825
    Swait(20)
1826
    CreateSound(138271815, GHOSTBASE, 0.8, 0.9, false)
1827
	ATTACK = false
1828
	Rooted = false
1829
end
1830
1831
function RedBlast()
1832
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1833
		ATTACK = true
1834
		Rooted = true
1835
		local GYRO = IT("BodyGyro",RootPart)
1836
		GYRO.D = 25
1837
		GYRO.P = 20000
1838
		GYRO.MaxTorque = VT(0,4000000,0)
1839
		GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1840
		CreateSound(429459101,Torso,5,1.5,false)
1841
		local GYROING = true
1842
		coroutine.resume(coroutine.create(function()
1843
			repeat
1844
				Swait()
1845
				GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1846
			until GYROING == false
1847
			GYRO:Remove()
1848
		end))
1849
		for i=0, 1, 0.1 / Animation_Speed do
1850
			Swait()
1851
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.4 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1852
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1853
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1854
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1855
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
1856
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
1857
		end
1858
		for i = 1, 13 do
1859
			WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(i,0,i)*2, Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,7.5-i) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
1860
		end
1861
		CreateSound(1368637781,Torso,5,1.5,false)
1862
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(12,12,12), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1863
		for index, CHILD in pairs(Character:GetChildren()) do
1864
			if CHILD:IsA("BasePart") then
1865
				CHILD.Transparency = CHILD.Transparency + 1
1866
			elseif CHILD:IsA("Accessory") then
1867
				CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
1868
			end
1869
		end
1870
		GYROING = false
1871
		coroutine.resume(coroutine.create(function()
1872
			coroutine.resume(coroutine.create(function()
1873
				for i=1, 25 do
1874
					Swait()
1875
					RootPart.CFrame = RootPart.CFrame*CF(0,0,(25-i)/25)
1876
				end
1877
			end))
1878
			repeat
1879
				Swait()
1880
				CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
1881
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1882
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1883
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1884
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1885
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1886
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1887
			until ATTACK == false
1888
		end))
1889
		coroutine.resume(coroutine.create(function()
1890
			local BULLETCFRAME = RootPart.CFrame
1891
			local EXPLODED = false
1892
			coroutine.resume(coroutine.create(function()
1893
				repeat
1894
					Swait()
1895
					WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(10,10,10), Transparency = 0.3, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1896
					WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(25,25,25), Transparency = 0.8, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1897
				until EXPLODED == true
1898
			end))
1899
			for i=1, 50 do
1900
				Swait()
1901
				BULLETCFRAME = BULLETCFRAME*CF(0,0,-((50-i)/15))
1902
				local RAY,HIT,NORM = Raycast(BULLETCFRAME.p,BULLETCFRAME.lookVector,7,Character)
1903
				if RAY then
1904
					ApplyAoE2(BULLETCFRAME.p,25,12,54,350,false)
1905
					WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = CF(HIT,HIT+NORM) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 765590102, SoundPitch = MRANDOM(9,11)/10, SoundVolume = 10})
1906
					break
1907
				end
1908
			end
1909
			wait(0.5)
1910
			WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(75,75,75), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 401056199, SoundPitch = 0.7, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1911
			WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(50,50,50), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 401056199, SoundPitch = 1, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1912
			for E = 1, 3 do
1913
				for i = 1, 5 do
1914
					WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1915
				end
1916
			end
1917
			EXPLODED = true
1918
			ApplyAoE2(BULLETCFRAME.p,125,1e2,1e2,250,false)
1919
			for i = 1, 15 do
1920
				Swait()
1921
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = BULLETCFRAME * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 1, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2})
1922
			end
1923
		end))
1924
		wait(0.5)
1925
		for index, CHILD in pairs(Character:GetChildren()) do
1926
			if CHILD:IsA("BasePart") then
1927
				CHILD.Transparency = CHILD.Transparency - 1
1928
			elseif CHILD:IsA("Accessory") then
1929
				CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
1930
			end
1931
		end
1932
		ATTACK = false
1933
		Rooted = false
1934
	end
1935
end
1936
1937
function VirusCloaker()
1938
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1939
		ATTACK = true
1940
		Rooted = false
1941
		UNANCHOR = false
1942
		FADERS = false
1943
		coroutine.resume(coroutine.create(function()
1944
			coroutine.resume(coroutine.create(function()
1945
				for i=0.5, 25 do
1946
					Swait()
1947
					RootPart.CFrame = RootPart.CFrame*CF(0,0,0)
1948
				end
1949
			end))
1950
			repeat
1951
				Swait()
1952
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1953
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1954
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1955
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1956
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1957
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1958
			until ATTACK == false
1959
		end))
1960
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,2.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 0.6, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 12})
1961
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,2.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1962
		for i = 0.5, 50 do
1963
			Swait()
1964
			CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
1965
			for index, CHILD in pairs(Character:GetChildren()) do
1966
				if CHILD:IsA("BasePart") then
1967
					CHILD.Transparency = CHILD.Transparency + 1/50
1968
				elseif CHILD:IsA("Accessory") then
1969
					CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1/50
1970
				end
1971
			end
1972
		end
1973
		for i = 0.5, 25 do
1974
			Swait()
1975
			CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
1976
		end
1977
		RootPart.CFrame = CF(Mouse.Hit.p+VT(0,5,0)) * ANGLES(RAD(0), RAD(RootPart.Orientation.Y), RAD(0))
1978
		for i = 0.5, 5 do
1979
			WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1980
			WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1981
		end
1982
		ApplyAoE2(Torso.Position,15,12,22,150,false)
1983
		CreateSound(331666014,Torso,5,1,false)
1984
		for i = 0.5, 12 do
1985
			Swait()
1986
			CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
1987
		end
1988
		for i = 0.5, 50 do
1989
			Swait()
1990
			CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
1991
			for index, CHILD in pairs(Character:GetChildren()) do
1992
				if CHILD:IsA("BasePart") then
1993
					CHILD.Transparency = CHILD.Transparency - 1/50
1994
				elseif CHILD:IsA("Accessory") then
1995
					CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1/50
1996
				end
1997
			end
1998
		end
1999
		UNANCHOR = true
2000
		ATTACK = false
2001
		Rooted = false
2002
		FADERS = true
2003
	end
2004
end
2005
2006
function PlagueStomp()
2007
    ATTACK = true
2008
    Rooted = false
2009
    local GRAV = IT("BodyPosition",RootPart)
2010
    GRAV.D = 250
2011
    GRAV.P = 20000
2012
    GRAV.MaxForce = VT(math.huge,math.huge,math.huge)
2013
    GRAV.Position = RootPart.Position
2014
    local RING,WELD,MESH = MagicRing(RightLeg,CF(0,-1.2,0))
2015
    CreateSound(RINGSOUND,RING,5,1,false)
2016
    local STRENGTH = 100
2017
    local TIER = 1
2018
    repeat
2019
        Swait()
2020
        STRENGTH = STRENGTH + 0.3
2021
        if STRENGTH > 200 then
2022
            STRENGTH = 200
2023
        end
2024
        if MESH.Scale.X < 120 then
2025
            MESH.Scale = MESH.Scale + VT(3,0,3)
2026
        elseif MESH.Scale.X < 200 then
2027
            MESH.Scale = MESH.Scale + VT(0.3,0,0.3)
2028
        end
2029
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2030
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 22 * SIN(SINE / 0.05)), RAD(0 - 22 * SIN(SINE / 0.05)), RAD(0)), 1 / Animation_Speed)
2031
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2032
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2033
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.25, -0.65) * ANGLES(RAD(0 + 11 * SIN(SINE / 0.1)), RAD(90 + 1 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
2034
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-15 + 11 * SIN(SINE / 0.1)), RAD(-90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
2035
    until KEYHOLD == false and MESH.Scale.X >= 120
2036
    if STRENGTH >= 150 and STRENGTH ~= 200 and POWER >= 45 then
2037
        POWER = POWER - 45
2038
        TIER = 2
2039
    elseif STRENGTH == 200 and POWER >= 100 then
2040
        POWER = POWER - 100
2041
        TIER = 3
2042
    end
2043
    for i=0, 0.2, 0.1 / Animation_Speed do
2044
        Swait()
2045
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
2046
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 22 * SIN(SINE / 0.05)), RAD(0 - 22 * SIN(SINE / 0.05)), RAD(0)), 1 / Animation_Speed)
2047
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2048
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(150 - 22 * SIN(SINE / 0.1)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2049
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.25, -0.65) * ANGLES(RAD(10 + 11 * SIN(SINE / 0.1)), RAD(90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2050
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-15 + 11 * SIN(SINE / 0.1)), RAD(-90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
2051
    end
2052
    for i=0, 0.2, 0.1 / Animation_Speed do
2053
        Swait()
2054
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
2055
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 22 * SIN(SINE / 0.05)), RAD(0 - 22 * SIN(SINE / 0.05)), RAD(0)), 1 / Animation_Speed)
2056
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0 - 22 * SIN(SINE / 0.1)), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2057
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0 - 22 * SIN(SINE / 0.1)), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2058
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.5) * ANGLES(RAD(20 + 11 * SIN(SINE / 0.1)), RAD(90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2059
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-25 + 11 * SIN(SINE / 0.1)), RAD(-90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
2060
    end
2061
    coroutine.resume(coroutine.create(function()
2062
        if TIER == 1 then
2063
            local AOE = CreatePart(3, Effects, "Granite", 0, 1, "Really red", "Stomp", VT(30,0,30))
2064
            AOE.CFrame = CF(RightLeg.Position-VT(0,1,0))
2065
            local PARTCL = ParticleEmitter({Texture = 281983280, Speed = 0.2, RotSpeed = NumberRange.new(-15, 15), Drag = 2, Size1 = 4, Size2 = 6, Lifetime1 = 0.01, Lifetime2 = 0.1, Parent = AOE, Emit = 100, Offset = 360, Enabled = true, Color1 = C3(1,0,0), Color2 = C3(1,0,0) })
2066
            PARTCL.Rate = 999
2067
            CreateSound(304999618,AOE,5,1,false)
2068
            CreateSound(130972023,AOE,4,1,false)
2069
            ApplyAoE3(AOE.Position,15,15,25,35,true,5)
2070
            WACKYEFFECT({EffectType = "Wave", Size = VT(11,1,11), Size2 = VT(45,3,45), Transparency = 0, Transparency2 = 1, CFrame = CF(AOE.Position), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(5,8)/10, SoundVolume = 6})
2071
            wait(2)
2072
            PARTCL.Enabled = false
2073
            Debris:AddItem(AOE,2)
2074
        elseif TIER == 2 then
2075
            local AOE = CreatePart(3, Effects, "Granite", 0, 1, "Really red", "Stomp", VT(40,0,40))
2076
            AOE.CFrame = CF(RightLeg.Position-VT(0,1,0))
2077
            local PARTCL = ParticleEmitter({Texture = 281983280, Speed = 0.2, RotSpeed = NumberRange.new(-15, 15), Drag = 2, Size1 = 4, Size2 = 6, Lifetime1 = 0.01, Lifetime2 = 0.1, Parent = AOE, Emit = 100, Offset = 360, Enabled = true, Color1 = C3(1,0,0), Color2 = C3(1,0,0)})
2078
            PARTCL.Rate = 999
2079
            CreateSound(304999618,AOE,5,1,false)
2080
            CreateSound(130972023,AOE,4,1,false)
2081
            ApplyAoE3(AOE.Position,20,25,35,35,true,6)
2082
            WACKYEFFECT({EffectType = "Wave", Size = VT(11,1,11), Size2 = VT(55,3,55), Transparency = 0, Transparency2 = 1, CFrame = CF(AOE.Position), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(5,8)/10, SoundVolume = 6})
2083
            wait(2)
2084
            PARTCL.Enabled = false
2085
            Debris:AddItem(AOE,2)
2086
        elseif TIER == 3 then
2087
            local AOE = CreatePart(3, Effects, "Granite", 0, 1, "Really red", "Stomp", VT(50,0,50))
2088
            AOE.CFrame = CF(RightLeg.Position-VT(0,1,0))
2089
            local PARTCL = ParticleEmitter({Texture = 281983280, Speed = 0.2, RotSpeed = NumberRange.new(-15, 15), Drag = 2, Size1 = 4, Size2 = 6, Lifetime1 = 0.01, Lifetime2 = 0.1, Parent = AOE, Emit = 100, Offset = 360, Enabled = true, Color1 = C3(1,0,0), Color2 = C3(1,0,0)})
2090
            PARTCL.Rate = 999
2091
            CreateSound(304999618,AOE,5,1,false)
2092
            CreateSound(130972023,AOE,4,1,false)
2093
            for i = 1, 3 do
2094
                ApplyAoE3(AOE.Position,30,5,15,5,true,7)WACKYEFFECT({EffectType = "Wave", Size = VT(11,1,11), Size2 = VT(55,3,55), Transparency = 0, Transparency2 = 1, CFrame = CF(AOE.Position), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(5,8)/10, SoundVolume = 6})
2095
                wait(0.5)
2096
            end
2097
            wait(1.5)
2098
            PARTCL.Enabled = false
2099
            Debris:AddItem(AOE,2)
2100
        end
2101
    end))
2102
    for i=0, 2, 0.1 / Animation_Speed do
2103
        Swait()
2104
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
2105
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 22 * SIN(SINE / 0.05)), RAD(0 - 22 * SIN(SINE / 0.05)), RAD(0)), 1 / Animation_Speed)
2106
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0 - 22 * SIN(SINE / 0.1)), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2107
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(120 - 22 * SIN(SINE / 0.1)), RAD(0 - 22 * SIN(SINE / 0.1)), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2108
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.5) * ANGLES(RAD(20 + 11 * SIN(SINE / 0.1)), RAD(90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2109
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-25 + 11 * SIN(SINE / 0.1)), RAD(-90 + 11 * SIN(SINE / 0.1)), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
2110
    end
2111
    RING.Anchored = true
2112
    WELD:remove()
2113
    coroutine.resume(coroutine.create(function()
2114
        for i = 1, 25 do
2115
            Swait()
2116
            RING.TopTexture.Transparency = RING.TopTexture.Transparency + 1/25
2117
            RING.BottomTexture.Transparency = RING.BottomTexture.Transparency + 1/25
2118
            MESH.Scale = MESH.Scale - VT(3,0,3)
2119
        end
2120
        RING:remove()
2121
    end))
2122
    GRAV:remove()
2123
    ATTACK = false
2124
    Rooted = false
2125
end
2126
2127
--//=================================\\
2128
--||	  ASSIGN THINGS TO KEYS
2129
--\\=================================//
2130
2131
function MouseDown(Mouse)
2132
	if ATTACK == false then
2133
	end
2134
end
2135
2136
function MouseUp(Mouse)
2137
HOLD = false
2138
end
2139
2140
function KeyDown(Key)
2141
	KEYHOLD = true
2142
	if Key == "z" and ATTACK == false then
2143
		if MODE == "Plagues" then
2144
		PlagueStomp()
2145
		elseif MODE == "Infectist" then
2146
		RedBlast()
2147
		elseif MODE == "Levithan" then
2148
		VirusCloaker()
2149
	   end
2150
	end 
2151
2152
	if Key == "x" and ATTACK == false then
2153
		if MODE == "Plagues" then
2154
		elseif MODE == "Infectist" then
2155
		Locked()
2156
		elseif MODE == "Levithan" then
2157
	   end
2158
	end 
2159
2160
	if Key == "c" and ATTACK == false then
2161
		if MODE == "Plagues" then
2162
		Bullet2()
2163
		elseif MODE == "Infectist" then
2164
		Bullet1()
2165
		elseif MODE == "Levithan" then
2166
	   end
2167
	end
2168
		
2169
	if Key == "v" and ATTACK == false then
2170
		if MODE == "Plagues" then
2171
		Infect()
2172
		elseif MODE == "Infectist" then
2173
		InfectedFog()
2174
		elseif MODE == "Levithan" then
2175
	   end
2176
	end
2177
2178
	if Key == "q" and ATTACK == false then
2179
		Switch1()
2180
	end
2181
2182
	if Key == "r" and ATTACK == false then
2183
		Switch3()
2184
	end
2185
2186
	if Key == "e" and ATTACK == false then
2187
		Switch2()
2188
	end
2189
	end
2190
2191
function KeyUp(Key)
2192
	KEYHOLD = false
2193
end
2194
2195
	Mouse.Button1Down:connect(function(NEWKEY)
2196
		MouseDown(NEWKEY)
2197
	end)
2198
	Mouse.Button1Up:connect(function(NEWKEY)
2199
		MouseUp(NEWKEY)
2200
	end)
2201
	Mouse.KeyDown:connect(function(NEWKEY)
2202
		KeyDown(NEWKEY)
2203
	end)
2204
	Mouse.KeyUp:connect(function(NEWKEY)
2205
		KeyUp(NEWKEY)
2206
	end)
2207
2208
--//=================================\\
2209
--\\=================================//
2210
2211
2212
function unanchor()
2213
	if UNANCHOR == true then
2214
		g = Character:GetChildren()
2215
		for i = 1, #g do
2216
			if g[i].ClassName == "Part" then
2217
				g[i].Anchored = false
2218
			end
2219
		end
2220
	end
2221
end
2222
2223
2224
--//=================================\\
2225
--||	WRAP THE WHOLE SCRIPT UP
2226
--\\=================================//
2227
2228
Humanoid.Changed:connect(function(Jump)
2229
	if Jump == "Jump" and (Disable_Jump == true) then
2230
		Humanoid.Jump = false
2231
	end
2232
end)
2233
2234
while true do
2235
	Swait()
2236
	ANIMATE.Parent = nil
2237
	if Character:FindFirstChildOfClass("Humanoid") == nil then
2238
		Humanoid = IT("Humanoid",Character)
2239
	end
2240
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
2241
	    v:Stop();
2242
	end
2243
	SINE = SINE + CHANGE
2244
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2245
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2246
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
2247
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2248
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
2249
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2250
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2251
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * 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)
2252
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * 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)
2253
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
2254
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2255
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2256
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2257
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2258
		end
2259
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2260
		ANIM = "Jump"
2261
		if ATTACK == false then
2262
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2263
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2264
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2265
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2266
			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)
2267
			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)
2268
	    end
2269
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2270
		ANIM = "Fall"
2271
		if ATTACK == false then
2272
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2273
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2274
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2275
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2276
			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)
2277
			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)
2278
		end
2279
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2280
		ANIM = "Idle"
2281
		if ATTACK == false then
2282
            if MODE == "Plagues" then
2283
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
2284
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 55 * SIN(SINE / 0.5)), RAD(0 - 22 * SIN(SINE / 1)), RAD(-15)), 1 / Animation_Speed)
2285
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(45 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(33 - 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-70), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2286
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(35 - 22 * SIN(SINE / 0.5)), RAD(0), RAD(-22 + 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(70), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2287
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1.02*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(20), RAD(55 - 11 * SIN(SINE / 0.5)), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2288
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(10), RAD(-74 - 11 * SIN(SINE / 0.5)), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2289
            elseif MODE == "Infectist" then
2290
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2291
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.15 / Animation_Speed)
2292
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(55 + -11 * COS(SINE / 23)), RAD(-10), RAD(-75)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2293
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(-40 + -11 * COS(SINE / 23)), RAD(25), RAD(75)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2294
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2295
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2296
            elseif MODE == "Levithan" then
2297
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
2298
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0.2 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
2299
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2300
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2301
			RightHip.C0 = Clerp(RightHip.C0, CF(0.5, -1, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2302
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-0.5, 0.15, -0.8) * ANGLES(RAD(0), RAD(0), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
2303
            elseif MODE == "Jester" then
2304
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2305
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.15 / Animation_Speed)
2306
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0 + -25 * COS(SINE / 23)), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2307
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(-40 + -11 * COS(SINE / 23)), RAD(25), RAD(75)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2308
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2309
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2310
         end
2311
      end
2312
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2313
		ANIM = "Walk"
2314
		if ATTACK == false then
2315
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.05) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2316
			if MODE == "Plagues" then
2317
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 55 * SIN(SINE / 0.5)), RAD(0 - 22 * SIN(SINE / 1)), RAD(-15)), 1 / Animation_Speed)
2318
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(-75 - 22 * SIN(SINE / 0.5)), RAD(-90), RAD(0 - 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-70), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2319
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(-75- 22 * SIN(SINE / 0.5)), RAD(90), RAD(0 + 3 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(70), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2320
			elseif MODE == "Infectist" then
2321
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(20), RAD(15), RAD(0)), 0.15 / Animation_Speed)
2322
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0 + -25 * COS(SINE / 10)), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2323
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0 + -25 * COS(SINE / 10)), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2324
			elseif MODE == "Levithan" then
2325
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
2326
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
2327
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2328
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(50), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2329
			end
2330
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-5)), 2 / Animation_Speed)
2331
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(5)), 2 / Animation_Speed)
2332
		end
2333
	end
2334
	if ANIM ~= "No" and FADERS == true then
2335
		if MRANDOM(1,7) == 1 then
2336
			CharacterFade(C3(0,0,0),65,R_RANDOM(Torso.CFrame,0.5).p)
2337
		end
2338
	end
2339
	unanchor()
2340
	Humanoid.MaxHealth = "inf"
2341
	Humanoid.Health = "inf"
2342
	if Rooted == false then
2343
		Disable_Jump = false
2344
		Humanoid.WalkSpeed = Speed
2345
	elseif Rooted == true then
2346
		Disable_Jump = true
2347
		Humanoid.WalkSpeed = 0
2348
	end
2349
	sick.Parent = Torso
2350
	sick:resume()
2351
	sick.Volume = VOLUME
2352
	sick.Pitch = PITCH
2353
	sick.SoundId = "rbxassetid://"..SONG
2354
	sick.Name = "Infection"
2355
end
2356
2357
--//=================================\\
2358
--\\=================================//
2359
2360
2361
2362
2363
2364
--//====================================================\\--
2365
--||			  		 END OF SCRIPT
2366
--\\====================================================//--