View difference between Paste ID: fx2fGUYX and Mc8nGxBA
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2-
--|| EDIT BY GOODGUYAIDEN	   CREATED BY SHACKLUSTER
2+
--|| EDIT BY 1x11337	   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
wait(0.2)
6
7
Player = game:GetService("Players").LocalPlayer
8
PlayerGui = Player.PlayerGui
9
Cam = workspace.CurrentCamera
10
Backpack = Player.Backpack
11
Character = Player.Character
12
Humanoid = Character.Humanoid
13
Mouse = Player:GetMouse()
14
RootPart = Character["HumanoidRootPart"]
15
Torso = Character["Torso"]
16
Head = Character["Head"]
17
RightArm = Character["Right Arm"]
18
LeftArm = Character["Left Arm"]
19
RightLeg = Character["Right Leg"]
20
LeftLeg = Character["Left Leg"]
21
RootJoint = RootPart["RootJoint"]
22
Neck = Torso["Neck"]
23
RightShoulder = Torso["Right Shoulder"]
24
LeftShoulder = Torso["Left Shoulder"]
25
RightHip = Torso["Right Hip"]
26
LeftHip = Torso["Left Hip"]
27
SIZE = 1
28
29
IT = Instance.new
30
CF = CFrame.new
31
VT = Vector3.new
32
RAD = math.rad
33
C3 = Color3.new
34
UD2 = UDim2.new
35
BRICKC = BrickColor.new
36
ANGLES = CFrame.Angles
37
EULER = CFrame.fromEulerAnglesXYZ
38
COS = math.cos
39
ACOS = math.acos
40
SIN = math.sin
41
ASIN = math.asin
42
ABS = math.abs
43
MRANDOM = math.random
44
FLOOR = math.floor
45
46
--//=================================\\
47
--|| 	      USEFUL VALUES
48
--\\=================================//
49
50
Animation_Speed = 3
51
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
52
local Speed = 10
53
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
54
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
55
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
56
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
57
local DAMAGEMULTIPLIER = 1
58
local ANIM = "Idle"
59
local ATTACK = false
60
local EQUIPPED = false
61
local HOLD = false
62
local COMBO = 1
63
local Rooted = false
64
local SINE = 0
65
local KEYHOLD = false
66
local CHANGE = 2 / Animation_Speed
67
local WALKINGANIM = false
68
local VALUE1 = false
69
local VALUE2 = false
70
local ROBLOXIDLEANIMATION = IT("Animation")
71
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
72
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
73
--ROBLOXIDLEANIMATION.Parent = Humanoid
74
local WEAPONGUI = IT("ScreenGui", PlayerGui)
75
WEAPONGUI.Name = "Weapon GUI"
76
local ANIMATOR = Humanoid.Animator
77
local ANIMATE = Character.Animate
78
local UNANCHOR = true
79
local GHOSTS = {}
80
ANIMATE:remove()
81
Character.Archivable = true
82
script.Parent = WEAPONGUI
83
local GHOSTBASE = Character:Clone()
84
GHOSTBASE.Parent = nil
85
GHOSTBASE.Name = "Ghost"
86
for _, c in pairs(GHOSTBASE:GetChildren()) do
87
	if c.ClassName == "Part" and c.Transparency < 1 then
88
		c.Color = C3(0,0,0)
89
		if c.ClassName == "Accessory" or c.ClassName == "Hat" or c.ClassName == "CharacterMesh" or c.ClassName == "Shirt" or c.ClassName == "Pants" then
90
			c:remove()
91
		end
92
	end
93
end
94
local sick = Instance.new("Sound",Torso)
95
sick.SoundId = "rbxassetid://372653433"
96
sick.Looped = true
97
sick.Pitch = 1
98
sick.Volume = 3
99
sick:Play()
100
local Effects = IT("Folder", Character)
101
Effects.Name = "Effects"
102
Character.Archivable = false
103
104
--//=================================\\
105
--\\=================================//
106
107
local Player = game:service'Players'.LocalPlayer
108
repeat wait() until Player.Character
109
local Character = Player.Character
110
local Char, Plr = Character, Player
111
local Mouse = Player:GetMouse()
112
113
114
115
local Char = Plr.Character
116
local Hum = Char:FindFirstChildOfClass'Humanoid'
117
local RArm = Char["Right Arm"]
118
local LArm = Char["Left Arm"]
119
local RLeg = Char["Right Leg"]
120
local LLeg = Char["Left Leg"]	
121
local Root = Char:FindFirstChild'HumanoidRootPart'
122
local Torso = Char.Torso
123
local Head = Char.Head
124
125
Player = game.Players.LocalPlayer
126
	Character = Player.Character
127
	local txt = Instance.new("BillboardGui", Character)
128
	txt.Adornee = Character.Head
129
	txt.Name = "_status"
130
	txt.Size = UDim2.new(2, 0, 1.2, 0)
131
	txt.StudsOffset = Vector3.new(-9, 8, 0)
132
	local text = Instance.new("TextLabel", txt)
133
	text.Size = UDim2.new(10, 0, 7, 0)
134
	text.FontSize = "Size24"
135
	text.TextScaled = true
136
	text.TextTransparency = 0
137
	text.BackgroundTransparency = 1 
138
	text.TextTransparency = 0
139
	text.TextStrokeTransparency = 0
140
	text.Font = "Antique"
141
	text.TextStrokeColor3 = Color3.new(170,0,0)
142
        text.Text = "WHY..."
143
        wait(2)
144
        text.Text = "..."
145
        wait(2)
146
        text.Text = "Corrupt Inside"
147
148
149
	local face = Head:FindFirstChild'face'
150
	if(not face)then
151
		NewInstance("Decal",Head,{Name='face',Face=Enum.NormalId.Front,Texture="rbxassetid://1281412824"})
152
	else
153
		face.Texture = "rbxassetid://1281412824"
154
	end
