View difference between Paste ID: 3Bi8v3ea and w083MWB7
SHOW: | | - or go back to the newest paste.
1
script.Parent.MouseButton1Click:connect(function()
2
	wait(1/60)
3
-- Created by Nebula_Zorua --
4
-- Killbot --
5
-- A cyborg that got taken over by a virus --
6
-- Discord: Nebula the Zorua#6969
7
-- Youtube: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
8
9
10
--// Initializing \\--
11
local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
12-
local Plrs = S.Players
12+
local Plrs = owner
13-
local Plr = Plrs.LocalPlayer
13+
local Plr = owner
14
local Char = Plr.Character
15
local Hum = Char:FindFirstChildOfClass'Humanoid'
16
local RArm = Char["Right Arm"]
17
local LArm = Char["Left Arm"]
18
local RLeg = Char["Right Leg"]
19
local LLeg = Char["Left Leg"]	
20
local Root = Char:FindFirstChild'HumanoidRootPart'
21
local Torso = Char.Torso
22
local Head = Char.Head
23
local NeutralAnims = true
24
local Attack = false
25
local BloodPuddles = {}
26
local Effects = {}
27
local Debounces = {Debounces={}}
28
local Mouse = Plr:GetMouse()
29
local Hit = {}
30
local Sine = 0
31
local Idle = 0
32
local Change = 1
33
local FLArm,FRArm,FRArmW,FLArmW
34
local Stunned = {}
35
local VoidSB = (game.PlaceId == 843468296) -- You can change the 843468296 to 0 if you dont care about potential lag on Void SB
36
--// Debounce System \\--
37
38
39
function Debounces:New(name,cooldown)
40
	local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
41
	setmetatable(aaaaa,{__index = Debounces})
42
	Debounces.Debounces[name] = aaaaa
43
	return aaaaa
44
end
45
46
function Debounces:Use(overrideUsable)
47
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
48
	if(self.Usable or overrideUsable)then
49
		self.Usable = false
50
		self.CoolingDown = true
51
		local LastUse = time()
52
		self.LastUse = LastUse
53
		delay(self.Cooldown or 2,function()
54
			if(self.LastUse == LastUse)then
55
				self.CoolingDown = false
56
				self.Usable = true
57
			end
58
		end)
59
	end
60
end
61
62
function Debounces:Get(name)
63
	assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
64
	for i,v in next, Debounces.Debounces do
65
		if(i == name)then
66
			return v;
67
		end
68
	end
69
end
70
71
function Debounces:GetProgressPercentage()
72
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
73
	if(self.CoolingDown and not self.Usable)then
74
		return math.max(
75
			math.floor(
76
				(
77
					(time()-self.LastUse)/self.Cooldown or 2
78
				)*100
79
			)
80
		)
81
	else
82
		return 100
83
	end
84
end
85
86
--// Shortcut Variables \\--
87
local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
88
local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
89
local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
90
local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge,RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end}
91
local R3 = {N=Region3.new}
92
local De = S.Debris
93
local WS = workspace
94
local Lght = S.Lighting
95
local RepS = S.ReplicatedStorage
96
local IN = Instance.new
97
98
--// Extended ROBLOX tables \\--
99
local Instance = setmetatable({AllChildren = function(where,callback,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do callback(v) end end,  ClearChildrenOfClass = function(where,class,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do if(v:IsA(class))then v:destroy();end;end;end},{__index = Instance})
100
--// Customization \\--
101
102
local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
103
local Remove_Hats = false
104
local Remove_Clothing = false
105
local PlayerSize = 1
106
local DamageColor = BrickColor.new'Really red'
107
local MusicID = 1030796589
108
local MusicPitch = 1
109
local BloodID = "rbxassetid://284205403"
110
local BloodColor = BrickColor.new'Crimson'
111
local BloodMaterial = Enum.Material.SmoothPlastic
112
113
--// Weapon and GUI creation, and Character Customization \\--
114
115
if(Remove_Hats)then Instance.ClearChildrenOfClass(Char,"Accessory",true) end
116
if(Remove_Clothing)then Instance.ClearChildrenOfClass(Char,"Clothing",true) Instance.ClearChildrenOfClass(Char,"ShirtGraphic",true) end
117
local Effects = IN("Folder",Char)
118
Effects.Name = "Effects"
119
120
New = function(Object, Parent, Name, Data)
121
	local Object = Instance.new(Object)
122
	for Index, Value in pairs(Data or {}) do
123
		Object[Index] = Value
124
	end
125
	Object.Parent = Parent
126
	Object.Name = Name
127
	return Object
128
end
129
130
131
132
CyborgArm = New("Model",Char,"CyborgArm",{})
133
Handle = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Smoky grey"),Material = Enum.Material.Metal,Size = Vector3.new(1.0500015, 2.02999949, 1.07999992),CFrame = CFrame.new(-138.347275, 2.99473095, 41.7816849, 0.999635339, 8.27677286e-06, 0.0270056836, -0.000191000072, 0.999977112, 0.00676353322, -0.0270050094, -0.00676622428, 0.999612451),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0,0,0),})
134
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.429999948, 0.100000001, 1.04999983),CFrame = CFrame.new(-138.369171, 2.89115906, 41.8271637, 0.505694926, -0.862284958, 0.0271573812, 0.862490892, 0.506027818, 0.0067293453, -0.019545, 0.0200200025, 0.999608755),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
135
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.505694926, 0.862490892, -0.0195449982, -0.862284899, 0.506027818, 0.0200199969, 0.0271573793, 0.00672934437, 0.999608576),C1 = CFrame.new(0.0136108398, -0.108844995, -0.0342674255, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
136
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.600001693, 0.100000001, 1.04999983),CFrame = CFrame.new(-138.268127, 3.26462603, 41.8218994, 0.0100010047, -0.999581397, 0.0271513518, 0.999925494, 0.010187286, 0.00673122332, -0.00700500328, 0.027082013, 0.999608815),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
137
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.0100010047, 0.999925494, -0.00700500328, -0.999581337, 0.010187286, 0.0270820074, 0.0271513499, 0.00673122238, 0.999608636),C1 = CFrame.new(-0.0874328613, 0.264621973, -0.028968811, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
138
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.3000018, 0.100000001, 1.04999983),CFrame = CFrame.new(-138.217133, 3.61339307, 41.8189926, 0.778245091, -0.627379835, 0.0270029604, 0.627452075, 0.778625846, 0.00676273741, -0.0252680089, 0.0116800005, 0.999612689),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
139
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.778245091, 0.627452075, -0.0252680033, -0.627379835, 0.778625846, 0.0116799958, 0.0270029567, 0.00676273648, 0.99961251),C1 = CFrame.new(-0.138427734, 0.613389015, -0.0260467529, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
140
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Shape = Enum.PartType.Cylinder,Size = Vector3.new(0.840000331, 0.420000285, 1),CFrame = CFrame.new(-138.395523, 2.38962889, 41.7660217, -0.00574199716, -0.999983609, 1.77533366e-09, 0.999983549, -0.00574199716, 9.3131769e-10, 9.41781764e-10, 1.77533366e-09, 1.00000012),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
141
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, -0.00574199716, 0.999983549, 0, -0.999983549, -0.00574199716, 0, 0, 0, 1),C1 = CFrame.new(0.0399932861, -0.610375166, 0.0268669128, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
142
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Shape = Enum.PartType.Cylinder,Size = Vector3.new(0.840000331, 0.420000285, 0.2900002),CFrame = CFrame.new(-138.540939, 3.80931711, 41.9832687, 2.29982252e-05, -0.999983609, -0.00574393803, -0.00452899979, -0.00574398367, 0.999973238, -0.999989927, 3.01669934e-06, -0.00452905567),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
143
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 2.29999951e-05, -0.00452899886, -0.999989748, -0.999983549, -0.00574398367, 3.01490991e-06, -0.00574393803, 0.999973238, -0.00452905614),C1 = CFrame.new(0.185333252, 0.809313059, -0.190429688, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
144
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Smoky grey"),Material = Enum.Material.Metal,Shape = Enum.PartType.Ball,Size = Vector3.new(1.16000044, 1.16000044, 1.16000044),CFrame = CFrame.new(-138.563065, 3.74006891, 41.8137894, 1, -1.23944917e-22, 1.77533366e-09, -1.48608469e-11, 1, 9.3131769e-10, -1.80443749e-09, 9.31322575e-10, 1.00000012),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0,0,0),})
145
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C1 = CFrame.new(0.207519531, 0.740064859, -0.0209579468, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
146
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.660001755, 0.100000001, 0.799999833),CFrame = CFrame.new(-138.557587, 3.57138705, 41.9535294, 0.999635398, 8.27676195e-06, 0.0270056874, -0.000191000116, 0.999977112, 0.00676353415, -0.0270050168, -0.00676622475, 0.999612629),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
147
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.999635339, -0.000191000072, -0.0270050094, 8.27677377e-06, 0.999977112, -0.00676622428, 0.0270056836, 0.00676353322, 0.999612451),C1 = CFrame.new(0.20199585, 0.571382999, -0.160697937, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
148
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.660001755, 0.100000001, 0.0899999291),CFrame = CFrame.new(-138.548004, 3.20288205, 42.3108978, 0.999635398, 8.27676195e-06, 0.0270056874, -0.000191000116, 0.999977112, 0.00676353415, -0.0270050168, -0.00676622475, 0.999612629),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
149
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.999635339, -0.000191000072, -0.0270050094, 8.27677377e-06, 0.999977112, -0.00676622428, 0.0270056836, 0.00676353322, 0.999612451),C1 = CFrame.new(0.19229126, 0.202877998, -0.518062592, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
150
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.390001893, 0.100000001, 1.04999983),CFrame = CFrame.new(-138.031433, 3.68374205, 41.8135147, 0.999635398, 8.27676195e-06, 0.0270056874, -0.000191000116, 0.999977112, 0.00676353415, -0.0270050168, -0.00676622475, 0.999612629),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
151
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.999635339, -0.000191000072, -0.0270050094, 8.27677377e-06, 0.999977112, -0.00676622428, 0.0270056836, 0.00676353322, 0.999612451),C1 = CFrame.new(-0.324111938, 0.683737993, -0.0205078125, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
152
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.2800017, 0.100000001, 0.690000117),CFrame = CFrame.new(-138.393951, 2.11307812, 42.0131454, 0.0100010047, -0.999581397, 0.0271513518, 0.999925494, 0.010187286, 0.00673122332, -0.00700500328, 0.027082013, 0.999608815),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
153
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, 0.0100010047, 0.999925494, -0.00700500328, -0.999581337, 0.010187286, 0.0270820074, 0.0271513499, 0.00673122238, 0.999608636),C1 = CFrame.new(0.0383300781, -0.886925936, -0.220256805, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
154
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.600001693, 0.100000001, 1.04999983),CFrame = CFrame.new(-138.452835, 2.48128104, 41.8321991, -0.223359078, -0.974358141, 0.027149044, 0.974736214, -0.223258108, 0.00673288852, -0.000498998852, 0.0279670097, 0.999608934),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(1, 0, 0),})
155
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = RArm,C0 = CFrame.new(0, 0, 0, -0.223359063, 0.974736214, -0.000499000133, -0.974358141, -0.223258108, 0.0279670041, 0.0271490421, 0.00673288759, 0.999608755),C1 = CFrame.new(0.0972747803, -0.518723011, -0.0393295288, -0.99999994, 1.23908515e-22, -0.000331714633, 1.23944917e-22, 1, -1.09697344e-22, 0.000331714633, -1.09738441e-22, -0.99999994),})
156
157
for _,v in next, CyborgArm:children() do
158
	v.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
159
end
160
161
pcall(function() Char.ReaperShadowHead.Eye1.BrickColor = BrickColor.new'Really red' Char.ReaperShadowHead.Eye1.Material = 'Glass' end)
162
pcall(function() Char.ReaperShadowHead.Eye2.BrickColor = BrickColor.new'Really red' Char.ReaperShadowHead.Eye2.Material = 'Glass' end)
163
pcall(function() Char.LeftWing.BrickColor = BrickColor.new'Really red' Char.LeftWing.Transparency = 0.5 end)
164
165
166
if(PlayerSize ~= 1)then
167
	for _,v in next, Char:GetDescendats() do
168
		if(v:IsA'BasePart')then
169
			v.Size = v.Size * PlayerSize
170
		end
171
	end
172
end
173
174
--// Instance Creation Functions \\--
175
176
function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
177
	local Sound = IN("Sound")
178
	Sound.SoundId = "rbxassetid://".. tostring(id or 0)
179
	Sound.Pitch = pitch or 1
180
	Sound.Volume = volume or 1
181
	Sound.Looped = looped or false
182
	if(autoPlay)then
183
		coroutine.wrap(function()
184
			repeat wait() until Sound.IsLoaded
185
			Sound.Playing = autoPlay or false
186
		end)()
187
	end
188
	if(not looped and effect)then
189
		Sound.Ended:connect(function()
190
			Sound.Volume = 0
191
			Sound:destroy()
192
		end)
193
	elseif(effect)then
194
		warn("Sound can't be looped and a sound effect!")
195
	end
196
	Sound.Parent =parent or Torso
197
	return Sound
198
end
199
function Part(parent,color,material,size,cframe,anchored,cancollide)
200
	local part = IN("Part")
201
	part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
202
	part.Material = material or Enum.Material.SmoothPlastic
203
	part.TopSurface,part.BottomSurface=10,10
204
	part.Size = size or V3.N(1,1,1)
205
	part.CFrame = cframe or CF.N(0,0,0)
206
	part.CanCollide = cancollide or false
207
	part.Anchored = anchored or false
208
	part.Parent = parent or Char
209
	return part
210
end
211
212
function Mesh(parent,meshtype,meshid,textid,scale,offset)
213
	local part = IN("SpecialMesh")
214
	part.MeshId = meshid or ""
215
	part.TextureId = textid or ""
216
	part.Scale = scale or V3.N(1,1,1)
217
	part.Offset = offset or V3.N(0,0,0)