155
156
--//=================================\\
157
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
158
--\\=================================//
159
160
ArtificialHB = Instance.new("BindableEvent", script)
161
ArtificialHB.Name = "ArtificialHB"
162
163
script:WaitForChild("ArtificialHB")
164
165
frame = Frame_Speed
166
tf = 0
167
allowframeloss = false
168
tossremainder = false
169
lastframe = tick()
170
script.ArtificialHB:Fire()
171
172
game:GetService("RunService").Heartbeat:connect(function(s, p)
173
	tf = tf + s
174
	if tf >= frame then
175
		if allowframeloss then
176
			script.ArtificialHB:Fire()
177
			lastframe = tick()
178
		else
179
			for i = 1, math.floor(tf / frame) do
180
				script.ArtificialHB:Fire()
181
			end
182
		lastframe = tick()
183
		end
184
		if tossremainder then
185
			tf = 0
186
		else
187
			tf = tf - frame * math.floor(tf / frame)
188
		end
189
	end
190
end)
191
192
--//=================================\\
193
--\\=================================//
194
195
--//=================================\\
196
--|| 	      SOME FUNCTIONS
197
--\\=================================//
198
199
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
200
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
201
end
202
203
function PositiveAngle(NUMBER)
204
	if NUMBER >= 0 then
205
		NUMBER = 0
206
	end
207
	return NUMBER
208
end
209
210
function NegativeAngle(NUMBER)
211
	if NUMBER <= 0 then
212
		NUMBER = 0
213
	end
214
	return NUMBER
215
end
216
217
function Swait(NUMBER)
218
	if NUMBER == 0 or NUMBER == nil then
219
		ArtificialHB.Event:wait()
220
	else
221
		for i = 1, NUMBER do
222
			ArtificialHB.Event:wait()
223
		end
224
	end
225
end
226
227
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
228
	local NEWMESH = IT(MESH)
229
	if MESH == "SpecialMesh" then
230
		NEWMESH.MeshType = MESHTYPE
231
		if MESHID ~= "nil" and MESHID ~= "" then
232
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
233
		end
234
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
235
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
236
		end
237
	end
238
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
239
	NEWMESH.Scale = SCALE
240
	NEWMESH.Parent = PARENT
241
	return NEWMESH
242
end
243
244
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
245
	local NEWPART = IT("Part")
246
	NEWPART.formFactor = FORMFACTOR
247
	NEWPART.Reflectance = REFLECTANCE
248
	NEWPART.Transparency = TRANSPARENCY
249
	NEWPART.CanCollide = false
250
	NEWPART.Locked = true
251
	NEWPART.Anchored = true
252
	if ANCHOR == false then
253
		NEWPART.Anchored = false
254
	end
255
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
256
	NEWPART.Name = NAME
257
	NEWPART.Size = SIZE
258
	NEWPART.Position = Torso.Position
259
	NEWPART.Material = MATERIAL
260
	NEWPART:BreakJoints()
261
	NEWPART.Parent = PARENT
262
	return NEWPART
263
end
264
265
	local function weldBetween(a, b)
266
	    local weldd = Instance.new("ManualWeld")
267
	    weldd.Part0 = a
268
	    weldd.Part1 = b
269
	    weldd.C0 = CFrame.new()
270
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
271
	    weldd.Parent = a
272
	    return weldd
273
	end
274
275
276
function QuaternionFromCFrame(cf)
277
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
278
	local trace = m00 + m11 + m22
279
	if trace > 0 then 
280
		local s = math.sqrt(1 + trace)
281
		local recip = 0.5 / s
282
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
283
	else
284
		local i = 0
285
		if m11 > m00 then
286
			i = 1
287
		end
288
		if m22 > (i == 0 and m00 or m11) then
289
			i = 2
290
		end
291
		if i == 0 then
292
			local s = math.sqrt(m00 - m11 - m22 + 1)
293
			local recip = 0.5 / s
294
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
295
		elseif i == 1 then
296
			local s = math.sqrt(m11 - m22 - m00 + 1)
297
			local recip = 0.5 / s
298
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
299
		elseif i == 2 then
300
			local s = math.sqrt(m22 - m00 - m11 + 1)
301
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
302
		end
303
	end
304
end
305
 
306
function QuaternionToCFrame(px, py, pz, x, y, z, w)
307
	local xs, ys, zs = x + x, y + y, z + z
308
	local wx, wy, wz = w * xs, w * ys, w * zs
309
	local xx = x * xs
310
	local xy = x * ys
311
	local xz = x * zs
312
	local yy = y * ys
313
	local yz = y * zs
314
	local zz = z * zs
315
	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))
316
end
317
 
318
function QuaternionSlerp(a, b, t)
319
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
320
	local startInterp, finishInterp;
321
	if cosTheta >= 0.0001 then
322
		if (1 - cosTheta) > 0.0001 then
323
			local theta = ACOS(cosTheta)
324
			local invSinTheta = 1 / SIN(theta)
325
			startInterp = SIN((1 - t) * theta) * invSinTheta
326
			finishInterp = SIN(t * theta) * invSinTheta
327
		else
328
			startInterp = 1 - t
329
			finishInterp = t
330
		end
331
	else
332
		if (1 + cosTheta) > 0.0001 then
333
			local theta = ACOS(-cosTheta)
334
			local invSinTheta = 1 / SIN(theta)
335
			startInterp = SIN((t - 1) * theta) * invSinTheta
336
			finishInterp = SIN(t * theta) * invSinTheta
337
		else
338
			startInterp = t - 1
339
			finishInterp = t
340
		end
341
	end
342
	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
343
end
344
345
function Clerp(a, b, t)
346
	local qa = {QuaternionFromCFrame(a)}
347
	local qb = {QuaternionFromCFrame(b)}
348
	local ax, ay, az = a.x, a.y, a.z
349
	local bx, by, bz = b.x, b.y, b.z
350
	local _t = 1 - t
351
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
352
end
353
354
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
355
	local frame = IT("Frame")
356
	frame.BackgroundTransparency = TRANSPARENCY
357
	frame.BorderSizePixel = BORDERSIZEPIXEL
358
	frame.Position = POSITION
359
	frame.Size = SIZE
360
	frame.BackgroundColor3 = COLOR
361
	frame.BorderColor3 = BORDERCOLOR
362
	frame.Name = NAME