218
	part.MeshType = meshtype or Enum.MeshType.Sphere
219
	part.Parent = parent
220
	return part
221
end
222
223
NewInstance = function(instance,parent,properties)
224
	local inst = Instance.new(instance,parent)
225
	if(properties)then
226
		for i,v in next, properties do
227
			pcall(function() inst[i] = v end)
228
		end
229
	end
230
	return inst;
231
end
232
233
--// Music Creation \\--
234
local Music = Sound(Char,MusicID,MusicPitch,3,true,false,true)
235
Music.Name = 'Music'
236
237
--// Stop animations \\--
238
for _,v in next, Hum:GetPlayingAnimationTracks() do
239
	v:Stop();
240
end
241
242
pcall(game.Destroy,Char:FindFirstChild'Animate')
243
pcall(game.Destroy,Hum:FindFirstChild'Animator')
244
245
--// Joints \\--
246
247
local LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
248
local RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
249
local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
250
local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
251
local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
252
local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
253
local HW = NewInstance('Motor',Char,{Part0=Handle,Part1=RArm})
254
255
local LSC0 = LS.C0
256
local RSC0 = RS.C0
257
local NKC0 = NK.C0
258
local LHC0 = LH.C0
259
local RHC0 = RH.C0
260
local RJC0 = RJ.C0
261
262
--// Artificial HB \\--
263
264
local ArtificialHB = IN("BindableEvent", script)
265
ArtificialHB.Name = "Heartbeat"
266
267
script:WaitForChild("Heartbeat")
268
269
local tf = 0
270
local allowframeloss = false
271
local tossremainder = false
272
local lastframe = tick()
273
local frame = 1/Frame_Speed
274
ArtificialHB:Fire()
275
276
game:GetService("RunService").Heartbeat:connect(function(s, p)
277
	tf = tf + s
278
	if tf >= frame then
279
		if allowframeloss then
280
			script.Heartbeat:Fire()
281
			lastframe = tick()
282
		else
283
			for i = 1, math.floor(tf / frame) do
284
				ArtificialHB:Fire()
285
			end
286
			lastframe = tick()
287
		end
288
		if tossremainder then
289
			tf = 0
290
		else
291
			tf = tf - frame * math.floor(tf / frame)
292
		end
293
	end
294
end)
295
296
function swait(num)
297
	if num == 0 or num == nil then
298
		ArtificialHB.Event:wait()
299
	else
300
		for i = 0, num do
301
			ArtificialHB.Event:wait()
302
		end
303
	end
304
end
305
306
307
--// Effect Function(s) \\--
308
309
function FakeWeld(p0,p1)
310
	local attachment0 = Instance.new('Attachment',p0)
311
	local attachment1 = Instance.new('Attachment',p1)
312
	return NewInstance("HingeConstraint",p0,{Attachment0=attachment0,Attachment1=attachment1,LimitsEnabled=true,UpperAngle=0,LowerAngle=0})
313
end
314
315
function Fragment(v)
316
	v:ClearAllChildren()
317
	local Fragments = NewInstance("Folder",v.Parent,{Name='Fragmentation'})
318
	v.Archivable = true
319
	-- X
320
	v.Size = Vector3.new(v.Size.x/2,v.Size.y,v.Size.z)
321
	v.Name = v.Name.."Fragment"
322
	
323
	local a = v:Clone()
324
	a.Parent = Fragments
325
	a.CFrame = CF.N(-.5,1,1) * a.CFrame
326
	v.CFrame = CF.N(.5,1,1) * v.CFrame
327
	-- Y
328
	v.Size = Vector3.new(v.Size.x,v.Size.y/2,v.Size.z)
329
	
330
	local a = v:Clone()
331
	a.Parent = Fragments
332
	a.CFrame = CF.N(1,-.5,1) * a.CFrame
333
	v.CFrame = CF.N(1,.5,1) * v.CFrame
334
	-- Z
335
	v.Size = Vector3.new(v.Size.x,v.Size.y,v.Size.z/2)
336
	
337
	local a = v:Clone()
338
	a.Parent = Fragments
339
	a.CFrame = CF.N(1,1,-.5) * a.CFrame
340
	v.CFrame = CF.N(1,1,.5) * v.CFrame
341
	
342
	v.Parent = Fragments
343
	return Fragments
344
end
345
346
local blood = NewInstance("ParticleEmitter",nil,{
347
	Color = ColorSequence.new(BloodColor.Color),
348
	LightEmission=.1,
349
	LightInfluence=1,
350
	ZOffset=.9,
351
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
352
	Texture="rbxassetid://284205403",
353
	Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
354
	Acceleration = V3.N(0,-15,0),
355
	Lifetime = NumberRange.new(1,2),
356
	Rate=50,
357
	Speed = NumberRange.new(5,15),
358
	SpreadAngle = Vector2.new(15,15),
359
	Enabled = false,
360
	EmissionDirection = 'Back',
361
})
362
363
local blood2 = NewInstance("ParticleEmitter",nil,{
364
	Color = ColorSequence.new(BloodColor.Color),
365
	LightEmission=.1,
366
	LightInfluence=1,
367
	ZOffset=.9,
368
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
369
	Texture=BloodID,
370
	Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
371
	Acceleration = V3.N(0,-125,0),
372
	Lifetime = NumberRange.new(1,2),
373
	Rate=50,
374
	Speed = NumberRange.new(5,15),
375
	SpreadAngle = Vector2.new(15,15),
376
	Enabled = false,
377
	EmissionDirection = 'Back',
378
})
379
380
local blood3 = NewInstance("ParticleEmitter",nil,{
381
	Color = ColorSequence.new(BloodColor.Color),
382
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2),NumberSequenceKeypoint.new(1,.2)},
383
	Texture=BloodID,
384
	Lifetime = NumberRange.new(.4),
385
	Rate=50,
386
	LockedToPart=true,
387
	Speed = NumberRange.new(0,2),
388
	Enabled = false,
389
}) 
390
391
function Blood(size,cframe,amount)
392
	local part = Instance.new("Part",Effects)
393
	part.Transparency = 1
394
	part.Size = size
395
	part.Anchored = true
396
	part.CanCollide = false
397
	part.CFrame = cframe
398
	S.Debris:AddItem(part,6)
399
	local prtcl = blood:Clone()
400
	prtcl.Parent = part
401
	prtcl:Emit(amount)
402
	return part, prtcl
403
end
404
405
function Blood2(size,cframe)
406
	local part = Instance.new("Part",Effects)
407
	part.Transparency = 1
408
	part.Size = size
409
	part.Anchored = false
410
	part.CanCollide = false
411
	part.CFrame = cframe
412
	local prtcl = blood:Clone()
413
	prtcl.Enabled = true
414
	prtcl.Parent = part
415
	return part, prtcl
416
end
417
418
function Blood3(size,cframe,amount)
419
	local part = Instance.new("Part",Effects)
420
	part.Transparency = 1
421
	part.Size = size
422
	part.Anchored = true
423
	part.CanCollide = false
424
	part.CFrame = cframe
425
	S.Debris:AddItem(part,6)
426
	local prtcl = blood2:Clone()
427
	prtcl.Parent = part
428
	prtcl:Emit(amount)
429
	return part, prtcl
430
end
431
432
function Blood4(size,cframe)
433
	local part = Instance.new("Part",Effects)
434
	part.Transparency = 1
435
	part.Size = size
436
	part.Anchored = false
437
	part.CanCollide = false
438
	part.CFrame = cframe
439
	local prtcl = blood2:Clone()
440
	prtcl.Enabled = true
441
	prtcl.Parent = part
442
	return part, prtcl
443
end
444
445
446
function BloodDrop(pos,dir,maxsize)
447
	if(game.PlaceId ~= 843468296)then
448
		local owo = NewInstance("Part",Effects,{Transparency=0,Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.2,.2,.2), CanCollide = false})
449
		owo.CFrame=CF.N(pos,dir)
450
		local bv = Instance.new("BodyVelocity",owo) 
451
		bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
452
		bv.velocity = CF.N(pos,dir+V3.N(M.RNG(-3,3)/30,M.RNG(-3,3)/30,M.RNG(-3,3)/30)).lookVector*15
453
		bv.Name = "MOVE"
454
		--[[local prt = blood3:Clone()
455
		prt.Parent = owo
456
		prt.Enabled = true]]
457
		delay(.01, function() bv:destroy() end)
458
		local touch;
459
		touch = owo.Touched:connect(function(hit)
460
			if(hit.Anchored==true and hit.CanCollide and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
461
				touch:disconnect()
462
				BloodPuddle(owo.Position+V3.N(0,1,0),100,maxsize,owo)
463
				owo:destroy()
464
			end
465
		end)
466
	end
467
end
468
469
function BloodPuddle(position,range,maxSize,where)
470
	local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
471
		position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range			
472
	),{where,Char},false,true)
473
	if(hit and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
474
		if(hit.Name == 'BloodPuddle')then
475
			local dist = (position - hit.Position).magnitude
476
			if (hit.Size.Z <= 5 and hit.Size.Z < maxSize) or (hit.Size.Z > 5 and hit.Size.Z < maxSize and dist < hit.Size.Z/3) then
477
				--hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
478
				hit.Size = hit.Size + V3.N(.1,0,.1)
479
			end
480
			if(hit.Size.Z < 2)then
481
				pcall(function() hit.Sound:Play() end)
482
			end
483
		else
484
			local Puddle = NewInstance('Part',workspace,{Material=BloodMaterial,BrickColor=BloodColor,Size=V3.N(1,.1,1),CFrame=CF.N(pos,pos+norm)*CF.A(90*M.P/180,0,0),Anchored=true,CanCollide=false,Archivable=false,Locked=true,Name='BloodPuddle'})
485
			local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
486
			Sound(Puddle,685857471,1,2,false,false,true)
487
			coroutine.wrap(function()
488
				swait(75)
489
				repeat
490
					swait()
491
					Puddle.Size = Puddle.Size - V3.N(.02,0,.02)
492
				until Puddle.Size.Z < 0.51
493
				Puddle:destroy()
494
			end)()
495
		end
496
	end
497
end
498
499
function recurse(root,callback,i)
500
	i= i or 0
501
	for _,v in pairs(root:GetChildren()) do
502
		i = i + 1
503
		callback(i,v)
504
		
505
		if #v:GetChildren() > 0 then
506
			i = recurse(v,callback,i)
507
		end
508
	end
509
	
510
	return i
511
end
512
513
function ragdollJoint(character, part0, part1, attachmentName, className, properties) -- thanks mustardfat im too lazy
514
	if character:FindFirstChild("RagdollConstraint"..part1.Name) == nil then
515
	for i,v in pairs(character:GetChildren()) do
516
		if v:IsA("MeshPart") and (v.MeshId == 'http://www.roblox.com/asset/?id=553602991' or v.MeshId == 'http://www.roblox.com/asset/?id=553602977' or v.MeshId == 'http://www.roblox.com/asset/?id=553602987') then
517
			v.Size = Vector3.new(1,1,1)
518
		end
519
	end
520
	if part1:FindFirstChildOfClass('Motor6D') then
521
		part1:FindFirstChildOfClass('Motor6D'):Remove()
522
	end
523
	if attachmentName ~= "NeckAttachment" then
524
		attachmentName = attachmentName.."RigAttachment"
525
	end
526
	local constraint = Instance.new(className.."Constraint")
527
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
528
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
529
	constraint.Name = "RagdollConstraint"..part1.Name
530
	if character:FindFirstChildOfClass('Humanoid').Health > 0 then
531
	local collidepart = Instance.new('Part',part1)
532
	collidepart.Size = part1.Size/2
533
	if string.find(string.lower(part1.Name),"upper") then
534
		if string.find(string.lower(part1.Name),"leg") then
535
			collidepart.Size = part1.Size/3
536
		else
537
			collidepart.Size = part1.Size/2.5
538
		end
539
	end
540
	collidepart.CanCollide = true
541
	collidepart.Name = "RagdollJoint"
542
	collidepart.Anchored = false
543
	collidepart.Transparency = 1
544
	collidepart.CFrame = part1.CFrame
545
	collidepart:BreakJoints()
546
	local attachment0 = Instance.new('Attachment',part1)
547
	local attachment1 = Instance.new('Attachment',collidepart)
548
	if attachment0 and attachment1 then
549
		local constraint = Instance.new("HingeConstraint")
550
		constraint.Attachment0 = attachment0
551
		constraint.Attachment1 = attachment1
552
		constraint.LimitsEnabled = true
553
		constraint.UpperAngle = 0
554
		constraint.LowerAngle = 0
555
		constraint.Parent = character
556
	end
557
	if string.find(string.lower(part1.Name),"upper") then
558
		if string.find(string.lower(part1.Name),"leg") then
559
			attachment0.Position = Vector3.new(0,0.01,0)
560
		else
561
			attachment0.Position = Vector3.new(0,0.25,0)
562
		end
563
	else
564
		attachment0.Position = Vector3.new(0,-0.1,0)
565
	end
566
	end
567
	for _,propertyData in next,properties or {} do
568
		constraint[propertyData[1]] = propertyData[2]
569
	end
570
	constraint.Parent = character
571
	return constraint
572
	end
573
end
574
575
576
function getAttachment0(character,attachmentName)
577
	for _,child in next,character:children() do
578
		local attachment = child:FindFirstChild(attachmentName)
579
		if attachment then
580
			return attachment
581
		end
582
	end
583
end
584
585
586
function Ragdoll(who,half,snapped)
587
	pcall(function()
588
		who:breakJoints()
589
		local who = who
590
		local hhh = who:FindFirstChildOfClass'Humanoid'
591
		local t = GetTorso(who)
592
		pcall(function()
593
			who.HumanoidRootPart:destroy()
594
		end)
595
		hhh.Health = 0
596
		Stunned[who] = true
597
		if(hhh.RigType == Enum.HumanoidRigType.R6)then
598
			local RA,LA,RL,LL,HD = who:FindFirstChild'Right Arm',who:FindFirstChild'Left Arm',who:FindFirstChild'Right Leg',who:FindFirstChild'Left Leg',who:FindFirstChild'Head'			
599
			pcall(function()
600
				if(hhh.Health > 0)then  local CollideRA = NewInstance('Part',who,{Size=RA.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
601
				FakeWeld(RA,CollideRA) end
602
				local RAJ = NewInstance("Attachment",t,{Position=V3.N(1.5,.5,0),Orientation=V3.N()})
603
				local RAJ2 = NewInstance("Attachment",RA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
604
				local RAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RAJ,Attachment1=RAJ2})
605
			end)
606
			pcall(function()
607
				local LAJ = NewInstance("Attachment",t,{Position=V3.N(-1.5,.5,0),Orientation=V3.N()})
608
				local LAJ2 = NewInstance("Attachment",LA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
609
610
				local LAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LAJ,Attachment1=LAJ2})
611
612
				if(hhh.Health > 0)then local CollideLA = NewInstance('Part',who,{Size=LA.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
613
				FakeWeld(LA,CollideLA) end
614
			end)
615
			pcall(function()
616
				if(HD)then 
617
					local NJ = NewInstance('Attachment',t,{Position=V3.N(0,1,0),Orientation=V3.N()})
618
					local NJ2 = NewInstance('Attachment',HD,{Position=V3.N(0,-.5,0),Orientation=V3.N()})
619
					local NJ3 = NewInstance('Attachment',HD,{Position=V3.N(0,.5,0),Orientation=V3.N()})
620
					local HC = NewInstance('HingeConstraint',t,{LimitsEnabled=true,UpperAngle=50,LowerAngle=-50,Attachment0=NJ,Attachment1=NJ2})
621
	
622
					if(snapped)then
623
						NJ.Orientation = V3.N(0,90,0)
624
					end
625
					if(hhh.Health > 0)then 
626
						local CollideHD = NewInstance('Part',who,{Size=HD.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
627
						FakeWeld(HD,CollideHD)
628
					end
629
				end
630
			end)
631
			if(not half)then
632
				local RLJ = NewInstance("Attachment",t,{Position=V3.N(.5,-1,0),Orientation=V3.N()})
633
				local RLJ2 = NewInstance("Attachment",RL,{Position=V3.N(0,1,0),Orientation=V3.N()})
634
				local LLJ = NewInstance("Attachment",t,{Position=V3.N(-.5,-1,0),Orientation=V3.N()})
635
				local LLJ2 = NewInstance("Attachment",LL,{Position=V3.N(0,1,0),Orientation=V3.N()})
636
				local RLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RLJ,Attachment1=RLJ2})
637
				local LLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LLJ,Attachment1=LLJ2})
638
				if(hhh.Health > 0)then local CollideRL = NewInstance('Part',who,{Size=RL.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
639
				local CollideLL = NewInstance('Part',who,{Size=LL.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
640
641
				FakeWeld(RL,CollideRL)
642
				FakeWeld(LL,CollideLL) end
643
			end
644
			for _,v in next, who:children() do
645
				if(v:IsA'BasePart')then
646
					v.CanCollide = true
647
				end
648
			end
649
		else
650
			local character = who
651
			
652
			if(half)then
653
				pcall(function()
654
					character.UpperTorso.WaistRigAttachment:Destroy()
655
				end)
656
			end
657
658
			local handProperties = {
659
				{"LimitsEnabled", true};
660
				{"UpperAngle",0};
661
				{"LowerAngle",0};
662
			}
663
			local footProperties = {
664
				{"LimitsEnabled", true};
665
				{"UpperAngle", 15};
666
				{"LowerAngle", -45};
667
			}
668
			local shinProperties = {
669
				{"LimitsEnabled", true};
670
				{"UpperAngle", 0};
671
				{"LowerAngle", -75};
672
			}
673
			if character:FindFirstChild('RightLowerArm') and character:FindFirstChild('RightHand') then
674
				ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
675
			end
676
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('RightUpperArm') then
677
				ragdollJoint(character, character.UpperTorso, character["RightUpperArm"], "RightShoulder", "BallSocket")
678
			end
679
			if character:FindFirstChild('RightUpperArm') and character:FindFirstChild('RightLowerArm') then
680
				ragdollJoint(character, character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
681
			end
682
			if character:FindFirstChild('LeftLowerArm') and character:FindFirstChild('LeftHand') then
683
				ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
684
			end
685
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('LeftUpperArm') then
686
				ragdollJoint(character, character.UpperTorso, character["LeftUpperArm"], "LeftShoulder", "BallSocket")
687
			end
688
			if character:FindFirstChild('LeftUpperArm') and character:FindFirstChild('LeftLowerArm') then
689
				ragdollJoint(character, character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
690
			end
691
			if character:FindFirstChild('RightUpperLeg') and character:FindFirstChild('RightLowerLeg') then
692
				ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
693
			end
694
			if character:FindFirstChild('RightLowerLeg') and character:FindFirstChild('RightFoot') then
695
				ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
696
			end
697
			if character:FindFirstChild('LowerTorso') and character:FindFirstChild('RightUpperLeg') then
698
				ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
699
			end
700
			if character:FindFirstChild('LeftUpperLeg') and character:FindFirstChild('LeftLowerLeg') then
701
				ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
702
			end
703
			if character:FindFirstChild('LeftLowerLeg') and character:FindFirstChild('LeftFoot') then
704
				ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
705
			end
706
			if character:FindFirstChild('LowerTorso') and character:FindFirstChild('LeftUpperLeg') then
707
				ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
708
			end
709
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('LowerTorso') then
710
				ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
711
					{"LimitsEnabled",true};
712
					{"UpperAngle",5};
713
					{"Radius",5};
714
				})
715
			end
716
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('Head') then
717
				ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "Hinge", {
718
					{"LimitsEnabled",true};
719
					{"UpperAngle",50};
720
					{"LowerAngle",-50};
721
				})
722
			end
723
			local NeckA = ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "Hinge", {
724
				{"LimitsEnabled",true};
725
				{"UpperAngle",50};
726
				{"LowerAngle",-50};
727
			})
728
729
			recurse(character, function(_,v)
730
				if v:IsA("Attachment") then
731
					v.Axis = Vector3.new(0, 1, 0)
732
					v.SecondaryAxis = Vector3.new(0, 0, 1)
733
					v.Rotation = Vector3.new(0, 0, 0)
734
					if(v.Parent == character.Head and snapped)then
735
						v.Orientation = V3.N(0,-90,0)
736
					end
737
				end
738
			end)
739
		end
740
	end)
741
end
742
743
744
function Bezier(startpos, pos2, pos3, endpos, t)
745
	local A = startpos:lerp(pos2, t)
746
	local B  = pos2:lerp(pos3, t)
747
	local C = pos3:lerp(endpos, t)
748
	local lerp1 = A:lerp(B, t)
749
	local lerp2 = B:lerp(C, t)
750
	local cubic = lerp1:lerp(lerp2, t)
751
	return cubic
752
end
753
754
function Effect(data)
755
	local FX = data.Effect or 'Resize-AndFade'
756
	local Parent = data.Parent or Effects
757
	local Color = data.Color or C3.N(0,0,0)
758
	local Size = data.Size or V3.N(1,1,1)
759
	local MoveDir = data.MoveDirection or nil
760
	local MeshData = data.Mesh or nil
761
	local SndData = data.Sound or nil
762
	local Frames = data.Frames or 45
763
	local Manual = data.Manual or nil
764
	local Material = data.Material or nil
765
	local CFra = data.CFrame or Torso.CFrame
766
	local Settings = data.FXSettings or {}
767
	local Snd,Prt,Msh;
768
	if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
769
		Prt = Manual
770
	else
771
		Prt = Part(Parent,Color,Material,Size,CFra,true,false)
772
	end
773
	if(typeof(MeshData) == 'table')then
774
		Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
775
	elseif(typeof(MeshData) == 'Instance')then
776
		Msh = MeshData:Clone()
777
		Msh.Parent = Prt
778
	end
779
	if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
780
		Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
781
	end
782
	if(Snd)then
783
		repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
784
		Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
785
	end
786
	local MoveSpeed = nil;
787
	if(MoveDir)then
788
		MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
789
	end
790
	local Inc = M.RNG()-M.RNG()
791
	local Thingie = 0
792
	local Thingie2 = M.RNG(50,100)/100
793
794
	coroutine.wrap(function()
795
		if(FX ~= 'Arc')then
796
			for i = 1, Frames do
797
				if(FX == 'Resize-AndFade')then
798
					if(not Settings.EndSize)then
799
						Settings.EndSize = V3.N(0,0,0)
800
					end
801
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
802
					if(Settings.EndIsIncrement)then
803
						Prt.Size = Prt.Size - Settings.EndSize					
804
					else
805
						Prt.Size = Prt.Size - grow/Frames
806
					end 
807
					Prt.Transparency = (i/Frames)
808
				elseif(FX == 'Resize+AndFade')then
809
					if(not Settings.EndSize)then
810
						Settings.EndSize = Size*2
811
					end
812
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
813
					if(Settings.EndIsIncrement)then
814
						Prt.Size = Prt.Size + Settings.EndSize					
815
					else
816
						Prt.Size = Prt.Size + grow/Frames
817
					end 
818
					Prt.Transparency = (i/Frames)
819
				elseif(FX == 'Fade')then
820
					Prt.Transparency = (i/Frames)
821
				end
822
				if(Settings.RandomizeCFrame)then
823
					Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
824
				end
825
				if(MoveDir and MoveSpeed)then
826
					local Orientation = Prt.Orientation
827
					Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
828
					Prt.Orientation = Orientation
829
				end
830
				if(swait and typeof(swait) == 'function')then
831
					swait()
832
				else
833
					wait()
834
				end
835
			end
836
			Prt:destroy() 
837
		else
838
			local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
839
			if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
840
			local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
841
			local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
842
			assert(start ~= nil,"You need to specify a start point!")
843
			assert(endP ~= nil,"You need to specify an end point!")
844
			for i = 0, 1, Settings.Speed or 0.01 do
845
				if(Settings.Home)then
846
					endP = Settings.Home.CFrame
847
				end
848
				Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
849
				if(swait and typeof(swait) == 'function')then
850
					swait()
851
				else
852
					wait()
853
				end
854
			end
855
			if(Settings.RemoveOnGoal)then
856
				Prt:destroy()
857
			end
858
		end
859
	end)()
860
	return Prt,Msh,Snd
861
end	
862
863
864
function SoulSteal(character)
865
	local torso = (character:FindFirstChild'Head' or character:FindFirstChild'Torso' or character:FindFirstChild'UpperTorso' or character:FindFirstChild'LowerTorso' or character:FindFirstChild'HumanoidRootPart')
866
	print(torso)
867
	if(torso and torso:IsA'BasePart')then
868
		local Model = Instance.new("Model",Effects)
869
		Model.Name = character.Name.."'s Soul"
870
		character:BreakJoints()
871
		local Soul = Part(Model,BrickColor.new'Really red','Glass',V3.N(.5,.5,.5),torso.CFrame,true,false)
872
		Soul.Name = 'Head'
873
		NewInstance("Humanoid",Model,{Health=0,MaxHealth=0})
874
		Effect{
875
			Effect="Arc",
876
			Manual = Soul,
877
			FXSettings={
878
				Start=torso.CFrame,
879
				Home = Torso,
880
				RemoveOnGoal = true,
881
			}
882
		}
883
		local lastPoint = Soul.CFrame.p
884
	
885
		for i = 0, 1, 0.01 do 
886
				local point = CFrame.new(lastPoint, Soul.Position) * CFrame.Angles(-math.pi/2, 0, 0)
887
				local mag = (lastPoint - Soul.Position).magnitude
888
				Effect{
889
					Effect = "Fade",
890
					CFrame = point * CF.N(0, mag/2, 0),
891
					Size = V3.N(.5,mag+.5,.5),
892
					Color = Soul.BrickColor
893
				}
894
				lastPoint = Soul.CFrame.p
895
			swait()
896
		end
897
		for i = 1, 5 do
898
			Effect{
899
				Effect="Fade",
900
				Color = BrickColor.new'Really red',
901
				MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
902
			}	
903
		end
904
	end
905
end
906
907
--// Other Functions \\ --
908
909
function getRegion(point,range,ignore)
910
    return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
911
end
912
913
function clerp(startCF,endCF,alpha)
914
	return startCF:lerp(endCF, alpha)
915
end
916
917
function GetTorso(char)
918
	return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso'
919
end
920
921
922
923
function ShowDamage(Pos, Text, Time, Color)
924
	coroutine.wrap(function()
925
	local Rate = (1 / 30)
926
	local Pos = (Pos or Vector3.new(0, 0, 0))
927
	local Text = (Text or "")
928
	local Time = (Time or 2)
929
	local Color = (Color or Color3.new(1, 0, 1))
930
	local EffectPart = NewInstance("Part",Effects,{
931
		Material=Enum.Material.SmoothPlastic,
932
		RArmlectance = 0,
933
		Transparency = 1,
934
		BrickColor = BrickColor.new(Color),
935
		Name = "Effect",
936
		Size = Vector3.new(0,0,0),
937
		Anchored = true
938
	})
939
	local BillboardGui = NewInstance("BillboardGui",EffectPart,{
940
		Size = UDim2.new(1.25, 0, 1.25, 0),
941
		Adornee = EffectPart,
942
	})
943
	local TextLabel = NewInstance("TextLabel",BillboardGui,{
944
		BackgroundTransparency = 1,
945
		Size = UDim2.new(1, 0, 1, 0),
946
		Text = Text,
947
		Font = "Arial",
948
		TextColor3 = Color,
949
		TextStrokeColor3 = Color3.new(0,0,0),
950
		TextStrokeTransparency=0,
951
		TextScaled = true,
952
	})
953
	game.Debris:AddItem(EffectPart, (Time))
954
	EffectPart.Parent = game:GetService("Workspace")
955
	delay(0, function()
956
		local Frames = (Time / Rate)
957
		for Frame = 1, Frames do
958
			wait(Rate)
959
			local Percent = (Frame / Frames)
960
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
961
			TextLabel.TextTransparency = Percent
962
			TextLabel.TextStrokeTransparency = Percent
963
		end
964
		if EffectPart and EffectPart.Parent then
965
			EffectPart:Destroy()
966
		end
967
	end) end)()
968
end
969
970
971
function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
972
	if(who)then
973
		local hum = who:FindFirstChildOfClass'Humanoid'
974
		local Damage = M.RNG(minDam,maxDam)
975
		local canHit = true
976
		if(hum)then
977
			for _, p in pairs(Hit) do
978
				if p[1] == hum then
979
					if(time() - p[2] < 0.1) then
980
						canHit = false
981
					else
982
						Hit[_] = nil
983
					end
984
				end
985
			end
986
			if(canHit)then
987
				if(hum.Health >= math.huge)then
988
					who:BreakJoints()
989
					if(who:FindFirstChild'Head' and hum.Health > 0)then
990
						ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "INSTANT", 1.5, C3.N(1,0,0))
991
					end
992
				else
993
					local player = S.Players:GetPlayerFromCharacter(who)
994
					if(Type == "Fire")then
995
						--idk..
996
					else
997
						local  c = Instance.new("ObjectValue",hum)
998
						c.Name = "creator"
999
						c.Value = Plr
1000
						game:service'Debris':AddItem(c,0.35)
1001
						if(M.RNG(1,100) <= (critChance or 0))then
1002
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1003
								ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "[CRIT] "..Damage*(critMult or 2), 1.5, BrickColor.new'New Yeller'.Color)
1004
							end
1005
							hum.Health = hum.Health - Damage*(critMult or 2)
1006
						else
1007
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1008
								ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), Damage, 1.5, DamageColor.Color)