363
	frame.Parent = PARENT
364
	return frame
365
end
366
367
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
368
	local label = IT("TextLabel")
369
	label.BackgroundTransparency = 1
370
	label.Size = UD2(1, 0, 1, 0)
371
	label.Position = UD2(0, 0, 0, 0)
372
	label.TextColor3 = TEXTCOLOR
373
	label.TextStrokeTransparency = STROKETRANSPARENCY
374
	label.TextTransparency = TRANSPARENCY
375
	label.FontSize = TEXTFONTSIZE
376
	label.Font = TEXTFONT
377
	label.BorderSizePixel = BORDERSIZEPIXEL
378
	label.TextScaled = false
379
	label.Text = TEXT
380
	label.Name = NAME
381
	label.Parent = PARENT
382
	return label
383
end
384
385
function NoOutlines(PART)
386
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
387
end
388
389
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
390
	local NEWWELD = IT(TYPE)
391
	NEWWELD.Part0 = PART0
392
	NEWWELD.Part1 = PART1
393
	NEWWELD.C0 = C0
394
	NEWWELD.C1 = C1
395
	NEWWELD.Parent = PARENT
396
	return NEWWELD
397
end
398
399
local S = IT("Sound")
400
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
401
	local NEWSOUND = nil
402
	coroutine.resume(coroutine.create(function()
403
		NEWSOUND = S:Clone()
404
		NEWSOUND.Parent = PARENT
405
		NEWSOUND.Volume = VOLUME
406
		NEWSOUND.Pitch = PITCH
407
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
408
		NEWSOUND:play()
409
		if DOESLOOP == true then
410
			NEWSOUND.Looped = true
411
		else
412
			repeat wait(1) until NEWSOUND.Playing == false
413
			NEWSOUND:remove()
414
		end
415
	end))
416
	return NEWSOUND
417
end
418
419
function CFrameFromTopBack(at, top, back)
420
	local right = top:Cross(back)
421
	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)
422
end
423
424
--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})
425
function WACKYEFFECT(Table)
426
	local TYPE = (Table.EffectType or "Sphere")
427
	local SIZE = (Table.Size or VT(1,1,1))
428
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
429
	local TRANSPARENCY = (Table.Transparency or 0)
430
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
431
	local CFRAME = (Table.CFrame or Torso.CFrame)
432
	local MOVEDIRECTION = (Table.MoveToPos or nil)
433
	local ROTATION1 = (Table.RotationX or 0)
434
	local ROTATION2 = (Table.RotationY or 0)
435
	local ROTATION3 = (Table.RotationZ or 0)
436
	local MATERIAL = (Table.Material or "Neon")
437
	local COLOR = (Table.Color or C3(1,1,1))
438
	local TIME = (Table.Time or 45)
439
	local SOUNDID = (Table.SoundID or nil)
440
	local SOUNDPITCH = (Table.SoundPitch or nil)
441
	local SOUNDVOLUME = (Table.SoundVolume or nil)
442
	coroutine.resume(coroutine.create(function()
443
		local PLAYSSOUND = false
444
		local SOUND = nil
445
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
446
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
447
			PLAYSSOUND = true
448
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
449
		end
450
		EFFECT.Color = COLOR
451
		local MSH = nil
452
		if TYPE == "Sphere" then
453
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
454
		elseif TYPE == "Block" then
455
			MSH = IT("BlockMesh",EFFECT)
456
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
457
		elseif TYPE == "Wave" then
458
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
459
		elseif TYPE == "Ring" then
460
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
461
		elseif TYPE == "Slash" then
462
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
463
		elseif TYPE == "Round Slash" then
464
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
465
		elseif TYPE == "Swirl" then
466
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
467
		elseif TYPE == "Skull" then
468
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
469
		elseif TYPE == "Crystal" then
470
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
471
		end
472
		if MSH ~= nil then
473
			local MOVESPEED = nil
474
			if MOVEDIRECTION ~= nil then
475
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
476
			end
477
			local GROWTH = SIZE - ENDSIZE
478
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
479
			if TYPE == "Block" then
480
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
481
			else
482
				EFFECT.CFrame = CFRAME
483
			end
484
			for LOOP = 1, TIME+1 do
485
				Swait()
486
				MSH.Scale = MSH.Scale - GROWTH/TIME
487
				if TYPE == "Wave" then
488
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
489
				end
490
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
491
				if TYPE == "Block" then
492
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
493
				else
494
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
495
				end
496
				if MOVEDIRECTION ~= nil then
497
					local ORI = EFFECT.Orientation
498
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
499
					EFFECT.Orientation = ORI
500
				end
501
			end
502
			if PLAYSSOUND == false then
503
				EFFECT:remove()
504
			else
505
				SOUND.Stopped:Connect(function()
506
					EFFECT:remove()
507
				end)
508
			end
509
		else
510
			if PLAYSSOUND == false then
511
				EFFECT:remove()
512
			else
513
				repeat Swait() until SOUND.Playing == false
514
				EFFECT:remove()
515
			end
516
		end
517
	end))
518
end
519
520
function MakeForm(PART,TYPE)
521
	if TYPE == "Cyl" then
522
		local MSH = IT("CylinderMesh",PART)
523
	elseif TYPE == "Ball" then
524
		local MSH = IT("SpecialMesh",PART)
525
		MSH.MeshType = "Sphere"
526
	elseif TYPE == "Wedge" then
527
		local MSH = IT("SpecialMesh",PART)
528
		MSH.MeshType = "Wedge"
529
	end
530
end
531
532
Debris = game:GetService("Debris")
533
534
function CastProperRay(StartPos, EndPos, Distance, Ignore)
535
	local DIRECTION = CF(StartPos,EndPos).lookVector
536
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
537
end
538
539
function turnto(position)
540
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
541
end
542
543
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
544
	if FLOOR ~= nil then
545
		coroutine.resume(coroutine.create(function()
546
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
547
			PART.CFrame = CF(POSITION)
548
			for i = 1, 45 do
549
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
550
				RingPiece.Material = FLOOR.Material
551
				RingPiece.Color = FLOOR.Color
552
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE*4, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
553
				Debris:AddItem(RingPiece,SWAIT)
554
			end
555
			PART:remove()
556
		end))
557
	end
558
end
559
560
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH,DOES360)
561
	if FLOOR ~= nil then
562
		for i = 1, AMOUNT do
563
			local DEBREE = CreatePart(3, Effects, "Neon", 0, 0, "Peal", "Debree", BLOCKSIZE, false)
564
			DEBREE.Material = FLOOR.Material
565
			DEBREE.Color = FLOOR.Color
566
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
567
			if DOES360 == true then
568
				DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
569
			else
570
				DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),STRENGTH,MRANDOM(-STRENGTH,STRENGTH))
571
			end
572
			coroutine.resume(coroutine.create(function()
573
				Swait(15)
574
				DEBREE.Parent = workspace
575
				DEBREE.CanCollide = true
576
				Debris:AddItem(DEBREE,SWAIT)
577
			end))
578
		end
579
	end
580
end
581
582
function SpawnTrail(FROM,TO)
583
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Pearl", "Arrow", VT(0,0,0))
584
	MakeForm(TRAIL,"Cyl")
585
	local DIST = (FROM - TO).Magnitude
586
	TRAIL.Size = VT(0.1,DIST,0.1)
587
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
588
	coroutine.resume(coroutine.create(function()
589
		for i = 1, 5 do
590
			Swait()
591
			TRAIL.Transparency = TRAIL.Transparency + 0.1
592
		end
593
		TRAIL:remove()
594
	end))
595
end
596
597
local Decal = IT("Decal")
598
function SpawnBulletHole(POSITION)
599
	local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Bullet hole", VT(0.2,0,0.2))
600
	local decal = Decal:Clone()
601
	decal.Parent = O1
602
	decal.Face = "Top"
603
	decal.Texture = "http://www.roblox.com/asset/?id=130624105"
604
	local decal2 = Decal:Clone()
605
	decal2.Parent = O1
606
	decal2.Face = "Bottom"
607
	decal2.Texture = "http://www.roblox.com/asset/?id=130624105"
608
	O1.CFrame = POSITION*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))
609
	Debris:AddItem(O1,5)
610
end
611
612
local asd = Instance.new("ParticleEmitter")
613
asd.Color = ColorSequence.new(Color3.new(1, 0, 0), Color3.new(.5, 0, 0))
614
asd.LightEmission = .1
615
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
616
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2),NumberSequenceKeypoint.new(1, 2)})
617
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
618
asd.Transparency = bbb
619
asd.Size = aaa
620
asd.ZOffset = .9
621
asd.Acceleration = Vector3.new(0, -15, 0)
622
asd.LockedToPart = false
623
asd.EmissionDirection = "Back"
624
asd.Lifetime = NumberRange.new(1, 2)
625
asd.Rotation = NumberRange.new(-100, 100)
626
asd.RotSpeed = NumberRange.new(-100, 100)
627
asd.Speed = NumberRange.new(10)
628
asd.Enabled = false
629
asd.VelocitySpread = 999
630
631
function getbloody(victim,amount)
632
	local PART = IT("Part",Effects)
633
	PART.Transparency = 1
634
	PART.Size = victim.Size
635
	PART.Anchored = true
636
	PART.CanCollide = false
637
	PART.CFrame = CF(victim.Position)
638
	local HITPLAYERSOUNDS = {"356551938","264486467"}
639
	Debris:AddItem(PART,5)
640
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
641
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
642
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
643
	local prtcl = asd:Clone()
644
	prtcl.Parent = PART
645
	prtcl:Emit(amount*10)
646
end
647
648
function BulletDetection(FROM,TO)
649
	local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
650
	coroutine.resume(coroutine.create(function()
651
		if AIMHIT ~= nil then
652
			if AIMHIT.Parent ~= Character then
653
				if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
654
					if AIMHIT.Name ~= "Head" and AIMHIT.Parent.ClassName ~= "Accessory" then
655
						ApplyDamage(AIMHIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(15,25),AIMHIT)
656
					elseif AIMHIT.Name == "Head" or AIMHIT.Parent.ClassName == "Accessory" then
657
						if AIMHIT.Parent.ClassName == "Accessory" then
658
							if AIMHIT:FindFirstChild("HatAttachment") or AIMHIT:FindFirstChild("FaceFrontAttachment") or AIMHIT:FindFirstChild("HairAttachment") then
659
								AIMHIT.Parent.Parent:BreakJoints()
660
								if AIMHIT.Parent.Parent:FindFirstChild("Head") then
661
									getbloody(AIMHIT.Parent.Parent.Head,15)
662
									AIMHIT.Parent.Parent.Head:remove()
663
									StatLabel(AIMHIT.CFrame * CF(0, 0 + (AIMHIT.Size.z - 1), 0), "Headshot!", C3(1,0,0))
664
								end
665
							else
666
								ApplyDamage(AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(25,65),AIMHIT)
667
							end
668
						elseif AIMHIT.Name == "Head" then
669
							getbloody(AIMHIT,15)
670
							AIMHIT.Parent:BreakJoints()
671
							AIMHIT:remove()
672
							StatLabel(AIMHIT.CFrame * CF(0, 0 + (AIMHIT.Size.z - 1), 0), "Headshot!", C3(1,0,0))
673
						end
674
					end
675
				else
676
					CreateFlyingDebree(AIMHIT,CF(AIMPOS),7,VT(0.1,0.1,0.1),5,35,true)
677
					SpawnBulletHole(CF(AIMPOS,AIMPOS+NORMAL)*ANGLES(RAD(90),RAD(0),RAD(0)))
678
				end
679
			end
680
		end
681
	end))
682
	return AIMHIT,AIMPOS,NORMAL
683
end
684
685
--//=================================\\
686
--||	     WEAPON CREATION
687
--\\=================================//
688
689
for i = 1, 35 do
690
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(1.01,0.5,1.01),false)
691
	FACE.Color = C3(0,0,0)