1009
							end
1010
							hum.Health = hum.Health - Damage
1011
						end
1012
						if(Type == 'Knockback' and GetTorso(who))then
1013
							local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
1014
							local body = NewInstance('BodyVelocity',GetTorso(who),{
1015
								P = 500,
1016
								maxForce = V3.N(math.huge,0,math.huge),
1017
								velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
1018
							})
1019
							game:service'Debris':AddItem(body,.5)	
1020
						elseif(Type == 'Knockdown' and GetTorso(who))then
1021
							local rek = GetTorso(who)
1022
							print(rek)
1023
							hum.PlatformStand = true
1024
							delay(1,function()
1025
								hum.PlatformStand = false
1026
							end)
1027
							local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
1028
							local bodvol = NewInstance("BodyVelocity",rek,{
1029
								velocity = angle * Knock,
1030
								P = 5000,
1031
								maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
1032
							})
1033
							local rl = NewInstance("BodyAngularVelocity",rek,{
1034
								P = 3000,
1035
								maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
1036
								angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
1037
							})
1038
							game:GetService("Debris"):AddItem(bodvol, .5)
1039
							game:GetService("Debris"):AddItem(rl, .5)
1040
						end
1041
					end
1042
				end
1043
			end
1044
			table.insert(Hit,{hum,time()})
1045
		end
1046
	end
1047
end
1048
1049
function AOEDamage(where,range,minDam,maxDam,Knock,Type)
1050
	for _,v in next, getRegion(where,range,{Char}) do
1051
		if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
1052
			DealDamage(v.Parent,minDam,maxDam,Knock,Type)
1053
		end
1054
	end
1055
end
1056
1057
function AOEFunction(where,range,callback)
1058
	for _,v in next, getRegion(where,range,{Char}) do
1059
		if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
1060
			callback(v.Parent)
1061
		end
1062
	end
1063
end
1064
1065
function ClosestHumanoid(pos,range)
1066
	local mag,closest = math.huge;
1067
	for _,v in next, getRegion(pos,range or 10,{Char}) do
1068
		local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')
1069
		if((v.CFrame.p-pos).magnitude < mag and hum and closest ~= hum and hum.Health > 0)then
1070
			mag = (v.CFrame.p-pos).magnitude
1071
			closest = hum
1072
		end
1073
	end
1074
	return closest,(closest and GetTorso(closest.Parent) or nil)
1075
end
1076
1077
function AOEHeal(where,range,amount)
1078
	local healed = {}
1079
	for _,v in next, getRegion(where,range,{Char}) do
1080
		local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
1081
		if(hum and not healed[hum])then
1082
			hum.Health = hum.Health + amount
1083
			if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
1084
				ShowDamage((v.Parent.Head.CFrame * CF.N(0, 0, (v.Parent.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "+"..amount, 1.5, BrickColor.new'Really red'.Color)
1085
			end
1086
		end
1087
	end
1088
end
1089
--// Attack Function \\--
1090
1091
function Equip_Sawblade()
1092
	for i = 1, 5 do
1093
		Effect{
1094
			Effect='Resize+AndFade',
1095
			Color = BrickColor.new'Really red',
1096
			Material = Enum.Material.Neon,
1097
			Size=V3.N(3.5,3.5,3.5),
1098
			CFrame=RArm.CFrame*CF.N(0,-1,0)*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1099
			FXSettings={
1100
				EndSize=V3.N(.05,.05,.05),
1101
				EndIsIncrement=true,
1102
				
1103
			}
1104
		}
1105
	end
1106
	local prt = Part(Char,BrickColor.new'Really red',Enum.Material.SmoothPlastic,V3.N(3.42, 3.42, 0.05),CF.N(),false,false)
1107
	prt.Transparency = .5
1108
	local mesh = Mesh(prt,Enum.MeshType.FileMesh,"rbxassetid://74322089","",V3.N(3,3,3),V3.N())
1109
	local weld = NewInstance("Weld",Char,{Part0=RArm,Part1=prt,C0=CF.N(0,-1.25,0)}) 
1110
	return prt,weld
1111
end
1112
1113
function The_Necc()
1114
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1115
	if(torso)then
1116
		local who = torso.Parent
1117
		Attack = true
1118
		NeutralAnims = false
1119
		who.Parent = Char
1120
		local oRoot
1121
		pcall(function() oRoot = who.HumanoidRootPart; oRoot.Parent = nil end)
1122
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.25)})
1123
		for i = 0, 4, 0.1 do
1124
			swait()
1125
			humanoid.PlatformStand = true
1126
			local Alpha = .15
1127
			RJ.C0 = clerp(RJ.C0,CFrame.new(7.78455425e-13, 0.00629367586, -2.39849396e-06, 0.99999243, 1.23691279e-10, 0, 1.90985006e-11, 0.99998045, -0.00628617778, 9.31322575e-10, 0.00628614007, 0.999973059),Alpha)
1128
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496486545, -0.990821958, 0.021611277, 0.999870956, 1.90985006e-11, 0.0156118907, -9.81391422e-05, 0.99998045, 0.00628537685, -0.0156115862, -0.00628617778, 0.999851584),Alpha)
1129
			RH.C0 = clerp(RH.C0,CFrame.new(0.498530418, -0.990985394, 0.0154574998, 0.999870956, 1.90985006e-11, 0.0156118907, -9.81391422e-05, 0.99998045, 0.00628537685, -0.0156115862, -0.00628617778, 0.999851584),Alpha)
1130
			LS.C0 = clerp(LS.C0,CFrame.new(-1.0486517, 0.929213107, -0.824554026, 0.712753832, -0.694763601, -0.0963225588, 0.0692147464, 0.206324935, -0.976032555, 0.697985768, 0.689004064, 0.195146814),Alpha)
1131
			RS.C0 = clerp(RS.C0,CFrame.new(0.386394978, 1.64370263, -1.084023, -0.617445648, -0.751786709, -0.231452331, -0.0510570146, 0.331923157, -0.941923738, 0.784950197, -0.569769561, -0.243328467),Alpha)
1132
			NK.C0 = clerp(NK.C0,CFrame.new(8.16636839e-06, 1.49895489, -0.0144007429, 0.99999243, 3.67523171e-07, -1.61118805e-07, -3.56405508e-07, 0.997965038, 0.0637686625, 1.8440187e-07, -0.0637682825, 0.997957468),Alpha)
1133
		end		
1134
		gWeld:destroy()
1135
		if(who:FindFirstChild'Head')then
1136
			local s = Sound(who:FindFirstChild'Head',1093102664,1,2,false,false,false)
1137
			s:Play()
1138
			s.Ended:connect(function() s:Destroy() end)
1139
		end
1140
		who.Parent = workspace
1141
		humanoid.Health = 0
1142
		Ragdoll(who,false,true)
1143
		for i = 0, 1.5, 0.1 do
1144
			swait()
1145
			humanoid.PlatformStand = true
1146
			local Alpha = .3
1147
			RJ.C0 = clerp(RJ.C0,CFrame.new(7.78455425e-13, 0.00629367586, -2.39849396e-06, 0.99999243, 1.23691279e-10, 0, 1.90985006e-11, 0.99998045, -0.00628617778, 9.31322575e-10, 0.00628614007, 0.999973059),Alpha)
1148
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496486545, -0.990821958, 0.021611277, 0.999870956, 1.90985006e-11, 0.0156118907, -9.81391422e-05, 0.99998045, 0.00628537685, -0.0156115862, -0.00628617778, 0.999851584),Alpha)
1149
			RH.C0 = clerp(RH.C0,CFrame.new(0.498530418, -0.990985394, 0.0154574998, 0.999870956, 1.90985006e-11, 0.0156118907, -9.81391422e-05, 0.99998045, 0.00628537685, -0.0156115862, -0.00628617778, 0.999851584),Alpha)
1150
			LS.C0 = clerp(LS.C0,CFrame.new(-1.47842193, 0.485131323, -0.0262347199, 0.0664671659, 0.993123412, -0.0963359103, -0.201927185, -0.0811635256, -0.976031899, -0.977139056, 0.0843269154, 0.195143938),Alpha)
1151
			RS.C0 = clerp(RS.C0,CFrame.new(2.33067179, 0.249403879, 0.270489573, 0.171869993, 0.978404701, -0.114792682, 0.105083257, -0.134070903, -0.985384524, -0.979495406, 0.157295257, -0.125856698),Alpha)
1152
			NK.C0 = clerp(NK.C0,CFrame.new(8.16636839e-06, 1.49895489, -0.0144007429, 0.99999243, 3.67523171e-07, -1.61118805e-07, -3.56405508e-07, 0.997965038, 0.0637686625, 1.8440187e-07, -0.0637682825, 0.997957468),Alpha)
1153
		end
1154
		Attack = false
1155
		NeutralAnims = true
1156
	end
1157
end
1158
1159
function Hands_Off()
1160
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1161
	
1162
	if(torso)then
1163
		local who = torso.Parent
1164
		local doAttack = false
1165
		Instance.AllChildren(who,function(v)
1166
			if(v.Name:lower():find"arm")then
1167
				doAttack = true
1168
			end
1169
		end, true)
1170
		if(not doAttack)then return end
1171
		Hum.WalkSpeed = 0
1172
		Hum.JumpPower = 0
1173
		Attack = true
1174
		NeutralAnims = false
1175
		who.Parent = Char
1176
		local oRoot
1177
		pcall(function() oRoot = who.HumanoidRootPart; oRoot.Parent = nil end)
1178
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.25)})
1179
		for i = 0, 4, 0.1 do
1180
			swait()
1181
			humanoid.PlatformStand = true
1182
			local Alpha = .15