692
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
693
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
694
end
695
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Eyeball", VT(0.15,0.15,0.15),false)
696
MakeForm(EYE,"Ball")
697
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0.15,0.26,-0.55), CF(0, 0, 0))
698
local EYE2 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Eyeball", VT(0.15,0.15,0.15),false)
699
MakeForm(EYE2,"Ball")
700
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE2, CF(-0.15,0.26,-0.55), CF(0, 0, 0))
701
local Gun = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Gun", VT(0, 0, 0),false)
702
local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "468351345", "468351348", VT(0.06,0.06,0.06), VT(0,0, 0))
703
local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.8, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
704
705
local BODY = {}
706
707
for _, c in pairs(Character:GetDescendants()) do
708
	if c:IsA("BasePart") and c.Name ~= "Handle" then
709
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
710
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
711
		end
712
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
713
	elseif c:IsA("JointInstance") then
714
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
715
	end
716
end
717
718
for e = 1, #BODY do
719
	if BODY[e] ~= nil then
720
		local STUFF = BODY[e]
721
		local PART = STUFF[1]
722
		local PARENT = STUFF[2]
723
		local MATERIAL = STUFF[3]
724
		local COLOR = STUFF[4]
725
		local TRANSPARENCY = STUFF[5]
726
		if PART.ClassName == "Part" and PART ~= RootPart then
727
			PART.Material = MATERIAL
728
			PART.Color = COLOR
729
			PART.Transparency = TRANSPARENCY
730
		end
731
		PART.AncestryChanged:Connect(function()
732
			PART.Parent = PARENT
733
		end)
734
	end
735
end
736
737
function refit()
738
	Character.Parent = workspace
739
	for e = 1, #BODY do
740
		if BODY[e] ~= nil then
741
			local STUFF = BODY[e]
742
			local PART = STUFF[1]
743
			local PARENT = STUFF[2]
744
			local MATERIAL = STUFF[3]
745
			local COLOR = STUFF[4]
746
			local TRANSPARENCY = STUFF[5]
747
			if PART.ClassName == "Part" and PART ~= RootPart then
748
				PART.Material = MATERIAL
749
				PART.Color = COLOR
750
				PART.Transparency = TRANSPARENCY
751
			end
752
			if PART.Parent ~= PARENT then
753
				Humanoid:remove()
754
				PART.Parent = PARENT
755
				Humanoid = IT("Humanoid",Character)
756
			end
757
		end
758
	end
759
end
760
761
local SKILLTEXTCOLOR = C3(0,0,0)
762
local SKILLFONT = "SciFi"
763
local SKILLTEXTSIZE = 7
764
765
Humanoid.Died:connect(function()
766
	refit()
767
end)
768
769
function Blink()
770
	coroutine.resume(coroutine.create(function()
771
		if EYE ~= nil then
772
			for i = 1, 5 do
773
				Swait()
774
				EYE.Mesh.Scale = EYE.Mesh.Scale - VT(0,0.2,0)
775
				EYE2.Mesh.Scale = EYE.Mesh.Scale
776
			end
777
			for i = 1, 7 do
778
				Swait()
779
				EYE.Mesh.Scale = EYE.Mesh.Scale + VT(0,0.2,0)
780
				EYE2.Mesh.Scale = EYE.Mesh.Scale
781
			end
782
			EYE.Mesh.Scale = VT(1,1,1)
783
			EYE2.Mesh.Scale = EYE.Mesh.Scale
784
		end
785
	end))
786
end
787
788
local AMMO1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.80, 0), UD2(0.07, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Ammo 1 Frame")
789
local AMMO2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.80, 0), UD2(0.07, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Ammo 2 Frame")
790
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
791
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
792
793
local SKILL3TEXT = CreateLabel(SKILL1FRAME, "[Z] Shell", C3(0,0,0), 7, SKILLFONT, 0, 2, 1, "Text 3")
794
local SKILL4TEXT = CreateLabel(SKILL2FRAME, "[X] Sinful Shell", C3(1,0,0), 8, "Antique", 0, 2, 1, "Text 4")
795
796
local AMMOIMAGE1 = IT("ImageLabel",AMMO1FRAME)
797
AMMOIMAGE1.Size = UD2(1,0,1,0)
798
AMMOIMAGE1.BackgroundTransparency = 1
799
AMMOIMAGE1.BorderSizePixel = 0
800
AMMOIMAGE1.Image = "http://www.roblox.com/asset/?id=1493961907"
801
local AMMOIMAGE2 = IT("ImageLabel",AMMO2FRAME)
802
AMMOIMAGE2.Size = UD2(1,0,1,0)
803
AMMOIMAGE2.BackgroundTransparency = 1
804
AMMOIMAGE2.BorderSizePixel = 0
805
AMMOIMAGE2.Image = "http://www.roblox.com/asset/?id=1493962162"
806
807
--//=================================\\
808
--||	     DAMAGE FUNCTIONS
809
--\\=================================//
810
811
function StatLabel(CFRAME, TEXT, COLOR)
812
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
813
	STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
814
	local BODYGYRO = IT("BodyGyro", STATPART)
815
	game:GetService("Debris"):AddItem(STATPART ,5)
816
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
817
	BILLBOARDGUI.Adornee = STATPART
818
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
819
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
820
	BILLBOARDGUI.AlwaysOnTop = false
821
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
822
	TEXTLABEL.BackgroundTransparency = 1
823
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
824
	TEXTLABEL.Text = TEXT
825
	TEXTLABEL.Font = SKILLFONT
826
	TEXTLABEL.FontSize="Size42"
827
	TEXTLABEL.TextColor3 = COLOR
828
	TEXTLABEL.TextStrokeTransparency = 0
829
	TEXTLABEL.TextScaled = true
830
	TEXTLABEL.TextWrapped = true
831
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
832
		for i = 1, 10 do
833
			Swait()
834
			STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
835
			TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/10)
836
			TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
837
		end
838
		THEPART.Parent = nil
839
	end),STATPART, TEXTLABEL)
840
end
841
842
--//=================================\\
843
--||			DAMAGING
844
--\\=================================//
845
846
function ApplyDamage(Humanoid,Damage,TorsoPart)
847
	local defence = Instance.new("BoolValue",Humanoid.Parent)
848
	defence.Name = ("HitBy"..Player.Name)
849
	game:GetService("Debris"):AddItem(defence, 0.001)
850
	Damage = Damage * DAMAGEMULTIPLIER
851
	if Humanoid.Health ~= 0 then
852
		local CritChance = MRANDOM(1,100)
853
		if Damage > Humanoid.Health then
854
			Damage = math.ceil(Humanoid.Health)
855
			if Damage == 0 then
856
				Damage = 0.1
857
			end
858
		end
859
		Humanoid.Health = Humanoid.Health - Damage
860
		StatLabel(TorsoPart.CFrame * CF(0, 0 + (TorsoPart.Size.z - 1), 0), Damage, C3(0, 0, 0))
861
	end
862
end
863
864
function Ghostify(POSITION,RANGE)
865
	local CHILDREN = workspace:GetDescendants()
866
	for index, CHILD in pairs(CHILDREN) do
867
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
868
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
869
			if HUM then
870
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
871
				if TORSO then
872
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
873
						local GHOST = GHOSTBASE:Clone()
874
						GHOST.Parent = Effects
875
						GHOST.Torso.CFrame = TORSO.CFrame
876
						table.insert(GHOSTS,GHOST)
877
						CHILD:remove()
878
					end
879
				end
880
			end
881
		end
882
	end
883
end
884
885
--//=================================\\
886
--||	ATTACK FUNCTIONS AND STUFF
887
--\\=================================//
888
889
function Shell()
890
	ATTACK = true
891
	Rooted = false
892
	local GYRO = IT("BodyGyro",RootPart)
893
	GYRO.D = 750
894
	GYRO.P = 20000
895
	GYRO.MaxTorque = VT(0,40000000,0)
896
	for i=0, 1, 0.1 / Animation_Speed do
897
		Swait()
898
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
899
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
900
		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)
901
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(115), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
902
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
903
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
904
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
905
	end
906
	GYRO:remove()
907
	CreateSound(696483710, Gun, 5, 1, false)
908
	local AIMHIT,AIMPOS,NORMAL = BulletDetection(Gun.Position,Mouse.Hit.p)
909
	SpawnTrail(Gun.CFrame*CF(1.5,0.5,0).p,AIMPOS)
910
	WACKYEFFECT({Time = 3, EffectType = "Sphere", Size = VT(1,0.3,0.3), Size2 = VT(1,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun.CFrame*CF(1.5,0.5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
911
	for i=0, 0.3, 0.1 / Animation_Speed do
912
		Swait()
913
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
914
		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)
915
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0.3) * ANGLES(RAD(110), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
916
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
917
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
918
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
919
	end
920
	ATTACK = false
921
	Rooted = false
922
end
923
924
function Taunt()
925
	ATTACK = true
926
	local LAUGH = nil
927
	coroutine.resume(coroutine.create(function()
928
		repeat
929
			Swait()
930
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
931
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
932
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE, -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
933
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
934
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
935
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
936
		until LAUGH ~= nil
937
		repeat
938
			Swait()
939
			LAUGH.Parent = Head
940
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0+(0.1*LAUGH.PlaybackLoudness/75) + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
941
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE+(0.1*LAUGH.PlaybackLoudness/75)) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
942
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE+(0.1*LAUGH.PlaybackLoudness/75), -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
943
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE+(0.1*LAUGH.PlaybackLoudness/75), 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
944
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
945
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
946
		until LAUGH.Playing == false
947
	ATTACK = false
948
	end))
949
	wait(0.1)
950
	sick:Stop()
951
	LAUGH = CreateSound(184605339, Head, 10, 1, false)
952
	sick:Resume()
953
end
954
955
function SinfulShell()
956
	ATTACK = true
957
	Rooted = false
958
	local GYRO = IT("BodyGyro",RootPart)
959
	GYRO.D = 750
960
	GYRO.P = 20000
961
	GYRO.MaxTorque = VT(0,40000000,0)
962
	for i=0, 1, 0.1 / Animation_Speed do
963
		Swait()
964
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
965
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
966
		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)
967
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(115), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
968
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
969
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
970
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
971
	end
972
	GYRO:remove()
973
	CreateSound(696483710, Gun, 5, 1, false)
974
	WACKYEFFECT({Time = 3, EffectType = "Sphere", Size = VT(1,0.3,0.3), Size2 = VT(1,0,0), Transparency = 0, Transparency2 = 1, CFrame = Gun.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})
975
	coroutine.resume(coroutine.create(function()
976
		local Bullet = CreatePart(3, Effects, "SmoothPlastic", 0, 0, "Really red", "Sinful bullet", VT(0,0,0))
977
		CreateMesh("SpecialMesh", Bullet, "FileMesh", "94295100", "", VT(6, 6, 7), VT(0,0, 0))
978
		Bullet.CFrame = Gun.CFrame*CF(1.5,0.5,0)
979
		local AIMPOINT = Mouse.Hit.p
980
		local STARTPOS = Gun.CFrame*CF(1.5,0.5,0).p
981
		local VECTOR = CF(STARTPOS,AIMPOINT) 
982
		local IMPACTED = false
983
		CreateSound(1393698948, Bullet, 10, 1, true)
984
		for E = 1, 50 do
985
			if IMPACTED == true then
986
				break
987
			end
988
			local TARGETPOINT = VECTOR*CF(0,0,-E*5)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,1,0).p
989
			Bullet.CFrame = CF(Bullet.Position,TARGETPOINT)
990
			for i = 1, 5 do
991
				Swait()
992
				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})
993
				Bullet.CFrame = Bullet.CFrame*CF(0,0,-1)
994
				local AIMHIT,AIMPOS,NORMAL = Raycast(Bullet.Position,Bullet.CFrame.lookVector,1.3,Character)
995
				if AIMHIT ~= nil then
996
					IMPACTED = true
997
					break
998
				end
999
			end
1000
		end
1001
		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})
1002
		for i = 1, 7 do
1003
			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})
1004
		end
1005
		Ghostify(Bullet.Position,10)
1006
		Bullet:remove()
1007
	end))
1008
	for i=0, 0.3, 0.1 / Animation_Speed do