1183
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20564755e-13, 0.00629412755, 1.41908095e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1184
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819633, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1185
			RH.C0 = clerp(RH.C0,CFrame.new(0.498533875, -0.990984261, 0.0154613676, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1186
			LS.C0 = clerp(LS.C0,CFrame.new(-1.42285931, 0.338565946, -0.110074639, 0.983876407, 0.1786367, 0.00868223887, -0.0932332501, 0.553717494, -0.827468753, -0.152623802, 0.813317537, 0.561444461),Alpha)
1187
			RS.C0 = clerp(RS.C0,CFrame.new(1.374735, 0.282860518, -0.133752465, 0.973415911, -0.228878334, 0.00868532527, 0.135509402, 0.544919252, -0.827466309, 0.184656292, 0.806645751, 0.561448157),Alpha)
1188
			NK.C0 = clerp(NK.C0,CFrame.new(8.16625652e-06, 1.49895275, -0.014400661, 0.999999225, 3.67464963e-07, -1.62050128e-07, -3.56478267e-07, 0.997964799, 0.0637686923, 1.8440187e-07, -0.0637686551, 0.997963905),Alpha)
1189
		end
1190
		local RABC = (who:FindFirstChild'Right Arm' or who:FindFirstChild'RightUpperArm' or who:FindFirstChild'RightLowerArm' or who:FindFirstChild'RightHand' or IN("Part")).BrickColor
1191
		local LABC = (who:FindFirstChild'Left Arm' or who:FindFirstChild'LeftUpperArm' or who:FindFirstChild'LeftLowerArm' or who:FindFirstChild'LeftHand' or IN("Part")).BrickColor
1192
		Sound(torso,1093102664,.85,5,false,true,true)
1193
		Sound(torso,429400881,1,1,false,true,true)
1194
		FRArm = NewInstance('Part',Effects,{Size=V3.N(1,2,1),BrickColor=RABC,Material='Plastic',CanCollide=false,Anchored=false,Locked=true})
1195
		Mesh(FRArm,Enum.MeshType.FileMesh,"rbxasset://fonts/rightarm.mesh","",V3.N(1,1,1),V3.N())
1196
		FLArm = NewInstance('Part',Effects,{Size=V3.N(1,2,1),BrickColor=LABC,Material='Plastic',CanCollide=false,Anchored=false,Locked=true})
1197
		Mesh(FLArm,Enum.MeshType.FileMesh,"rbxasset://fonts/leftarm.mesh","",V3.N(1,1,1),V3.N())		
1198
		FRArmW = NewInstance('Weld',FRArm,{Part0=RArm,Part1=FRArm,C0=CF.N(0,-1,0)*CF.A(M.R(90),0,0)})
1199
		FLArmW = NewInstance('Weld',FLArm,{Part0=LArm,Part1=FLArm,C0=CF.N(0,-1,0)*CF.A(M.R(90),0,0)})
1200
		Instance.AllChildren(who,function(v)
1201
			if(v.Name:lower():find"arm" or v.Name:lower():find"hand")then
1202
				v:destroy()
1203
			end
1204
		end, true)
1205
		if(not VoidSB)then
1206
			coroutine.wrap(function()
1207
				repeat swait() 
1208
				BloodDrop(torso.CFrame * CF.N(-.5,.5,0).p,torso.CFrame * CF.N(-1,.5,0).p,15)
1209
				BloodDrop(torso.CFrame * CF.N(.5,.5,0).p,torso.CFrame * CF.N(1,.5,0).p,15)
1210
				humanoid.Health = humanoid.Health - 0.5 until not who or not who.Parent or not humanoid.Parent
1211
				humanoid.Health = 0
1212
			end)()
1213
		else
1214
			coroutine.wrap(function()
1215
				repeat swait()  humanoid.Health = humanoid.Health - 0.5 until not who or not who.Parent or not humanoid.Parent
1216
				humanoid.Health = 0
1217
			end)()
1218
1219
			local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1220
			local prt2,prtcl2 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1221
			prt1.Parent = torso;
1222
			prt2.Parent = torso;
1223
			local prt1W = NewInstance('Weld',torso,{Part0=prt1,Part1=torso,C0=CF.N(0,-.5,-1.25)*CF.A(0,M.R(90),0)})
1224
			local prt2W = NewInstance('Weld',torso,{Part0=prt2,Part1=torso,C0=CF.N(0,-.5,-1.25)*CF.A(0,M.R(-90),0)})
1225
		end
1226
		
1227
		humanoid.Died:connect(function()
1228
			Ragdoll(who)
1229
		end)
1230
		who.Parent = workspace
1231
1232
		local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1233
		local prt2,prtcl2 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1234
		prt1.Parent = FRArm;
1235
		prt2.Parent = FLArm;
1236
		local prt1W = NewInstance('Weld',FRArm,{Part0=prt1,Part1=FRArm,C0=CF.N(0,0,0)*CF.A(0,M.R(90),0)})
1237
		local prt2W = NewInstance('Weld',FLArm,{Part0=prt2,Part1=FLArm,C0=CF.N(0,0,0)*CF.A(0,M.R(-90),0)})
1238
		gWeld:destroy()
1239
		humanoid.PlatformStand = false
1240
		if(oRoot)then
1241
			oRoot.Parent = who
1242
			if(who:FindFirstChild('RootJoint',true))then
1243
				oRoot.RootJoint.Part0 = oRoot
1244
				oRoot.RootJoint.Part1 = torso
1245
			else
1246
				humanoid:BuildRigFromAttachments()
1247
			end
1248
		end
1249
		
1250
		
1251
		for i = 0, 3, 0.1 do
1252
			swait()
1253
			local Alpha = .15
1254
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20564755e-13, 0.00629412755, 1.41908095e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1255
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819633, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1256
			RH.C0 = clerp(RH.C0,CFrame.new(0.498533875, -0.990984261, 0.0154613676, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1257
			LS.C0 = clerp(LS.C0,CFrame.new(-1.25778806, 0.320386261, -0.139421374, 0.690939784, 0.722859621, 0.00868486147, -0.400907725, 0.393146276, -0.827471495, -0.601560116, 0.568251252, 0.561440408),Alpha)
1258
			RS.C0 = clerp(RS.C0,CFrame.new(1.39739037, 0.354236364, -0.0289047062, 0.709462166, -0.704689503, 0.00868486147, 0.400770277, 0.393286407, -0.827471495, 0.579694867, 0.59054029, 0.561440408),Alpha)
1259
			NK.C0 = clerp(NK.C0,CFrame.new(8.16625652e-06, 1.49895275, -0.014400661, 0.999999225, 3.67464963e-07, -1.62050128e-07, -3.56478267e-07, 0.997964799, 0.0637686923, 1.8440187e-07, -0.0637686551, 0.997963905),Alpha)
1260
		end
1261
		Hum.WalkSpeed = 16
1262
		Hum.JumpPower = 50
1263
		Attack = false
1264
		NeutralAnims = true
1265
	end
1266
end
1267
function ScrewMe()
1268
	Attack = true
1269
	NeutralAnims = false
1270
	for i = 0, 2, 0.1 do
1271
		swait()
1272
		local Alpha = .15
1273
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.000601041073, 0.0062919003, -0.000300966523, 0.994017541, 0.000686608837, 0.109214716, 0, 0.99998033, -0.00628665462, -0.109216876, 0.00624904549, 0.993997931),Alpha)
1274
		LH.C0 = clerp(LH.C0,CFrame.new(-0.502559602, -0.990627766, 0.0518152229, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1275
		RH.C0 = clerp(RH.C0,CFrame.new(0.501642942, -0.991074204, 0.000842738897, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1276
		LS.C0 = clerp(LS.C0,CFrame.new(-1.12979531, 0.241689205, 0.149894863, 0.813591897, -0.571708977, 0.105910838, 0.505802035, 0.785755217, 0.356024235, -0.286762208, -0.236088455, 0.928455591),Alpha)
1277
		RS.C0 = clerp(RS.C0,CFrame.new(1.41494429, 0.493437499, 0.00856034085, 0.986078084, -0.165549055, 0.0156079903, 0.165468931, 0.986195028, 0.00630042888, -0.0164355561, -0.0036300756, 0.99985832),Alpha)
1278
		NK.C0 = clerp(NK.C0,CFrame.new(-0.272200465, 1.60343766, -0.0909831151, -0.271778286, -0.29597038, 0.915717363, -0.178016067, 0.950573504, 0.254402429, -0.945752025, -0.0938713551, -0.311032623),Alpha)
1279
	end
1280
	local screwdriver = Part(Char,BrickColor.new'Really black',Enum.Material.SmoothPlastic,V3.N(2.158,0.29,0.312),RArm.CFrame,false,false)
1281
	local driverMesh = Mesh(screwdriver,Enum.MeshType.FileMesh,"rbxassetid://70265804","rbxassetid://70265794",V3.N(1,.5,.5),V3.N())
1282
	local driverWeld = NewInstance("Weld",Char,{Part0=LArm,Part1=screwdriver,C0=CF.N(0,-1.15,0)})
1283
	for i = 1, 3 do
1284
		for i = 0, 2, 0.1 do
1285
			swait()
1286
			local Alpha = .15
1287
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.000597249367, 0.00629166188, -0.000301384629, 0.994017541, 0.000686608837, 0.109214716, 0, 0.99998033, -0.00628665462, -0.109216876, 0.00624904549, 0.993997931),Alpha)
1288
			LH.C0 = clerp(LH.C0,CFrame.new(-0.502559602, -0.990627766, 0.0518152229, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1289
			RH.C0 = clerp(RH.C0,CFrame.new(0.501639128, -0.991074204, 0.000842381269, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1290
			LS.C0 = clerp(LS.C0,CFrame.new(-0.971063137, 0.544531465, -0.856619298, 0.824469268, -0.565411985, 0.0236563906, 0.239681676, 0.311018854, -0.919684827, 0.512643158, 0.763921857, 0.391944379),Alpha)
1291
			RS.C0 = clerp(RS.C0,CFrame.new(1.36865759, 0.434063494, -0.243990004, 0.943695724, 0.286517411, 0.165366411, 0.0948955566, 0.244413704, -0.965016603, -0.316911817, 0.926374555, 0.203462943),Alpha)
1292
			NK.C0 = clerp(NK.C0,CFrame.new(0.309692234, 1.56599295, -0.184076563, 0.752268493, 0.275064707, -0.598691583, 0.0132474303, 0.902184188, 0.431147963, 0.658723474, -0.332270145, 0.675040722),Alpha)
1293
			driverWeld.C0 = clerp(driverWeld.C0,CFrame.new(0.754458785, -0.945940197, 0.0140114268, -0.867547691, -0.497354031, 8.15391541e-05, -7.91847706e-05, 0.00030207634, 1, -0.49735406, 0.867547691, -0.000301415101),Alpha)
1294
		end
1295
		for i = 0, 2, 0.1 do
1296
			swait()
1297
			local Alpha = .15
1298
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.000597249367, 0.00629166188, -0.000301384629, 0.994017541, 0.000686608837, 0.109214716, 0, 0.99998033, -0.00628665462, -0.109216876, 0.00624904549, 0.993997931),Alpha)
1299
			LH.C0 = clerp(LH.C0,CFrame.new(-0.502559602, -0.990627766, 0.0518152229, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1300
			RH.C0 = clerp(RH.C0,CFrame.new(0.501639128, -0.991074204, 0.000842381269, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1301
			LS.C0 = clerp(LS.C0,CFrame.new(-0.952282608, 0.388567954, -0.813911676, 0.824469686, -0.527844906, 0.204033226, 0.23967658, -0.000909555703, -0.970852435, 0.512645066, 0.849340379, 0.12576215),Alpha)
1302
			RS.C0 = clerp(RS.C0,CFrame.new(1.36865759, 0.434063494, -0.243990004, 0.943695724, 0.286517411, 0.165366411, 0.0948955566, 0.244413704, -0.965016603, -0.316911817, 0.926374555, 0.203462943),Alpha)
1303
			NK.C0 = clerp(NK.C0,CFrame.new(0.309692234, 1.56599295, -0.184076563, 0.752268493, 0.275064707, -0.598691583, 0.0132474303, 0.902184188, 0.431147963, 0.658723474, -0.332270145, 0.675040722),Alpha)
1304
			driverWeld.C0 = clerp(driverWeld.C0,CFrame.new(0.75445646, -0.891306043, 0.317142308, -0.867489815, -0.183382571, -0.462420344, -0.159916192, -0.777427077, 0.608304381, -0.471050501, 0.601646185, 0.645084083),Alpha)
1305
		end
1306
	end
1307
	for i = 0, 2, 0.1 do
1308
		swait()
1309
		local Alpha = .15
1310
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.000601041073, 0.0062919003, -0.000300966523, 0.994017541, 0.000686608837, 0.109214716, 0, 0.99998033, -0.00628665462, -0.109216876, 0.00624904549, 0.993997931),Alpha)
1311
		LH.C0 = clerp(LH.C0,CFrame.new(-0.502559602, -0.990627766, 0.0518152229, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1312
		RH.C0 = clerp(RH.C0,CFrame.new(0.501642942, -0.991074204, 0.000842738897, 0.995601892, 0, -0.0936849937, 0.000588965253, 0.99998033, 0.00625900552, 0.0936831385, -0.00628665462, 0.995582223),Alpha)
1313
		LS.C0 = clerp(LS.C0,CFrame.new(-1.12979531, 0.241689205, 0.149894863, 0.813591897, -0.571708977, 0.105910838, 0.505802035, 0.785755217, 0.356024235, -0.286762208, -0.236088455, 0.928455591),Alpha)
1314
		RS.C0 = clerp(RS.C0,CFrame.new(1.41494429, 0.493437499, 0.00856034085, 0.986078084, -0.165549055, 0.0156079903, 0.165468931, 0.986195028, 0.00630042888, -0.0164355561, -0.0036300756, 0.99985832),Alpha)
1315
		NK.C0 = clerp(NK.C0,CFrame.new(-0.272200465, 1.60343766, -0.0909831151, -0.271778286, -0.29597038, 0.915717363, -0.178016067, 0.950573504, 0.254402429, -0.945752025, -0.0938713551, -0.311032623),Alpha)
1316
	end
1317
	screwdriver:destroy()
1318
	Attack = false
1319
	NeutralAnims = true
1320
end
1321
function SliceYou()
1322
	Attack = true
1323
	NeutralAnims = false
1324
	local saw,weld = Equip_Sawblade()
1325
	for i = 0, 2, 0.1 do
1326
		swait()
1327
		local Alpha = .15
1328
		RJ.C0 = clerp(RJ.C0,CFrame.new(0.0029785831, 0.00629174896, 0.00529580005, 0.517270923, -0.00537902303, -0.855804324, 0, 0.99998033, -0.00628521619, 0.855821192, 0.00325116003, 0.517260671),Alpha)
1329
		LH.C0 = clerp(LH.C0,CFrame.new(-0.524694026, -0.992068648, -0.177415758, 0.503846943, 0, 0.863792896, -0.00542912632, 0.99998033, 0.00316678779, -0.863775849, -0.00628521619, 0.503836989),Alpha)
1330
		RH.C0 = clerp(RH.C0,CFrame.new(0.863649905, -0.990154982, 0.147100359, 0.503846943, 0, 0.863792896, -0.00542912632, 0.99998033, 0.00316678779, -0.863775849, -0.00628521619, 0.503836989),Alpha)
1331
		LS.C0 = clerp(LS.C0,CFrame.new(-1.15776694, 0.555799365, -0.115642846, -0.0494773015, 0.838752568, -0.54226011, -0.986161113, -0.127040714, -0.106522933, -0.15823549, 0.529485285, 0.833430767),Alpha)
1332
		RS.C0 = clerp(RS.C0,CFrame.new(1.41811252, 0.715449214, 0.00713690743, 0.924166977, -0.38166979, 0.0156050026, 0.381617904, 0.924298882, 0.00629791059, -0.0168274939, 0.00013487041, 0.999858379),Alpha)
1333
		NK.C0 = clerp(NK.C0,CFrame.new(-0.0103359073, 1.49896884, -0.0121970959, 0.517271042, -0.0492044352, 0.854405463, -0.00537938019, 0.998139322, 0.0607386976, -0.855804205, -0.0360145383, 0.516043782),Alpha)
1334
	end
1335
	for i = 0, 3, 0.1 do
1336
		swait()
1337
		local Alpha = .3
1338
		RJ.C0 = clerp(RJ.C0,CFrame.new(0.0750166476, 0.00629172707, 0.115993313, -0.407934308, 0.00573777966, 0.912992895, 0, 0.99998033, -0.00628445856, -0.913010895, -0.00256364676, -0.407926261),Alpha)
1339
		LH.C0 = clerp(LH.C0,CFrame.new(-0.702545583, -0.991440296, -0.0774632096, -0.393630832, 0, -0.919268608, 0.00577710615, 0.99998033, -0.00247375714, 0.919250488, -0.00628445856, -0.393623054),Alpha)
1340
		RH.C0 = clerp(RH.C0,CFrame.new(0.572302818, -0.991491556, -0.0655612499, -0.393630832, 0, -0.919268608, 0.00577710615, 0.99998033, -0.00247375714, 0.919250488, -0.00628445856, -0.393623054),Alpha)
1341
		LS.C0 = clerp(LS.C0,CFrame.new(-1.42436278, 0.674626052, -0.273927838, 0.816972971, 0.196224883, -0.54226476, -0.298526257, 0.948434591, -0.106555678, 0.493393689, 0.248933315, 0.833423615),Alpha)
1342
		RS.C0 = clerp(RS.C0,CFrame.new(1.39865923, 0.565930247, 0.00839936361, -0.125458091, -0.991975904, 0.0156244934, 0.992089748, -0.125373363, 0.00629395852, -0.00428455323, 0.0162905455, 0.99985826),Alpha)
1343
		NK.C0 = clerp(NK.C0,CFrame.new(0.141048998, 1.4988662, -0.0285577606, -0.407934487, 0.0524925366, -0.911500514, 0.0057374211, 0.998473644, 0.054933507, 0.912992835, 0.0171796028, -0.40761295),Alpha)
1344
	end
1345
	local sound = Sound(Torso,367720620,false,false,false)
1346
	sound:Play()
1347
	for i = 0, 6, .1 do
1348
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(25)),.3)
1349
		swait()
1350
	end
1351
	for i = 0, 2, .1 do
1352
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(5)),.3)
1353
		swait()
1354
	end
1355
	sound:Play()
1356
	for i = 0, 1, .1 do
1357
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(25)),.3)
1358
		swait()
1359
	end
1360
	sound:Play()
1361
	for i = 0, 5, .1 do
1362
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(55)),.3)
1363
		swait()
1364
	end
1365
	for i = 1, 5 do
1366
		Effect{
1367
			Effect='Resize+AndFade',
1368
			Color = BrickColor.new'Really red',
1369
			Material = Enum.Material.Neon,
1370
			Size=V3.N(3.5,3.5,3.5),
1371
			CFrame=saw.CFrame*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1372
			FXSettings={
1373
				EndSize=V3.N(.05,.05,.05),
1374
				EndIsIncrement=true,
1375
				
1376
			}
1377
		}
1378
	end
1379
	saw:destroy()
1380
	Attack = false
1381
	NeutralAnims = true
1382
end
1383
function Taunt()
1384
	local tauntFuncs = {SliceYou,ScrewMe}
1385
	local taunt = tauntFuncs[M.RNG(1,#tauntFuncs)]
1386
	taunt()
1387
end
1388
function Aids()
1389
	Music.Playing = false
1390
	local DabSounds = {420701444,420701460,420701487}
1391
	local DabSnd = Sound(Torso,DabSounds[M.RNG(1,#DabSounds)],1,5,false,false,false)
1392
	repeat swait() until DabSnd.IsLoaded
1393
	DabSnd:Play()
1394
	DabSnd.Ended:connect(function()DabSnd:destroy()end)
1395
	Attack = true
1396
	NeutralAnims = false
1397
	local a = 0
1398
	for i = 0, DabSnd.TimeLength * Frame_Speed/DabSnd.Pitch do
1399
		a = a + 1
1400
		swait()
1401
		local Alpha = .3
1402
		RJ.C0 = clerp(RJ.C0,CFrame.new(0.0561925545, 0.006292901+.2*M.C(a/16), -0.00967639871, 0.961586297, 0.00172359415, 0.274496257, 0, 0.99998033, -0.00627899449, -0.274501652, 0.00603779452, 0.961567342),Alpha)
1403
		LH.C0 = clerp(LH.C0,CFrame.new(-0.593769729, -0.99042201-.2*M.C(a/16), 0.0849506408, 0.965754986, 0, -0.259456009, 0.00162912265, 0.99998033, 0.00606396981, 0.259450912, -0.00627899449, 0.965735972),Alpha)
1404
		RH.C0 = clerp(RH.C0,CFrame.new(0.468464553, -0.991293669-.2*M.C(a/16), -0.0339690484, 0.965754986, 0, -0.259456009, 0.00162912265, 0.99998033, 0.00606396981, 0.259450912, -0.00627899449, 0.965735972),Alpha)
1405
		LS.C0 = clerp(LS.C0,CFrame.new(-1.15301001, 0.367895871, -0.145940349+.2*M.C(a/16), 0.375669211, 0.913452208, -0.156454355, -0.926753879, 0.37026915, -0.0634673014, -4.41223383e-05, 0.168837398, 0.985643983),Alpha)
1406
		RS.C0 = clerp(RS.C0,CFrame.new(0.998128295, 0.633566499, -0.753388047+.2*M.C(a/16), 0.594308019, 0.804203451, 0.00742085278, -0.383671522, 0.29161948, -0.876215935, -0.706819832, 0.517895043, 0.481861711),Alpha)
1407
		NK.C0 = clerp(NK.C0,CFrame.new(0.207638323, 1.47957158, -0.302699238, 0.745848298, 0.476892024, -0.465063959, 0.0606503561, 0.646653771, 0.760368645, 0.663349032, -0.595326006, 0.453382045),Alpha)
1408
	end
1409
	Music.Playing = true
1410
	Attack = false
1411
	NeutralAnims = true
1412
end
1413
1414
function OnceWas(who)
1415
	for _,v in next, who:children() do
1416
		if(v:IsA'BasePart')then
1417
			Effect{
1418
				Parent=Effects, 
1419
				Effect='Fade',
1420
				Color = BrickColor.new'Crimson',
1421
				Material = Enum.Material.Glass,
1422
				Size = v.Size,
1423
				CFrame=v.CFrame,
1424
				Frames = 90,
1425
			}
1426
		end
1427
	end
1428
end
1429
1430
function Teleport(where)
1431
	OnceWas(Char)
1432
	Sound(Root,235097614,3,1,false,true,true)
1433
	Sound(Root,75356820,2,1,false,true,true)
1434
	Root.CFrame = CF.N(where.p)
1435
	OnceWas(Char)
1436
end
1437
1438
function Dash()
1439
	Attack = true
1440
	Sound(Root,235097614,3,1,false,true,true)
1441
	Sound(Root,75356820,2,1,false,true,true)
1442
	for i = 1, 5 do
1443
		OnceWas(Char)
1444
		Root.CFrame = Root.CFrame*CF.N(0,0,-5)
1445
		swait()
1446
	end
1447
	Attack = false
1448
end
1449
1450
function Shriek()
1451
	Attack = true
1452
	NeutralAnims = false
1453
	local scream = Sound(Head,198165368,.5,10,false,false,false)
1454
	local i = 0
1455
	scream:Play()
1456
	while scream.Playing do
1457
		i = i + 1
1458
		swait()
1459
		coroutine.wrap(function()
1460
			AOEFunction(Head.Position,30,function(who)
1461
				local h,hd = who:FindFirstChildOfClass'Humanoid',who:FindFirstChild'Head'
1462
				if(h and hd and h.Health > 0)then
1463
					h.Health = 0
1464
					Sound(hd,429400881,1,1,false,true,true)
1465
					Ragdoll(who)
1466
					swait()
1467
					local frags = Fragment(hd)
1468
					for _,v in next, frags:children() do
1469
						v.BrickColor = BloodColor
1470
						v.Material = BloodMaterial
1471
						v.CanCollide = true
1472
						v.Anchored = false
1473
					end
1474
					hd:destroy()
1475
				end
1476
			end)
1477
		end)()
1478
		local Alpha = .15
1479
		RJ.C0 = clerp(RJ.C0,CFrame.new(0.00956845004, -0.141102523, 0.612865508, 0.999947488, 0.00962571148, -0.00340035092, -0.00964800082, 0.782201111, -0.622951329, -0.00333659165, 0.622951448, 0.782252967),Alpha)
1480
		LH.C0 = clerp(LH.C0,CFrame.new(-0.495904773, -1.0368886, 0.0598222613, 0.999878109, -0.00964800082, 0.012275002, -0.000100981888, 0.782201111, 0.623026073, -0.0156124765, -0.622951329, 0.78210485),Alpha)
1481
		RH.C0 = clerp(RH.C0,CFrame.new(0.499093086, -1.03124118, 0.0517056584, 0.999878109, -0.00964800082, 0.012275002, -0.000100981888, 0.782201111, 0.623026073, -0.0156124765, -0.622951329, 0.78210485),Alpha)
1482
		LS.C0 = clerp(LS.C0,CFrame.new(-1.23829794, 0.600065649, 0.16030249, -0.8319574, 0.546545088, -0.0955789387, 0.0976095572, -0.0254041255, -0.994900525, -0.54618609, -0.837044299, -0.0322128981),Alpha)
1483
		RS.C0 = clerp(RS.C0,CFrame.new(1.40538526, 0.413302839, 0.119919479, 0.97065413, -0.226111293, -0.0818808898, 0.0516543165, -0.13650623, 0.989291787, -0.23486729, -0.96448946, -0.120820649),Alpha)
1484
		NK.C0 = clerp(NK.C0,CFrame.new(3.62367791e-06, 1.56057274, 0.233575165, 1, 3.8058497e-06, -3.58493999e-05, -1.91188519e-05, 0.899042785, -0.437860936, 3.05641443e-05, 0.437861085, 0.899042606),Alpha)
1485
	end
1486
	Attack = false
1487
	NeutralAnims = true
1488
end
1489
1490
function SawMeDaddy()
1491
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1492
	if(torso)then
1493
		Attack = true
1494
		NeutralAnims = false
1495
		local who = torso.Parent
1496
		who.Parent = Char
1497
		Hum.WalkSpeed = 0
1498
		Hum.JumpPower = 0
1499
		humanoid.WalkSpeed = 0
1500
		humanoid.JumpPower = 0
1501
		local saw,weld = Equip_Sawblade()
1502
		pcall(function() who.HumanoidRootPart:destroy() end)
1503
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-3)*CF.A(0,M.R(180),0)})
1504
		for i = 0, 6, 0.1 do
1505
			swait()
1506
			weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(5)),.3)
1507
			local Alpha = .15
1508
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00836368278, 0.00629167072, 0.00190571044, 0.0349976346, 0.00628316449, 0.99936235, 0, 0.99998033, -0.00628704997, -0.999382019, 0.000220031856, 0.0349969491),Alpha)
1509
			LH.C0 = clerp(LH.C0,CFrame.new(-0.503456116, -0.990501761, 0.0718512386, 0.0505957417, 0, -0.998714209, 0.00627896562, 0.99998033, 0.00031809794, 0.998694539, -0.00628704997, 0.0505947471),Alpha)
1510
			RH.C0 = clerp(RH.C0,CFrame.new(0.539414704, -0.991044283, 0.00562152406, 0.0505957417, 0, -0.998714209, 0.00627896562, 0.99998033, 0.00031809794, 0.998694539, -0.00628704997, 0.0505947471),Alpha)
1511
			LS.C0 = clerp(LS.C0,CFrame.new(-1.40707266, 0.497466505, -0.00446076319, 0.980866492, 0.19405432, 0.0156163573, -0.19417055, 0.980947733, 0.00629086327, -0.0140980631, -0.00920273364, 0.999858439),Alpha)
1512
			RS.C0 = clerp(RS.C0,CFrame.new(1.31421685, 0.81056267, 0.00814598706, -0.489612877, -0.871799946, 0.0156333037, 0.871937394, -0.489577413, 0.00628277427, 0.00217639096, 0.0167073887, 0.999858201),Alpha)
1513
			NK.C0 = clerp(NK.C0,CFrame.new(0.00717293471, 1.49903798, -0.00130830682, 0.0349974521, 0.0574585311, -0.997728944, 0.00628280686, 0.998313606, 0.057712581, 0.99936235, -0.00828839932, 0.0345774256),Alpha)
1514
		end
1515
		Sound(Torso,367720620,1,1,false,true,true)
1516
		coroutine.wrap(function()
1517
			repeat swait()
1518
				weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(45)),.3)
1519
			until not saw.Parent
1520
		end)()
1521
		swait(60)
1522
		local slicing = Sound(saw,1013673726,1,1,true,false,true)
1523
		Sound(torso,429400881,1,1,false,true,true)
1524
		local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1525
		prt1.Parent = torso;
1526
		local prt1W = NewInstance('Weld',torso,{Part0=prt1,Part1=torso,C0=CF.A(0,M.R(180),0)})
1527
		for i = 0, .3, 0.001 do
1528
			swait()
1529
			
1530
			humanoid.Health = humanoid.Health - .5
1531
			if(humanoid.Health <= 0)then
1532
				gWeld:destroy()
1533
				Sound(torso,429400881,1,1,false,true,true)
1534
				break
1535
			end
1536
			local Alpha = i
1537
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00836368278, 0.00629167072, 0.00190571044, 0.0349976346, 0.00628316449, 0.99936235, 0, 0.99998033, -0.00628704997, -0.999382019, 0.000220031856, 0.0349969491),Alpha)
1538
			LH.C0 = clerp(LH.C0,CFrame.new(-0.503456116, -0.990501761, 0.0718512386, 0.0505957417, 0, -0.998714209, 0.00627896562, 0.99998033, 0.00031809794, 0.998694539, -0.00628704997, 0.0505947471),Alpha)
1539
			RH.C0 = clerp(RH.C0,CFrame.new(0.539414704, -0.991044283, 0.00562152406, 0.0505957417, 0, -0.998714209, 0.00627896562, 0.99998033, 0.00031809794, 0.998694539, -0.00628704997, 0.0505947471),Alpha)