1009
		Swait()
1010
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1011
		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)
1012
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0.3) * ANGLES(RAD(110), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1013
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
1014
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(35)), 0.75 / Animation_Speed)
1015
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.3 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(-25)), 0.75 / Animation_Speed)
1016
	end
1017
	ATTACK = false
1018
	Rooted = false
1019
end
1020
1021
--//=================================\\
1022
--||	  ASSIGN THINGS TO KEYS
1023
--\\=================================//
1024
1025
function MouseDown(Mouse)
1026
	if ATTACK == false then
1027
	end
1028
end
1029
1030
function MouseUp(Mouse)
1031
HOLD = false
1032
end
1033
1034
function KeyDown(Key)
1035
	KEYHOLD = true
1036
	if Key == "z" and ATTACK == false then
1037
		Shell()
1038
	end
1039
1040
	if Key == "t" and ATTACK == false then
1041
		Taunt()
1042
	end
1043
1044
	if Key == "x" and ATTACK == false then
1045
		SinfulShell()
1046
	end
1047
end
1048
1049
function KeyUp(Key)
1050
	KEYHOLD = false
1051
end
1052
1053
	Mouse.Button1Down:connect(function(NEWKEY)
1054
		MouseDown(NEWKEY)
1055
	end)
1056
	Mouse.Button1Up:connect(function(NEWKEY)
1057
		MouseUp(NEWKEY)
1058
	end)
1059
	Mouse.KeyDown:connect(function(NEWKEY)
1060
		KeyDown(NEWKEY)
1061
	end)
1062
	Mouse.KeyUp:connect(function(NEWKEY)
1063
		KeyUp(NEWKEY)
1064
	end)
1065
1066
--//=================================\\
1067
--\\=================================//
1068
1069
1070
function unanchor()
1071
	if UNANCHOR == true then
1072
		g = Character:GetChildren()
1073
		for i = 1, #g do
1074
			if g[i].ClassName == "Part" then
1075
				g[i].Anchored = false
1076
			end
1077
		end
1078
	end
1079
end
1080
1081
1082
--//=================================\\
1083
--||	WRAP THE WHOLE SCRIPT UP
1084
--\\=================================//
1085
1086
Humanoid.Changed:connect(function(Jump)
1087
	if Jump == "Jump" and (Disable_Jump == true) then
1088
		Humanoid.Jump = false
1089
	end
1090
end)
1091
1092
local BLINKLOOP = 0
1093
1094
while true do
1095
	Swait()
1096
	script.Parent = WEAPONGUI
1097
	ANIMATE.Parent = nil
1098
	Humanoid.Parent = Character
1099
	if Humanoid then
1100
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1101
		IDLEANIMATION:Play()
1102
	end
1103
	SINE = SINE + CHANGE
1104
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1105
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1106
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1107
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1108
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1109
		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)
1110
		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)
1111
		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)
1112
		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)
1113
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1114
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1115
		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)
1116
		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)
1117
		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)
1118
	end
1119
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1120
		ANIM = "Jump"
1121
		if ATTACK == false then
1122
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1123
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1124
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1125
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1126
			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)
1127
			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)
1128
	    end
1129
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1130
		ANIM = "Fall"
1131
		if ATTACK == false then
1132
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1133
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1134
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1135
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1136
			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)
1137
			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)
1138
		end
1139
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1140
		ANIM = "Idle"
1141
		if ATTACK == false then
1142
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(15)), 0.15 / Animation_Speed)
1143
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1144
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(25), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1145
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.45, -0.1) * ANGLES(RAD(25), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1146
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(45)), 0.15 / Animation_Speed)
1147
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1148
		end
1149
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1150
		ANIM = "Walk"
1151
		if ATTACK == false then
1152
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2) * ANGLES(RAD(30), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1153
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 3 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1154
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.7 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(30), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.35 / Animation_Speed)
1155
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(30-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
1156
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(30), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1157
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(30), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1158
		end
1159
	end
1160
	unanchor()
1161
	Humanoid.MaxHealth = "inf"
1162
	Humanoid.Health = "inf"
1163
	if Rooted == false then
1164
		Disable_Jump = false
1165
		Humanoid.WalkSpeed = Speed
1166
	elseif Rooted == true then
1167
		Disable_Jump = true
1168
		Humanoid.WalkSpeed = 0
1169
	end
1170
	sick.SoundId = "rbxassetid://1429729391"
1171
	sick.Looped = true
1172
	sick.Pitch = 1
1173
	sick.Volume = 1.3
1174
	sick.Playing = true
1175
	sick.Parent = Torso
1176
	if Head:FindFirstChild("face") then
1177
		Head.face.Texture = "rbxassetid://315622231"
1178
	end
1179
	BLINKLOOP = BLINKLOOP + 1
1180
	if BLINKLOOP >=650 then
1181
		BLINKLOOP = 0
1182
		Blink()
1183
	end
1184
	if #GHOSTS>0 then
1185
		for e=1,#GHOSTS do
1186
			if GHOSTS[e]~=nil then
1187
				local Thing=GHOSTS[e]
1188
				if Thing~=nil then
1189
					if Thing:FindFirstChild("Head") then
1190
						if Thing:FindFirstChild("Head"):FindFirstChild("face") then
1191
							Thing:FindFirstChild("Head").face.Texture = "rbxassetid://479674570"
1192
						end
1193
						if Thing:FindFirstChild("Head"):FindFirstChildOfClass("Sound") then
1194
							Thing:FindFirstChild("Head"):FindFirstChildOfClass("Sound"):remove()
1195
						end
1196
					end
1197
					local TORSO = Thing:FindFirstChild("Torso")
1198
					if TORSO then
1199
						TORSO.Anchored = false
1200
						local ROOT = Thing.HumanoidRootPart
1201
						local RootJoint1 = ROOT:FindFirstChild("RootJoint")
1202
						local Neck1 = TORSO:FindFirstChild("Neck")
1203
						local RightShoulder1 = TORSO:FindFirstChild("Right Shoulder")
1204
						local LeftShoulder1 = TORSO:FindFirstChild("Left Shoulder")
1205
						local RightHip1 = TORSO:FindFirstChild("Right Hip")
1206
						local LeftHip1 = TORSO:FindFirstChild("Left Hip")
1207
						if ROOT and RootJoint1 then
1208
							local VELOCITY = (ROOT.Velocity * VT(1, 0, 1)).magnitude
1209
							if VELOCITY < 1 then
1210
								RootJoint1.C0 = ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 * SIN(SINE / 12)))