1540
			LS.C0 = clerp(LS.C0,CFrame.new(-1.40707266, 0.497466505, -0.00446076319, 0.980866492, 0.19405432, 0.0156163573, -0.19417055, 0.980947733, 0.00629086327, -0.0140980631, -0.00920273364, 0.999858439),Alpha)
1541
			RS.C0 = clerp(RS.C0,CFrame.new(1.18219912, 0.268655062, 0.0136158429, 0.6882689, -0.725287437, 0.0156234093, 0.725293934, 0.688410699, 0.00629597344, -0.0153217092, 0.00699824095, 0.99985826),Alpha)
1542
			NK.C0 = clerp(NK.C0,CFrame.new(0.00717293471, 1.49903798, -0.00130830682, 0.0349974521, 0.0574585311, -0.997728944, 0.00628280686, 0.998313606, 0.057712581, 0.99936235, -0.00828839932, 0.0345774256),Alpha)
1543
		end
1544
		humanoid.Health = 0
1545
		who.Parent = workspace
1546
		Ragdoll(who)
1547
		slicing:destroy()
1548
		for i = 1, 5 do
1549
			Effect{
1550
				Effect='Resize+AndFade',
1551
				Color = BrickColor.new'Really red',
1552
				Material = Enum.Material.Neon,
1553
				Size=V3.N(3.5,3.5,3.5),
1554
				CFrame=saw.CFrame*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1555
				FXSettings={
1556
					EndSize=V3.N(.05,.05,.05),
1557
					EndIsIncrement=true,
1558
					
1559
				}
1560
			}
1561
		end
1562
		Hum.WalkSpeed = 16
1563
		Hum.JumpPower = 50
1564
		saw:destroy()
1565
		Attack = false
1566
		NeutralAnims = true
1567
	end
1568
end
1569
function The_End()
1570
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1571
	
1572
	if(torso)then
1573
		Attack = true
1574
		NeutralAnims = false
1575
		local who = torso.Parent
1576
		Hum.WalkSpeed = 0
1577
		Hum.JumpPower = 0
1578
		humanoid.WalkSpeed = 0
1579
		humanoid.JumpPower = 0
1580
		who.Parent = Char
1581
		pcall(function() who.HumanoidRootPart:destroy() end)
1582
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.35)})
1583
		for i = 0, 2, 0.1 do
1584
			swait()
1585
			local Alpha = .3
1586
			RJ.C0 = clerp(RJ.C0,CFrame.new(0.00184797007, 0.00629393011, 0.00175395911, 0.916352093, -0.00251661055, -0.400364727, 0, 0.99998033, -0.00628567068, 0.400372595, 0.0057598874, 0.916333973),Alpha)
1587
			LH.C0 = clerp(LH.C0,CFrame.new(-0.565588713, -0.991164684, -0.032800708, 0.909990132, 0, 0.414630055, -0.00260622799, 0.99998033, 0.00571989827, -0.41462189, -0.00628567068, 0.909972131),Alpha)
1588
			RH.C0 = clerp(RH.C0,CFrame.new(0.562351584, -0.990811467, 0.0429569148, 0.909990132, 0, 0.414630055, -0.00260622799, 0.99998033, 0.00571989827, -0.41462189, -0.00628567068, 0.909972131),Alpha)
1589
			LS.C0 = clerp(LS.C0,CFrame.new(-1.479936, 0.442725629, -0.241928637, 0.997844577, 0.0469278991, -0.0458690971, -0.0638397709, 0.532425106, -0.844066501, -0.015188396, 0.845175505, 0.534273386),Alpha)
1590
			RS.C0 = clerp(RS.C0,CFrame.new(1.32794857, 0.365926802, 0.17400004, 0.584510565, -0.811339498, 0.00870320201, 0.447906405, 0.331590444, 0.830317855, -0.676555634, -0.481431335, 0.557222128),Alpha)
1591
			NK.C0 = clerp(NK.C0,CFrame.new(-0.00438193232, 1.49895084, -0.014841184, 0.916352212, -0.0230187047, 0.399710178, -0.00251696701, 0.997995079, 0.0632432774, -0.400364548, -0.0589591675, 0.914456904),Alpha)
1592
		end
1593
		Sound(Torso,200065377,1.3,4,false,true,true)
1594
		for i = 0, 1, 0.1 do
1595
			swait()
1596
			local Alpha = .2
1597
			RJ.C0 = clerp(RJ.C0,CFrame.new(0.0928741172, 0.00629402744, 0.0566893518, 0.948310614, 0.00199300773, 0.317336231, 0, 0.99998033, -0.00628030393, -0.31734252, 0.00595567934, 0.948291838),Alpha)
1598
			LH.C0 = clerp(LH.C0,CFrame.new(-0.645890057, -0.990359426, 0.0953748077, 0.953149736, 0, -0.302498937, 0.00189978536, 0.99998033, 0.00598607073, 0.302492946, -0.00628030393, 0.953130901),Alpha)
1599
			RH.C0 = clerp(RH.C0,CFrame.new(0.44459179, -0.991404057, -0.0513649136, 0.953149736, 0, -0.302498937, 0.00189978536, 0.99998033, 0.00598607073, 0.302492946, -0.00628030393, 0.953130901),Alpha)
1600
			LS.C0 = clerp(LS.C0,CFrame.new(-1.47928679, 0.367728233, 0.116084039, 0.997845054, 0.0248440802, 0.0607300103, -0.0638346076, 0.581721425, 0.810879469, -0.0151824057, -0.813008547, 0.582053781),Alpha)
1601
			RS.C0 = clerp(RS.C0,CFrame.new(1.48636484, 0.465858519, -0.373306572, -0.95769608, 0.284951091, -0.0402629375, -0.130770594, -0.306276649, 0.942917705, 0.256353855, 0.908293724, 0.330583185),Alpha)
1602
			NK.C0 = clerp(NK.C0,CFrame.new(-0.068510659, 1.4984324, -0.0973624364, 0.948310554, 0.0182456542, -0.316817731, 0.00199265103, 0.997983873, 0.0634387434, 0.31733641, -0.0607909337, 0.946362138),Alpha)
1603
		end
1604
		gWeld:destroy()
1605
		local gWeld = NewInstance("Weld",Char,{Part0=RArm,Part1=torso,C0=CF.N(0,-1.15,0)*CF.A(M.R(90),0,M.R(180))})
1606
		for i = 0, 1, 0.1 do
1607
			swait()
1608
			local Alpha = .3
1609
			humanoid.PlatformStand = true
1610
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20394752e-13, 0.00629078969, 1.39809708e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1611
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819752, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1612
			RH.C0 = clerp(RH.C0,CFrame.new(0.498526245, -0.990984261, 0.0154614868, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1613
			LS.C0 = clerp(LS.C0,CFrame.new(-1.29056597, 0.680865526, -0.0074476786, -0.953151584, -0.302089065, 0.0156119959, 0.302213609, -0.953219652, 0.0062854127, 0.0129829049, 0.0107091125, 0.999858022),Alpha)
1614
			RS.C0 = clerp(RS.C0,CFrame.new(1.26373434, 0.722399652, 0.00951428805, -0.951173186, 0.308261454, 0.0156119959, -0.308199704, -0.951300979, 0.0062854127, 0.0167892575, 0.0011669076, 0.999858022),Alpha)
1615
			NK.C0 = clerp(NK.C0,CFrame.new(-1.17865966e-07, 1.4989531, -0.0143954754, 0.999999642, 2.11689621e-05, 1.13360584e-05, -1.50896085e-07, 0.477647185, -0.878551781, -2.40113586e-05, 0.878551543, 0.477646947),Alpha)
1616
		end
1617
		gWeld:destroy()
1618
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,2.35,0)*CF.A(M.R(90),0,M.R(90))})
1619
		for i = 0, 6, 0.1 do
1620
			swait()
1621
			local Alpha = .3
1622
			humanoid.PlatformStand = true
1623
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20394752e-13, 0.00629078969, 1.39809708e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1624
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819752, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1625
			RH.C0 = clerp(RH.C0,CFrame.new(0.498526245, -0.990984261, 0.0154614868, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1626
			LS.C0 = clerp(LS.C0,CFrame.new(-1.29056597, 0.680865526, -0.0074476786, -0.953151584, -0.302089065, 0.0156119959, 0.302213609, -0.953219652, 0.0062854127, 0.0129829049, 0.0107091125, 0.999858022),Alpha)
1627
			RS.C0 = clerp(RS.C0,CFrame.new(1.26373434, 0.722399652, 0.00951428805, -0.951173186, 0.308261454, 0.0156119959, -0.308199704, -0.951300979, 0.0062854127, 0.0167892575, 0.0011669076, 0.999858022),Alpha)
1628
			NK.C0 = clerp(NK.C0,CFrame.new(-1.17865966e-07, 1.4989531, -0.0143954754, 0.999999642, 2.11689621e-05, 1.13360584e-05, -1.50896085e-07, 0.477647185, -0.878551781, -2.40113586e-05, 0.878551543, 0.477646947),Alpha)
1629
		end
1630
		Sound(torso,1093102664,.85,5,false,true,true)
1631
		Sound(torso,429400881,1,1,false,true,true)
1632
		gWeld:destroy()
1633
		Blood(torso.Size,torso.CFrame*CF.A(0,M.R(180),0),250)
1634
		humanoid.Health = 0
1635
		for _,v in next, who:children() do
1636
			if(v:IsA'LocalScript' or v:IsA'Script')then
1637
				v.Disabled = true
1638
				v:destroy()
1639
			end
1640
		end
1641
		Ragdoll(who,true)
1642
		
1643
	
1644
		if(not VoidSB)then
1645
			coroutine.wrap(function()
1646
				repeat swait()
1647
					BloodDrop(torso.CFrame * CF.N(0,-torso.Size.Y/2,0).p,(torso.CFrame * CF.N(0,-torso.Size.Y,0)).p,15)
1648
				until not who or not who.Parent
1649
			end)()
1650
			coroutine.wrap(function()
1651
				local LT = who:FindFirstChild'LowerTorso'
1652
				if(LT)then
1653
					repeat swait()
1654
						BloodDrop(LT.CFrame * CF.N(0,LT.Size.Y/2,0).p,(LT.CFrame * CF.N(0,LT.Size.Y,0)).p,15)
1655
					until not who or not who.Parent
1656
				end
1657
			end)()
1658
		end
1659
		
1660
		for i = 0, 1, 0.1 do
1661
			swait()
1662
			local Alpha = .3
1663
			humanoid.PlatformStand = true
1664
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20394752e-13, 0.00629078969, 1.39809708e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1665
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819752, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1666
			RH.C0 = clerp(RH.C0,CFrame.new(0.498526245, -0.990984261, 0.0154614868, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1667
			LS.C0 = clerp(LS.C0,CFrame.new(-1.19203663, 0.569933176, 0.0160028264, -0.81626749, 0.577462554, 0.0156119959, -0.577441692, -0.816407859, 0.0062854127, 0.016375348, -0.0038844361, 0.999858022),Alpha)
1668
			RS.C0 = clerp(RS.C0,CFrame.new(1.22609437, 0.679628015, 0.010370885, -0.77247268, -0.634855568, 0.0156119959, 0.634996474, -0.772489607, 0.0062854127, 0.00806977227, 0.0147688743, 0.999858022),Alpha)
1669
			NK.C0 = clerp(NK.C0,CFrame.new(-1.17865966e-07, 1.4989531, -0.0143954754, 0.999999642, 2.11689621e-05, 1.13360584e-05, -1.50896085e-07, 0.477647185, -0.878551781, -2.40113586e-05, 0.878551543, 0.477646947),Alpha)
1670
		end
1671
		for i = 0, 4, 0.1 do
1672
			swait()
1673
			local Alpha = .3
1674
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.20394752e-13, 0.00629078969, 1.39809708e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1675
			LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990819752, 0.021611426, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1676
			RH.C0 = clerp(RH.C0,CFrame.new(0.498526245, -0.990984261, 0.0154614868, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1677
			LS.C0 = clerp(LS.C0,CFrame.new(-1.19203663, 0.569933176, 0.0160028264, -0.81626749, 0.577462554, 0.0156119959, -0.577441692, -0.816407859, 0.0062854127, 0.016375348, -0.0038844361, 0.999858022)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1678
			RS.C0 = clerp(RS.C0,CFrame.new(1.22609437, 0.679628015, 0.010370885, -0.77247268, -0.634855568, 0.0156119959, 0.634996474, -0.772489607, 0.0062854127, 0.00806977227, 0.0147688743, 0.999858022)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1679
			NK.C0 = clerp(NK.C0,CFrame.new(-1.17865966e-07, 1.4989531, -0.0143954754, 0.999999642, 2.11689621e-05, 1.13360584e-05, -1.50896085e-07, 0.477647185, -0.878551781, -2.40113586e-05, 0.878551543, 0.477646947)*CF.A(M.RRNG(-5,5),M.RRNG(-5,5),M.RRNG(-5,5)),Alpha)
1680
		end
1681
		who.Parent = workspace
1682
		Attack = false
1683
		NeutralAnims = true
1684
		Hum.WalkSpeed = 16
1685
		Hum.JumpPower = 50
1686
	end
1687
end
1688
1689
function ThrowArms()
1690
	Attack = true
1691
	NeutralAnims = false
1692
	for i = 0, 3, 0.1 do
1693
		swait()
1694
		local Alpha = .15
1695
		RJ.C0 = clerp(RJ.C0,CFrame.new(3.20552612e-13, 0.00629388914, 1.4175821e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1696
		LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990822613, 0.0216114447, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1697
		RH.C0 = clerp(RH.C0,CFrame.new(0.498533875, -0.990984261, 0.0154613676, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1698
		LS.C0 = clerp(LS.C0,CFrame.new(-1.49870801, 0.639989734, 0.342571348, 0.999877751, -0.0114739574, -0.0105869146, -9.81397825e-05, -0.682732999, 0.730668128, -0.0156116877, -0.730577767, -0.682650685),Alpha)
1699
		RS.C0 = clerp(RS.C0,CFrame.new(1.50170219, 0.685996532, 0.261634499, 0.999877751, -0.0114739574, -0.0105869146, -9.81397825e-05, -0.682732999, 0.730668128, -0.0156116877, -0.730577767, -0.682650685),Alpha)
1700
		NK.C0 = clerp(NK.C0,CFrame.new(8.16625652e-06, 1.4989531, -0.0144006833, 0.999999225, 3.67464963e-07, -1.62050128e-07, -3.56478267e-07, 0.997964799, 0.0637686923, 1.8440187e-07, -0.0637686551, 0.997963905),Alpha)
1701
	end
1702
	Sound()
1703
	FLArmW:destroy()
1704
	FRArmW:destroy()
1705
	local BV1 = NewInstance("BodyVelocity", FRArm, {
1706
		velocity = Vector3.new(0, 10, 0) + Mouse.Hit.lookVector * 50,
1707
		P = 5000,
1708
		maxForce = Vector3.new(8000, 8000, 8000),
1709
	})
1710
	local BV2 = NewInstance("BodyVelocity", FLArm, {
1711
		velocity = Vector3.new(0, 10, 0) + Mouse.Hit.lookVector * 50,
1712
		P = 5000,
1713
		maxForce = Vector3.new(8000, 8000, 8000),
1714
	})
1715
	Sound(Torso,541909763,.8,5,false,true,true)
1716
	S.Debris:AddItem(BV1, 0.05)
1717
	S.Debris:AddItem(BV2, 0.05)
1718
	FRArm.CanCollide = true
1719
	FLArm.CanCollide = true
1720
	S.Debris:AddItem(FRArm, 5)
1721
	S.Debris:AddItem(FLArm, 5)
1722
	FRArm = nil
1723
	FLArm = nil
1724
	for i = 0, 1, 0.1 do
1725
		swait()
1726
		local Alpha = .3
1727
		RJ.C0 = clerp(RJ.C0,CFrame.new(3.20552612e-13, 0.00629388914, 1.4175821e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1728
		LH.C0 = clerp(LH.C0,CFrame.new(-0.496493757, -0.990822613, 0.0216114447, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1729
		RH.C0 = clerp(RH.C0,CFrame.new(0.498533875, -0.990984261, 0.0154613676, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),Alpha)
1730
		LS.C0 = clerp(LS.C0,CFrame.new(-1.50884342, 0.499208659, -0.305685878, 0.999877751, 0.0152528696, -0.00332931988, -9.81397825e-05, -0.20710893, -0.978317916, -0.0156116877, 0.978198647, -0.207082108),Alpha)
1731
		RS.C0 = clerp(RS.C0,CFrame.new(1.4918015, 0.444425255, -0.370944679, 0.999877751, 0.0152528696, -0.00332931988, -9.81397825e-05, -0.20710893, -0.978317916, -0.0156116877, 0.978198647, -0.207082108),Alpha)
1732
		NK.C0 = clerp(NK.C0,CFrame.new(8.16625652e-06, 1.4989531, -0.0144006833, 0.999999225, 3.67464963e-07, -1.62050128e-07, -3.56478267e-07, 0.997964799, 0.0637686923, 1.8440187e-07, -0.0637686551, 0.997963905),Alpha)
1733
	end
1734
	Attack = false
1735
	NeutralAnims = true
1736
end
1737
Mouse.KeyDown:connect(function(k)
1738
	if(Attack)then return end
1739
	if(k == 'q')then Teleport(Mouse.Hit*CF.N(0,3.25,0)) end
1740
	if(k == 'e')then Dash() end
1741
	if(not FLArm and not FRArm)then
1742
		if(k == 'z')then The_Necc() end
1743
		if(k == 'x')then The_End() end
1744
		if(k == 'c')then Hands_Off() end
1745
		if(k == 'v')then SawMeDaddy() end
1746
		if(k == 'b')then Shriek() end
1747
		if(k == 't')then Taunt() end
1748
	end
1749
end)
1750
1751
Mouse.Button1Down:connect(function()
1752
	if(Attack)then return end
1753
	if(FLArm and FRArm)then
1754
		ThrowArms()
1755
	end
1756
end)
1757
Plr.Chatted:connect(function(m)
1758
	if(m == '/e aeiou')then Sound(Torso,221792881,1,5,false,true,true) end 
1759
	if(m == '/e earthquake')then Sound(Torso,1205111204,1,5,false,true,true) end 
1760
	if(Attack)then return end
1761
	if(m == '/e dab')then Aids() end
1762
end)
1763
1764
--// Wrap it all up \\--
1765
1766
while true do
1767
	swait()
1768
	if(not Music or not Music.Parent)then
1769
		local a = Music.TimePosition
1770
		Music = Sound(Char,MusicID,MusicPitch,2,true,false,true)
1771
		Music.Name = 'Music'
1772
		Music.TimePosition = a
1773
	end
1774
	if(Music.Volume ~= 2)then Music.Volume = 2 end
1775
	RArm.Transparency = 1
1776
	Sine = Sine + Change
1777
	local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
1778
	local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
1779
	local State = (Hum.PlatformStand and 'Paralyzed' or Hum.Sit and 'Sit' or not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
1780
	if(State == 'Walk')then
1781
		local wsVal = 7 / (Hum.WalkSpeed/16)
1782
		local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
1783
		--RH.C1 = RH.C1:lerp(CF.N(0,.925+.5*M.C(Sine/wsVal)/2,0+.5*M.C(Sine/wsVal)/2)*CF.A(-M.R(-15-35*M.C(Sine/wsVal) + -M.S(Sine/wsVal)/2.5),0,0),Alpha)
1784
		--RH.C0 = clerp(RH.C0, CF(1, -0.925 - 0.5 * Cos(sine / 7) / 2, 0.5 * Cos(sine / 7) / 2) * angles(Rad(-15 - 35 * Cos(sine / 7)) - rl.RotVelocity.Y / 75 + -Sin(sine / 7) / 2.5, Rad(90 - 0.1 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 + 0.1 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)--
1785
		RH.C1 = RH.C1:lerp(CF.N(0,.95+.5*M.C(Sine/wsVal)/2,.5*M.C(Sine/wsVal)/2) * CF.A(M.R(15-45*M.C(Sine/wsVal)) + M.S(Sine/wsVal)/2.5,0,0)*CF.A(M.R(0+.1*M.C(Sine/wsVal)),0,0),Alpha)
1786
		LH.C1 = LH.C1:lerp(CF.N(0,.95-.5*M.C(Sine/wsVal)/2,-.5*M.C(Sine/wsVal)/2) * CF.A(M.R(15+45*M.C(Sine/wsVal)) + -M.S(Sine/wsVal)/2.5,0,0)*CF.A(M.R(0+.1*M.C(Sine/wsVal)),0,0),Alpha)	
1787
	else
1788
		RH.C1 = RH.C1:lerp(CF.N(0,1,0),.3)
1789
		LH.C1 = LH.C1:lerp(CF.N(0,1,0),.3)
1790
	end	
1791
	if(Idle > Frame_Speed*10)then
1792
		--idk i'll do something
1793
	end
1794
	if(NeutralAnims and not Attack and State == 'Idle')then
1795
		Idle = Idle + 1
1796
	else
1797
		Idle = 0
1798
	end
1799
	for v,_ in next, Stunned do
1800
		if(v.Parent)then
1801
			local h = v:FindFirstChildOfClass'Humanoid'
1802
			for _,c in next, v:children() do
1803
				if(c:IsA'Script' or c:IsA'LocalScript')then
1804
					c.Disabled = false
1805
				end
1806
			end
1807
			if(h)then
1808
				h.Name = 'no escape lol'
1809
				h.PlatformStand = true
1810
			else
1811
				Stunned[v] = nil
1812
			end
1813
		else
1814
			Stunned[v] = nil
1815
		end
1816
	end
1817
	if(NeutralAnims)then	
1818
		if(State == 'Idle')then
1819
			Change = 1
1820
			local Alpha = .3
1821
			RJ.C0 = clerp(RJ.C0,CFrame.new(0.00232864846, 0.00629545515+.2*M.C(Sine/16), 0.00257661846, 0.838281333, -0.00342716719, -0.545226395, 0, 0.99998033, -0.00628564507, 0.545237184, 0.00526913954, 0.838264763),Alpha)
1822
			LH.C0 = clerp(LH.C0,CFrame.new(-0.725328565, -0.990803361-.2*M.C(Sine/16), 0.0247094855, 0.82966727, 0, 0.558258176, -0.00350901252, 0.99998033, 0.00521499431, -0.558247149, -0.00628564507, 0.829650879),Alpha)
1823
			RH.C0 = clerp(RH.C0,CFrame.new(0.576427579, -0.99124372-.2*M.C(Sine/16), -0.02560886, 0.82966727, 0, 0.558258176, -0.00350901252, 0.99998033, 0.00521499431, -0.558247149, -0.00628564507, 0.829650879),Alpha)
1824
			LS.C0 = clerp(LS.C0,CFrame.new(-1.46491873, 0.505438805+.2*M.C(Sine/16), -0.00360340625, 0.996807694, 0.0782995075, 0.0156106055, -0.0784052685, 0.996901929, 0.00628136564, -0.0150704384, -0.0074852705, 0.999858379)*CF.A(-M.R(0+5*M.S(Sine/16)),0,M.R(0+5*M.C(Sine/16))),Alpha)
1825
			RS.C0 = clerp(RS.C0,CFrame.new(1.44824493, 0.497874349+.2*M.C(Sine/16), 0.00803661905, 0.994963646, -0.0990139842, 0.0156099498, 0.0989264548, 0.995075107, 0.00628477754, -0.0161553323, -0.00470888987, 0.999858439)*CF.A(-M.R(0+5*M.S(Sine/16)),0,-M.R(0+5*M.C(Sine/16))),Alpha)
1826
			NK.C0 = clerp(NK.C0,CFrame.new(-0.00607250631, 1.49895012, -0.0144915879, 0.838281453, -0.0313475803, 0.544335127, -0.00342752389, 0.998023272, 0.0627533421, -0.545226216, -0.0544706844, 0.836516857)*CF.A(M.R(0+5*M.C(Sine/16)),0,0),Alpha)
1827
		elseif(State == 'Walk')then
1828
			local wsVal = 7 / (Hum.WalkSpeed/16)
1829
			local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
1830
			RJ.C0 = RJ.C0:lerp(RJC0*CF.N(0,-0.175 + 0.025 * M.C(Sine/(wsVal/2)) + -M.S(Sine/(wsVal/2)) / 7,0)*CF.A(0,M.R(0+8*M.C(Sine/wsVal)),M.R(0+2*M.C(Sine/wsVal))),Alpha)
1831
			RH.C0 = RH.C0:lerp(RHC0,Alpha)
1832
			LH.C0 = LH.C0:lerp(LHC0,Alpha)
1833
			RS.C0 = RS.C0:lerp(RSC0*CF.A(M.R(0-45*M.C(Sine/wsVal)),0,M.R(5+10*M.C(Sine/wsVal))),Alpha)
1834
			LS.C0 = LS.C0:lerp(LSC0*CF.A(M.R(0+45*M.C(Sine/wsVal)),0,M.R(-5+10*M.C(Sine/wsVal))),Alpha)
1835
			NK.C0 = NK.C0:lerp(NKC0,Alpha)
1836
		elseif(State == 'Jump' or State == 'Fall')then
1837
			if(Walking)then
1838
				local Alpha = .2
1839
				RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
1840
				LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
1841
				RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
1842
				LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
1843
				RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
1844
				NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
1845
			else
1846
				local Alpha = .2
1847
				RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
1848
				LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
1849
				RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
1850
				LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
1851
				RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
1852
				NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)			
1853
			end
1854
		elseif(State == 'Paralyzed')then
1855
			local Alpha = .3
1856
			RJ.C0 = RJ.C0:lerp(RJC0,Alpha)
1857
			RH.C0 = RH.C0:lerp(RHC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-10,10)),Alpha)
1858
			LH.C0 = LH.C0:lerp(LHC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-10,10)),Alpha)
1859
			RS.C0 = RS.C0:lerp(RSC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-5,15)),Alpha)
1860
			LS.C0 = LS.C0:lerp(LSC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-15,5)),Alpha)
1861
			NK.C0 = NK.C0:lerp(NKC0,Alpha)
1862
		elseif(State == 'Sit')then
1863
			local Alpha = .3
1864
			RJ.C0 = clerp(RJ.C0,CFrame.new(3.2050404e-13, 0.00629293546, 1.41158671e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),Alpha)
1865
			LH.C0 = clerp(LH.C0,CFrame.new(-0.686911047, -1.01880026, -0.25455457, 0.980693579, 0.195502773, 0.00425194856, -0.0504306704, 0.273862094, -0.960446, -0.188934311, 0.941688716, 0.278434128),Alpha)
1866
			RH.C0 = clerp(RH.C0,CFrame.new(0.557953715, -1.03419244, -0.293038249, 0.986133933, -0.165894628, 0.00425344985, 0.0502241589, 0.273924351, -0.960439026, 0.158166528, 0.947335124, 0.278457999),Alpha)
1867
			LS.C0 = clerp(LS.C0,CFrame.new(-1.50518143, 0.551521897, -0.0714710951, 0.999877751, 0.0137732355, 0.00735067623, -9.81397825e-05, 0.47637102, -0.879244447, -0.0156116877, 0.879136324, 0.476314098),Alpha)
1868
			RS.C0 = clerp(RS.C0,CFrame.new(1.4960835, 0.497820318, -0.0970379114, 0.999877751, 0.0137732355, 0.00735067623, -9.81397825e-05, 0.47637102, -0.879244447, -0.0156116877, 0.879136324, 0.476314098),Alpha)
1869
			NK.C0 = clerp(NK.C0,CFrame.new(4.35156289e-06, 1.49895275, -0.0144044831, 0.999999225, 3.67464963e-07, -1.62050128e-07, -3.56478267e-07, 0.997964799, 0.0637686923, 1.8440187e-07, -0.0637686551, 0.997963905),Alpha)
1870
		end
1871
	end
1872
end
1873
1874
end)