1211
								Neck1.C0 = NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD( - 2.5 * SIN(SINE / 12)))
1212
								RightShoulder1.C0 = CF(1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 1.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0
1213
								LeftShoulder1.C0 = CF(-1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 1.5 * SIN(SINE / 12))) * LEFTSHOULDERC0
1214
								RightHip1.C0 = CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
1215
								LeftHip1.C0 = CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
1216
							elseif VELOCITY > 1 then
1217
								RootJoint1.C0 = ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 * SIN(SINE / 12)))
1218
								Neck1.C0 = NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD( - 2.5 * SIN(SINE / 12)))
1219
								RightShoulder1.C0 = CF(1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 1.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0
1220
								LeftShoulder1.C0 = CF(-1.5, 0.5 + 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 1.5 * SIN(SINE / 12))) * LEFTSHOULDERC0
1221
								RightHip1.C0 = CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0))
1222
								LeftHip1.C0 = CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0))
1223
							end
1224
						end
1225
						local Human = Thing.Humanoid
1226
						if Human then
1227
							Human.HipHeight = 0.3
1228
							for _, c in pairs(Thing:GetChildren()) do
1229
								if c.ClassName == "Part" and c.Transparency < 1 then
1230
									c.Color = C3(0,0,0)
1231
									c.Transparency = 0.65 + 0.15 * COS(SINE / 25)
1232
								elseif c.ClassName == "Accessory" or c.ClassName == "Hat" or c.ClassName == "CharacterMesh" or c.ClassName == "Shirt" or c.ClassName == "Pants" then
1233
									c:remove()
1234
								end
1235
							end
1236
							if Human then
1237
								local IDLEANIMATION = Human:LoadAnimation(ROBLOXIDLEANIMATION)
1238
								IDLEANIMATION:Play()
1239
							end
1240
							local list = game.Workspace:children()
1241
							local torso = nil
1242
							local dist = 50
1243
							local temp = nil
1244
							local human = nil
1245
							local temp2 = nil
1246
							local OwnerInDanger = false
1247
							for x = 1, #list do
1248
								temp2 = list[x]
1249
								if (temp2.className == "Model") and (temp2 ~= Character) and (temp2 ~= Thing) then
1250
									temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
1251
									human = temp2:findFirstChildOfClass("Humanoid")
1252
									if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
1253
										if (temp.Position - Torso.Position).magnitude < 15 then
1254
											OwnerInDanger = true
1255
											newdist = (temp.Position - TORSO.Position).magnitude
1256
											dist = (Torso.Position - temp.Position).magnitude
1257
											Human:MoveTo(temp.Position)
1258
											torso = temp
1259
											if newdist < 7 then
1260
												torso.CFrame = CF(torso.Position,TORSO.Position)*CF(0,0,5)
1261
												CreateSound(814168787, temp, 1, 2, false)
1262
												ApplyDamage(human,MRANDOM(15,35),temp)
1263
												WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position,torso.Position)*CF(0,0,-2) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1264
												WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = torso.CFrame*CF(0,-4*torso.Size.Y/2,0), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1265
											end
1266
										end
1267
									end
1268
								end
1269
							end
1270
							if OwnerInDanger == false then
1271
								for x = 1, #list do
1272
									temp2 = list[x]
1273
									if (temp2.className == "Model") and (temp2 ~= Character) and (temp2 ~= Thing) then
1274
										temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
1275
										human = temp2:findFirstChildOfClass("Humanoid")
1276
										if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
1277
											if (temp.Position - Torso.Position).magnitude < dist then
1278
												newdist = (temp.Position - TORSO.Position).magnitude
1279
												Human:MoveTo(temp.Position)
1280
												torso = temp
1281
												if newdist < 15 then
1282
													if MRANDOM(1,35) == 1 then
1283
														CreateSound(438665935, temp, 1, 3, false)
1284
														ApplyDamage(human,MRANDOM(2,20),temp)
1285
														WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(1,1,1), Size2 = VT(3,1,3), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position,torso.Position)*CF(0,0,-2) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1286
													end
1287
												end
1288
											end
1289
										end
1290
									end
1291
								end
1292
							end
1293
							if torso == nil then
1294
								Human.WalkSpeed = Speed -0.2
1295
								if (Torso.Position - TORSO.Position).magnitude < 12 and (Torso.Position - TORSO.Position).magnitude >= 11 then
1296
									Human:MoveTo(TORSO.Position)
1297
								elseif (Torso.Position - TORSO.Position).magnitude > 15 then
1298
									Human:MoveTo(Torso.Position)
1299
								elseif (Torso.Position - TORSO.Position).magnitude < 11 then
1300
									Human:MoveTo(CF(Torso.Position,TORSO.Position)*CF(0,0,-5).p)
1301
								end
1302
							else
1303
								if OwnerInDanger == false then
1304
									Human.WalkSpeed = Speed*1.2
1305
								else
1306
									Human.WalkSpeed = Speed*5
1307
								end
1308
							end
1309
							if Human.Health == 0 then
1310
								Thing:remove()
1311
								table.remove(GHOSTS,e)
1312
							else
1313
								Human.Health = Human.Health + 0.5
1314
							end
1315
						else
1316
							Thing:remove()
1317
							table.remove(GHOSTS,e)
1318
						end
1319
					else
1320
						Thing:remove()
1321
						table.remove(GHOSTS,e)
1322
					end
1323
				end
1324
			end
1325
		end
1326
	end
1327
	refit()
1328
end
1329
1330
--//=================================\\
1331
--\\=================================//
1332
1333
1334
1335
1336
1337
--//====================================================\\--
1338
--||			  		 END OF SCRIPT
1339
--\\====================================================//--