View difference between Paste ID: aYMncBaf and rmyZuFcD
SHOW: | | - or go back to the newest paste.
1
wait(1/60)
2
-- Created by Nebula_Zorua --
3
-- Killbot --
4
-- A cyborg that got taken over by a virus --
5
-- Discord: Nebula the Zorua#6969
6
-- Youtube: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
7
8
9
--// Initializing \\--
10
local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
11
local Plrs = S.Players
12
local Plr = Plrs.LocalPlayer
13
local Char = Plr.Character
14
local Hum = Char:FindFirstChildOfClass'Humanoid'
15
local RArm = Char["Right Arm"]
16
local LArm = Char["Left Arm"]
17
local RLeg = Char["Right Leg"]
18
local LLeg = Char["Left Leg"]	
19
local Root = Char:FindFirstChild'HumanoidRootPart'
20
local Torso = Char.Torso
21
local Head = Char.Head
22
local NeutralAnims = true
23
local Attack = false
24
local BloodPuddles = {}
25
local Effects = {}
26
local Debounces = {Debounces={}}
27
local Mouse = Plr:GetMouse()
28
local Hit = {}
29
local Sine = 0
30
local Idle = 0
31
local Change = 1
32
local FLArm,FRArm,FRArmW,FLArmW
33
local Stunned = {}
34
local VoidSB = (game.PlaceId == 843468296) -- You can change the 843468296 to 0 if you dont care about potential lag on Void SB
35
--// Debounce System \\--
36
37
38
function Debounces:New(name,cooldown)
39
	local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
40
	setmetatable(aaaaa,{__index = Debounces})
41
	Debounces.Debounces[name] = aaaaa
42
	return aaaaa
43
end
44
45
function Debounces:Use(overrideUsable)
46
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
47
	if(self.Usable or overrideUsable)then
48
		self.Usable = false
49
		self.CoolingDown = true
50
		local LastUse = time()
51
		self.LastUse = LastUse
52
		delay(self.Cooldown or 2,function()
53
			if(self.LastUse == LastUse)then
54
				self.CoolingDown = false
55
				self.Usable = true
56
			end
57
		end)
58
	end
59
end
60
61
function Debounces:Get(name)
62
	assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
63
	for i,v in next, Debounces.Debounces do
64
		if(i == name)then
65
			return v;
66
		end
67
	end
68
end
69
70
function Debounces:GetProgressPercentage()
71
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
72
	if(self.CoolingDown and not self.Usable)then
73
		return math.max(
74
			math.floor(
75
				(
76
					(time()-self.LastUse)/self.Cooldown or 2
77
				)*100
78
			)
79
		)
80
	else
81
		return 100
82
	end
83
end
84
85
--// Shortcut Variables \\--
86
local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
87
local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
88
local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
89
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}
90
local R3 = {N=Region3.new}
91
local De = S.Debris
92
local WS = workspace
93
local Lght = S.Lighting
94
local RepS = S.ReplicatedStorage
95
local IN = Instance.new
96
97
--// Extended ROBLOX tables \\--
98
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})
99
--// Customization \\--
100
101
local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
102
local Remove_Hats = false
103
local Remove_Clothing = false
104
local PlayerSize = 1
105
local DamageColor = BrickColor.new'Toothpaste'
106-
local MusicID = 1030796589
106+
local MusicID = 0
107
local MusicPitch = 1
108
local BloodID = "rbxassetid://284205403"
109
local BloodColor = BrickColor.new'Crimson'
110
local BloodMaterial = Enum.Material.SmoothPlastic
111
112
--// Weapon and GUI creation, and Character Customization \\--
113
114
if(Remove_Hats)then Instance.ClearChildrenOfClass(Char,"Accessory",true) end
115
if(Remove_Clothing)then Instance.ClearChildrenOfClass(Char,"Clothing",true) Instance.ClearChildrenOfClass(Char,"ShirtGraphic",true) end
116
local Effects = IN("Folder",Char)
117
Effects.Name = "Effects"
118
119
New = function(Object, Parent, Name, Data)
120
	local Object = Instance.new(Object)
121
	for Index, Value in pairs(Data or {}) do
122
		Object[Index] = Value
123
	end
124
	Object.Parent = Parent
125
	Object.Name = Name
126
	return Object
127
end
128
129
130
131
CyborgArm = New("Model",Char,"CyborgArm",{})
132
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),})
133
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
134
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),})
135
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
136
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),})
137
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
138
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),})
139
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
140
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),})
141
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
142
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),})
143
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),})
144
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),})
145
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
146
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),})
147
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
148
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),})
149
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
150
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),})
151
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
152
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),})
153
Part = New("Part",CyborgArm,"Part",{BrickColor = BrickColor.new("Toothpaste"),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),})
154
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),})
155
156
for _,v in next, CyborgArm:children() do
157
	v.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
158
end
159
160
pcall(function() Char.ReaperShadowHead.Eye1.BrickColor = BrickColor.new'Toothpaste' Char.ReaperShadowHead.Eye1.Material = 'Glass' end)
161
pcall(function() Char.ReaperShadowHead.Eye2.BrickColor = BrickColor.new'Toothpaste' Char.ReaperShadowHead.Eye2.Material = 'Glass' end)
162
pcall(function() Char.LeftWing.BrickColor = BrickColor.new'Toothpaste' Char.LeftWing.Transparency = 0.5 end)
163
164
165
if(PlayerSize ~= 1)then
166
	for _,v in next, Char:GetDescendats() do
167
		if(v:IsA'BasePart')then
168
			v.Size = v.Size * PlayerSize
169
		end
170
	end
171
end
172
173
--// Instance Creation Functions \\--
174
175
function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
176
	local Sound = IN("Sound")
177
	Sound.SoundId = "rbxassetid://".. tostring(id or 0)
178
	Sound.Pitch = pitch or 1
179
	Sound.Volume = volume or 1
180
	Sound.Looped = looped or false
181
	if(autoPlay)then
182
		coroutine.wrap(function()
183
			repeat wait() until Sound.IsLoaded
184
			Sound.Playing = autoPlay or false
185
		end)()
186
	end
187
	if(not looped and effect)then
188
		Sound.Ended:connect(function()
189
			Sound.Volume = 0
190
			Sound:destroy()
191
		end)
192
	elseif(effect)then
193
		warn("Sound can't be looped and a sound effect!")
194
	end
195
	Sound.Parent =parent or Torso
196
	return Sound
197
end
198
function Part(parent,color,material,size,cframe,anchored,cancollide)
199
	local part = IN("Part")
200
	part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
201
	part.Material = material or Enum.Material.SmoothPlastic
202
	part.TopSurface,part.BottomSurface=10,10
203
	part.Size = size or V3.N(1,1,1)
204
	part.CFrame = cframe or CF.N(0,0,0)
205
	part.CanCollide = cancollide or false
206
	part.Anchored = anchored or false
207
	part.Parent = parent or Char
208
	return part
209
end
210
211
function Mesh(parent,meshtype,meshid,textid,scale,offset)
212
	local part = IN("SpecialMesh")
213
	part.MeshId = meshid or ""
214
	part.TextureId = textid or ""
215
	part.Scale = scale or V3.N(1,1,1)
216
	part.Offset = offset or V3.N(0,0,0)
217
	part.MeshType = meshtype or Enum.MeshType.Sphere
218
	part.Parent = parent
219
	return part
220
end
221
222
NewInstance = function(instance,parent,properties)
223
	local inst = Instance.new(instance,parent)
224
	if(properties)then
225
		for i,v in next, properties do
226
			pcall(function() inst[i] = v end)
227
		end
228
	end
229
	return inst;
230
end
231
232
--// Music Creation \\--
233
local Music = Sound(Char,MusicID,MusicPitch,3,true,false,true)
234
Music.Name = 'Music'
235
236
--// Stop animations \\--
237
for _,v in next, Hum:GetPlayingAnimationTracks() do
238
	v:Stop();
239
end
240
241
pcall(game.Destroy,Char:FindFirstChild'Animate')
242
pcall(game.Destroy,Hum:FindFirstChild'Animator')
243
244
--// Joints \\--
245
246
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)})
247
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)})
248
local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
249
local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
250
local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
251
local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
252
local HW = NewInstance('Motor',Char,{Part0=Handle,Part1=RArm})
253
254
local LSC0 = LS.C0
255
local RSC0 = RS.C0
256
local NKC0 = NK.C0
257
local LHC0 = LH.C0
258
local RHC0 = RH.C0
259
local RJC0 = RJ.C0
260
261
--// Artificial HB \\--
262
263
local ArtificialHB = IN("BindableEvent", script)
264
ArtificialHB.Name = "Heartbeat"
265
266
script:WaitForChild("Heartbeat")
267
268
local tf = 0
269
local allowframeloss = false
270
local tossremainder = false
271
local lastframe = tick()
272
local frame = 1/Frame_Speed
273
ArtificialHB:Fire()
274
275
game:GetService("RunService").Heartbeat:connect(function(s, p)
276
	tf = tf + s
277
	if tf >= frame then
278
		if allowframeloss then
279
			script.Heartbeat:Fire()
280
			lastframe = tick()
281
		else
282
			for i = 1, math.floor(tf / frame) do
283
				ArtificialHB:Fire()
284
			end
285
			lastframe = tick()
286
		end
287
		if tossremainder then
288
			tf = 0
289
		else
290
			tf = tf - frame * math.floor(tf / frame)
291
		end
292
	end
293
end)
294
295
function swait(num)
296
	if num == 0 or num == nil then
297
		ArtificialHB.Event:wait()
298
	else
299
		for i = 0, num do
300
			ArtificialHB.Event:wait()
301
		end
302
	end
303
end
304
305
306
--// Effect Function(s) \\--
307
308
function FakeWeld(p0,p1)
309
	local attachment0 = Instance.new('Attachment',p0)
310
	local attachment1 = Instance.new('Attachment',p1)
311
	return NewInstance("HingeConstraint",p0,{Attachment0=attachment0,Attachment1=attachment1,LimitsEnabled=true,UpperAngle=0,LowerAngle=0})
312
end
313
314
function Fragment(v)
315
	v:ClearAllChildren()
316
	local Fragments = NewInstance("Folder",v.Parent,{Name='Fragmentation'})
317
	v.Archivable = true
318
	-- X
319
	v.Size = Vector3.new(v.Size.x/2,v.Size.y,v.Size.z)
320
	v.Name = v.Name.."Fragment"
321
	
322
	local a = v:Clone()
323
	a.Parent = Fragments
324
	a.CFrame = CF.N(-.5,1,1) * a.CFrame
325
	v.CFrame = CF.N(.5,1,1) * v.CFrame
326
	-- Y
327
	v.Size = Vector3.new(v.Size.x,v.Size.y/2,v.Size.z)
328
	
329
	local a = v:Clone()
330
	a.Parent = Fragments
331
	a.CFrame = CF.N(1,-.5,1) * a.CFrame
332
	v.CFrame = CF.N(1,.5,1) * v.CFrame
333
	-- Z
334
	v.Size = Vector3.new(v.Size.x,v.Size.y,v.Size.z/2)
335
	
336
	local a = v:Clone()
337
	a.Parent = Fragments
338
	a.CFrame = CF.N(1,1,-.5) * a.CFrame
339
	v.CFrame = CF.N(1,1,.5) * v.CFrame
340
	
341
	v.Parent = Fragments
342
	return Fragments
343
end
344
345
local blood = NewInstance("ParticleEmitter",nil,{
346
	Color = ColorSequence.new(BloodColor.Color),
347
	LightEmission=.1,
348
	LightInfluence=1,
349
	ZOffset=.9,
350
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
351
	Texture="rbxassetid://284205403",
352
	Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
353
	Acceleration = V3.N(0,-15,0),
354
	Lifetime = NumberRange.new(1,2),
355
	Rate=50,
356
	Speed = NumberRange.new(5,15),
357
	SpreadAngle = Vector2.new(15,15),
358
	Enabled = false,
359
	EmissionDirection = 'Back',
360
})
361
362
local blood2 = NewInstance("ParticleEmitter",nil,{
363
	Color = ColorSequence.new(BloodColor.Color),
364
	LightEmission=.1,
365
	LightInfluence=1,
366
	ZOffset=.9,
367
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
368
	Texture=BloodID,
369
	Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
370
	Acceleration = V3.N(0,-125,0),
371
	Lifetime = NumberRange.new(1,2),
372
	Rate=50,
373
	Speed = NumberRange.new(5,15),
374
	SpreadAngle = Vector2.new(15,15),
375
	Enabled = false,
376
	EmissionDirection = 'Back',
377
})
378
379
local blood3 = NewInstance("ParticleEmitter",nil,{
380
	Color = ColorSequence.new(BloodColor.Color),
381
	Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2),NumberSequenceKeypoint.new(1,.2)},
382
	Texture=BloodID,
383
	Lifetime = NumberRange.new(.4),
384
	Rate=50,
385
	LockedToPart=true,
386
	Speed = NumberRange.new(0,2),
387
	Enabled = false,
388
}) 
389
390
function Blood(size,cframe,amount)
391
	local part = Instance.new("Part",Effects)
392
	part.Transparency = 1
393
	part.Size = size
394
	part.Anchored = true
395
	part.CanCollide = false
396
	part.CFrame = cframe
397
	S.Debris:AddItem(part,6)
398
	local prtcl = blood:Clone()
399
	prtcl.Parent = part
400
	prtcl:Emit(amount)
401
	return part, prtcl
402
end
403
404
function Blood2(size,cframe)
405
	local part = Instance.new("Part",Effects)
406
	part.Transparency = 1
407
	part.Size = size
408
	part.Anchored = false
409
	part.CanCollide = false
410
	part.CFrame = cframe
411
	local prtcl = blood:Clone()
412
	prtcl.Enabled = true
413
	prtcl.Parent = part
414
	return part, prtcl
415
end
416
417
function Blood3(size,cframe,amount)
418
	local part = Instance.new("Part",Effects)
419
	part.Transparency = 1
420
	part.Size = size
421
	part.Anchored = true
422
	part.CanCollide = false
423
	part.CFrame = cframe
424
	S.Debris:AddItem(part,6)
425
	local prtcl = blood2:Clone()
426
	prtcl.Parent = part
427
	prtcl:Emit(amount)
428
	return part, prtcl
429
end
430
431
function Blood4(size,cframe)
432
	local part = Instance.new("Part",Effects)
433
	part.Transparency = 1
434
	part.Size = size
435
	part.Anchored = false
436
	part.CanCollide = false
437
	part.CFrame = cframe
438
	local prtcl = blood2:Clone()
439
	prtcl.Enabled = true
440
	prtcl.Parent = part
441
	return part, prtcl
442
end
443
444
445
function BloodDrop(pos,dir,maxsize)
446
	if(game.PlaceId ~= 843468296)then
447
		local owo = NewInstance("Part",Effects,{Transparency=0,Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.2,.2,.2), CanCollide = false})
448
		owo.CFrame=CF.N(pos,dir)
449
		local bv = Instance.new("BodyVelocity",owo) 
450
		bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
451
		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
452
		bv.Name = "MOVE"
453
		--[[local prt = blood3:Clone()
454
		prt.Parent = owo
455
		prt.Enabled = true]]
456
		delay(.01, function() bv:destroy() end)
457
		local touch;
458
		touch = owo.Touched:connect(function(hit)
459
			if(hit.Anchored==true and hit.CanCollide and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
460
				touch:disconnect()
461
				BloodPuddle(owo.Position+V3.N(0,1,0),100,maxsize,owo)
462
				owo:destroy()
463
			end
464
		end)
465
	end
466
end
467
468
function BloodPuddle(position,range,maxSize,where)
469
	local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
470
		position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range			
471
	),{where,Char},false,true)
472
	if(hit and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
473
		if(hit.Name == 'BloodPuddle')then
474
			local dist = (position - hit.Position).magnitude
475
			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
476
				--hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
477
				hit.Size = hit.Size + V3.N(.1,0,.1)
478
			end
479
			if(hit.Size.Z < 2)then
480
				pcall(function() hit.Sound:Play() end)
481
			end
482
		else
483
			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'})
484
			local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
485
			Sound(Puddle,685857471,1,2,false,false,true)
486
			coroutine.wrap(function()
487
				swait(75)
488
				repeat
489
					swait()
490
					Puddle.Size = Puddle.Size - V3.N(.02,0,.02)
491
				until Puddle.Size.Z < 0.51
492
				Puddle:destroy()
493
			end)()
494
		end
495
	end
496
end
497
498
function recurse(root,callback,i)
499
	i= i or 0
500
	for _,v in pairs(root:GetChildren()) do
501
		i = i + 1
502
		callback(i,v)
503
		
504
		if #v:GetChildren() > 0 then
505
			i = recurse(v,callback,i)
506
		end
507
	end
508
	
509
	return i
510
end
511
512
function ragdollJoint(character, part0, part1, attachmentName, className, properties) -- thanks mustardfat im too lazy
513
	if character:FindFirstChild("RagdollConstraint"..part1.Name) == nil then
514
	for i,v in pairs(character:GetChildren()) do
515
		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
516
			v.Size = Vector3.new(1,1,1)
517
		end
518
	end
519
	if part1:FindFirstChildOfClass('Motor6D') then
520
		part1:FindFirstChildOfClass('Motor6D'):Remove()
521
	end
522
	if attachmentName ~= "NeckAttachment" then
523
		attachmentName = attachmentName.."RigAttachment"
524
	end
525
	local constraint = Instance.new(className.."Constraint")
526
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
527
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
528
	constraint.Name = "RagdollConstraint"..part1.Name
529
	if character:FindFirstChildOfClass('Humanoid').Health > 0 then
530
	local collidepart = Instance.new('Part',part1)
531
	collidepart.Size = part1.Size/2
532
	if string.find(string.lower(part1.Name),"upper") then
533
		if string.find(string.lower(part1.Name),"leg") then
534
			collidepart.Size = part1.Size/3
535
		else
536
			collidepart.Size = part1.Size/2.5
537
		end
538
	end
539
	collidepart.CanCollide = true
540
	collidepart.Name = "RagdollJoint"
541
	collidepart.Anchored = false
542
	collidepart.Transparency = 1
543
	collidepart.CFrame = part1.CFrame
544
	collidepart:BreakJoints()
545
	local attachment0 = Instance.new('Attachment',part1)
546
	local attachment1 = Instance.new('Attachment',collidepart)
547
	if attachment0 and attachment1 then
548
		local constraint = Instance.new("HingeConstraint")
549
		constraint.Attachment0 = attachment0
550
		constraint.Attachment1 = attachment1
551
		constraint.LimitsEnabled = true
552
		constraint.UpperAngle = 0
553
		constraint.LowerAngle = 0
554
		constraint.Parent = character
555
	end
556
	if string.find(string.lower(part1.Name),"upper") then
557
		if string.find(string.lower(part1.Name),"leg") then
558
			attachment0.Position = Vector3.new(0,0.01,0)
559
		else
560
			attachment0.Position = Vector3.new(0,0.25,0)
561
		end
562
	else
563
		attachment0.Position = Vector3.new(0,-0.1,0)
564
	end
565
	end
566
	for _,propertyData in next,properties or {} do
567
		constraint[propertyData[1]] = propertyData[2]
568
	end
569
	constraint.Parent = character
570
	return constraint
571
	end
572
end
573
574
575
function getAttachment0(character,attachmentName)
576
	for _,child in next,character:children() do
577
		local attachment = child:FindFirstChild(attachmentName)
578
		if attachment then
579
			return attachment
580
		end
581
	end
582
end
583
584
585
function Ragdoll(who,half,snapped)
586
	pcall(function()
587
		who:breakJoints()
588
		local who = who
589
		local hhh = who:FindFirstChildOfClass'Humanoid'
590
		local t = GetTorso(who)
591
		pcall(function()
592
			who.HumanoidRootPart:destroy()
593
		end)
594
		hhh.Health = 0
595
		Stunned[who] = true
596
		if(hhh.RigType == Enum.HumanoidRigType.R6)then
597
			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'			
598
			pcall(function()
599
				if(hhh.Health > 0)then  local CollideRA = NewInstance('Part',who,{Size=RA.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
600
				FakeWeld(RA,CollideRA) end
601
				local RAJ = NewInstance("Attachment",t,{Position=V3.N(1.5,.5,0),Orientation=V3.N()})
602
				local RAJ2 = NewInstance("Attachment",RA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
603
				local RAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RAJ,Attachment1=RAJ2})
604
			end)
605
			pcall(function()
606
				local LAJ = NewInstance("Attachment",t,{Position=V3.N(-1.5,.5,0),Orientation=V3.N()})
607
				local LAJ2 = NewInstance("Attachment",LA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
608
609
				local LAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LAJ,Attachment1=LAJ2})
610
611
				if(hhh.Health > 0)then local CollideLA = NewInstance('Part',who,{Size=LA.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
612
				FakeWeld(LA,CollideLA) end
613
			end)
614
			pcall(function()
615
				if(HD)then 
616
					local NJ = NewInstance('Attachment',t,{Position=V3.N(0,1,0),Orientation=V3.N()})
617
					local NJ2 = NewInstance('Attachment',HD,{Position=V3.N(0,-.5,0),Orientation=V3.N()})
618
					local NJ3 = NewInstance('Attachment',HD,{Position=V3.N(0,.5,0),Orientation=V3.N()})
619
					local HC = NewInstance('HingeConstraint',t,{LimitsEnabled=true,UpperAngle=50,LowerAngle=-50,Attachment0=NJ,Attachment1=NJ2})
620
	
621
					if(snapped)then
622
						NJ.Orientation = V3.N(0,90,0)
623
					end
624
					if(hhh.Health > 0)then 
625
						local CollideHD = NewInstance('Part',who,{Size=HD.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
626
						FakeWeld(HD,CollideHD)
627
					end
628
				end
629
			end)
630
			if(not half)then
631
				local RLJ = NewInstance("Attachment",t,{Position=V3.N(.5,-1,0),Orientation=V3.N()})
632
				local RLJ2 = NewInstance("Attachment",RL,{Position=V3.N(0,1,0),Orientation=V3.N()})
633
				local LLJ = NewInstance("Attachment",t,{Position=V3.N(-.5,-1,0),Orientation=V3.N()})
634
				local LLJ2 = NewInstance("Attachment",LL,{Position=V3.N(0,1,0),Orientation=V3.N()})
635
				local RLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RLJ,Attachment1=RLJ2})
636
				local LLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LLJ,Attachment1=LLJ2})
637
				if(hhh.Health > 0)then local CollideRL = NewInstance('Part',who,{Size=RL.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
638
				local CollideLL = NewInstance('Part',who,{Size=LL.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
639
640
				FakeWeld(RL,CollideRL)
641
				FakeWeld(LL,CollideLL) end
642
			end
643
			for _,v in next, who:children() do
644
				if(v:IsA'BasePart')then
645
					v.CanCollide = true
646
				end
647
			end
648
		else
649
			local character = who
650
			
651
			if(half)then
652
				pcall(function()
653
					character.UpperTorso.WaistRigAttachment:Destroy()
654
				end)
655
			end
656
657
			local handProperties = {
658
				{"LimitsEnabled", true};
659
				{"UpperAngle",0};
660
				{"LowerAngle",0};
661
			}
662
			local footProperties = {
663
				{"LimitsEnabled", true};
664
				{"UpperAngle", 15};
665
				{"LowerAngle", -45};
666
			}
667
			local shinProperties = {
668
				{"LimitsEnabled", true};
669
				{"UpperAngle", 0};
670
				{"LowerAngle", -75};
671
			}
672
			if character:FindFirstChild('RightLowerArm') and character:FindFirstChild('RightHand') then
673
				ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
674
			end
675
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('RightUpperArm') then
676
				ragdollJoint(character, character.UpperTorso, character["RightUpperArm"], "RightShoulder", "BallSocket")
677
			end
678
			if character:FindFirstChild('RightUpperArm') and character:FindFirstChild('RightLowerArm') then
679
				ragdollJoint(character, character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
680
			end
681
			if character:FindFirstChild('LeftLowerArm') and character:FindFirstChild('LeftHand') then
682
				ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
683
			end
684
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('LeftUpperArm') then
685
				ragdollJoint(character, character.UpperTorso, character["LeftUpperArm"], "LeftShoulder", "BallSocket")
686
			end
687
			if character:FindFirstChild('LeftUpperArm') and character:FindFirstChild('LeftLowerArm') then
688
				ragdollJoint(character, character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
689
			end
690
			if character:FindFirstChild('RightUpperLeg') and character:FindFirstChild('RightLowerLeg') then
691
				ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
692
			end
693
			if character:FindFirstChild('RightLowerLeg') and character:FindFirstChild('RightFoot') then
694
				ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
695
			end
696
			if character:FindFirstChild('LowerTorso') and character:FindFirstChild('RightUpperLeg') then
697
				ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
698
			end
699
			if character:FindFirstChild('LeftUpperLeg') and character:FindFirstChild('LeftLowerLeg') then
700
				ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
701
			end
702
			if character:FindFirstChild('LeftLowerLeg') and character:FindFirstChild('LeftFoot') then
703
				ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
704
			end
705
			if character:FindFirstChild('LowerTorso') and character:FindFirstChild('LeftUpperLeg') then
706
				ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
707
			end
708
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('LowerTorso') then
709
				ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
710
					{"LimitsEnabled",true};
711
					{"UpperAngle",5};
712
					{"Radius",5};
713
				})
714
			end
715
			if character:FindFirstChild('UpperTorso') and character:FindFirstChild('Head') then
716
				ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "Hinge", {
717
					{"LimitsEnabled",true};
718
					{"UpperAngle",50};
719
					{"LowerAngle",-50};
720
				})
721
			end
722
			local NeckA = ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "Hinge", {
723
				{"LimitsEnabled",true};
724
				{"UpperAngle",50};
725
				{"LowerAngle",-50};
726
			})
727
728
			recurse(character, function(_,v)
729
				if v:IsA("Attachment") then
730
					v.Axis = Vector3.new(0, 1, 0)
731
					v.SecondaryAxis = Vector3.new(0, 0, 1)
732
					v.Rotation = Vector3.new(0, 0, 0)
733
					if(v.Parent == character.Head and snapped)then
734
						v.Orientation = V3.N(0,-90,0)
735
					end
736
				end
737
			end)
738
		end
739
	end)
740
end
741
742
743
function Bezier(startpos, pos2, pos3, endpos, t)
744
	local A = startpos:lerp(pos2, t)
745
	local B  = pos2:lerp(pos3, t)
746
	local C = pos3:lerp(endpos, t)
747
	local lerp1 = A:lerp(B, t)
748
	local lerp2 = B:lerp(C, t)
749
	local cubic = lerp1:lerp(lerp2, t)
750
	return cubic
751
end
752
753
function Effect(data)
754
	local FX = data.Effect or 'Resize-AndFade'
755
	local Parent = data.Parent or Effects
756
	local Color = data.Color or C3.N(0,0,0)
757
	local Size = data.Size or V3.N(1,1,1)
758
	local MoveDir = data.MoveDirection or nil
759
	local MeshData = data.Mesh or nil
760
	local SndData = data.Sound or nil
761
	local Frames = data.Frames or 45
762
	local Manual = data.Manual or nil
763
	local Material = data.Material or nil
764
	local CFra = data.CFrame or Torso.CFrame
765
	local Settings = data.FXSettings or {}
766
	local Snd,Prt,Msh;
767
	if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
768
		Prt = Manual
769
	else
770
		Prt = Part(Parent,Color,Material,Size,CFra,true,false)
771
	end
772
	if(typeof(MeshData) == 'table')then
773
		Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
774
	elseif(typeof(MeshData) == 'Instance')then
775
		Msh = MeshData:Clone()
776
		Msh.Parent = Prt
777
	end
778
	if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
779
		Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
780
	end
781
	if(Snd)then
782
		repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
783
		Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
784
	end
785
	local MoveSpeed = nil;
786
	if(MoveDir)then
787
		MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
788
	end
789
	local Inc = M.RNG()-M.RNG()
790
	local Thingie = 0
791
	local Thingie2 = M.RNG(50,100)/100
792
793
	coroutine.wrap(function()
794
		if(FX ~= 'Arc')then
795
			for i = 1, Frames do
796
				if(FX == 'Resize-AndFade')then
797
					if(not Settings.EndSize)then
798
						Settings.EndSize = V3.N(0,0,0)
799
					end
800
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
801
					if(Settings.EndIsIncrement)then
802
						Prt.Size = Prt.Size - Settings.EndSize					
803
					else
804
						Prt.Size = Prt.Size - grow/Frames
805
					end 
806
					Prt.Transparency = (i/Frames)
807
				elseif(FX == 'Resize+AndFade')then
808
					if(not Settings.EndSize)then
809
						Settings.EndSize = Size*2
810
					end
811
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
812
					if(Settings.EndIsIncrement)then
813
						Prt.Size = Prt.Size + Settings.EndSize					
814
					else
815
						Prt.Size = Prt.Size + grow/Frames
816
					end 
817
					Prt.Transparency = (i/Frames)
818
				elseif(FX == 'Fade')then
819
					Prt.Transparency = (i/Frames)
820
				end
821
				if(Settings.RandomizeCFrame)then
822
					Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
823
				end
824
				if(MoveDir and MoveSpeed)then
825
					local Orientation = Prt.Orientation
826
					Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
827
					Prt.Orientation = Orientation
828
				end
829
				if(swait and typeof(swait) == 'function')then
830
					swait()
831
				else
832
					wait()
833
				end
834
			end
835
			Prt:destroy() 
836
		else
837
			local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
838
			if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
839
			local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
840
			local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
841
			assert(start ~= nil,"You need to specify a start point!")
842
			assert(endP ~= nil,"You need to specify an end point!")
843
			for i = 0, 1, Settings.Speed or 0.01 do
844
				if(Settings.Home)then
845
					endP = Settings.Home.CFrame
846
				end
847
				Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
848
				if(swait and typeof(swait) == 'function')then
849
					swait()
850
				else
851
					wait()
852
				end
853
			end
854
			if(Settings.RemoveOnGoal)then
855
				Prt:destroy()
856
			end
857
		end
858
	end)()
859
	return Prt,Msh,Snd
860
end	
861
862
863
function SoulSteal(character)
864
	local torso = (character:FindFirstChild'Head' or character:FindFirstChild'Torso' or character:FindFirstChild'UpperTorso' or character:FindFirstChild'LowerTorso' or character:FindFirstChild'HumanoidRootPart')
865
	print(torso)
866
	if(torso and torso:IsA'BasePart')then
867
		local Model = Instance.new("Model",Effects)
868
		Model.Name = character.Name.."'s Soul"
869
		character:BreakJoints()
870
		local Soul = Part(Model,BrickColor.new'Toothpaste','Glass',V3.N(.5,.5,.5),torso.CFrame,true,false)
871
		Soul.Name = 'Head'
872
		NewInstance("Humanoid",Model,{Health=0,MaxHealth=0})
873
		Effect{
874
			Effect="Arc",
875
			Manual = Soul,
876
			FXSettings={
877
				Start=torso.CFrame,
878
				Home = Torso,
879
				RemoveOnGoal = true,
880
			}
881
		}
882
		local lastPoint = Soul.CFrame.p
883
	
884
		for i = 0, 1, 0.01 do 
885
				local point = CFrame.new(lastPoint, Soul.Position) * CFrame.Angles(-math.pi/2, 0, 0)
886
				local mag = (lastPoint - Soul.Position).magnitude
887
				Effect{
888
					Effect = "Fade",
889
					CFrame = point * CF.N(0, mag/2, 0),
890
					Size = V3.N(.5,mag+.5,.5),
891
					Color = Soul.BrickColor
892
				}
893
				lastPoint = Soul.CFrame.p
894
			swait()
895
		end
896
		for i = 1, 5 do
897
			Effect{
898
				Effect="Fade",
899
				Color = BrickColor.new'Toothpaste',
900
				MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
901
			}	
902
		end
903
	end
904
end
905
906
--// Other Functions \\ --
907
908
function getRegion(point,range,ignore)
909
    return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
910
end
911
912
function clerp(startCF,endCF,alpha)
913
	return startCF:lerp(endCF, alpha)
914
end
915
916
function GetTorso(char)
917
	return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso'
918
end
919
920
921
922
function ShowDamage(Pos, Text, Time, Color)
923
	coroutine.wrap(function()
924
	local Rate = (1 / 30)
925
	local Pos = (Pos or Vector3.new(0, 0, 0))
926
	local Text = (Text or "")
927
	local Time = (Time or 2)
928
	local Color = (Color or Color3.new(1, 0, 1))
929
	local EffectPart = NewInstance("Part",Effects,{
930
		Material=Enum.Material.SmoothPlastic,
931
		RArmlectance = 0,
932
		Transparency = 1,
933
		BrickColor = BrickColor.new(Color),
934
		Name = "Effect",
935
		Size = Vector3.new(0,0,0),
936
		Anchored = true
937
	})
938
	local BillboardGui = NewInstance("BillboardGui",EffectPart,{
939
		Size = UDim2.new(1.25, 0, 1.25, 0),
940
		Adornee = EffectPart,
941
	})
942
	local TextLabel = NewInstance("TextLabel",BillboardGui,{
943
		BackgroundTransparency = 1,
944
		Size = UDim2.new(1, 0, 1, 0),
945
		Text = Text,
946
		Font = "Arial",
947
		TextColor3 = Color,
948
		TextStrokeColor3 = Color3.new(0,0,0),
949
		TextStrokeTransparency=0,
950
		TextScaled = true,
951
	})
952
	game.Debris:AddItem(EffectPart, (Time))
953
	EffectPart.Parent = game:GetService("Workspace")
954
	delay(0, function()
955
		local Frames = (Time / Rate)
956
		for Frame = 1, Frames do
957
			wait(Rate)
958
			local Percent = (Frame / Frames)
959
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
960
			TextLabel.TextTransparency = Percent
961
			TextLabel.TextStrokeTransparency = Percent
962
		end
963
		if EffectPart and EffectPart.Parent then
964
			EffectPart:Destroy()
965
		end
966
	end) end)()
967
end
968
969
970
function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
971
	if(who)then
972
		local hum = who:FindFirstChildOfClass'Humanoid'
973
		local Damage = M.RNG(minDam,maxDam)
974
		local canHit = true
975
		if(hum)then
976
			for _, p in pairs(Hit) do
977
				if p[1] == hum then
978
					if(time() - p[2] < 0.1) then
979
						canHit = false
980
					else
981
						Hit[_] = nil
982
					end
983
				end
984
			end
985
			if(canHit)then
986
				if(hum.Health >= math.huge)then
987
					who:BreakJoints()
988
					if(who:FindFirstChild'Head' and hum.Health > 0)then
989
						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))
990
					end
991
				else
992
					local player = S.Players:GetPlayerFromCharacter(who)
993
					if(Type == "Fire")then
994
						--idk..
995
					else
996
						local  c = Instance.new("ObjectValue",hum)
997
						c.Name = "creator"
998
						c.Value = Plr
999
						game:service'Debris':AddItem(c,0.35)
1000
						if(M.RNG(1,100) <= (critChance or 0))then
1001
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1002
								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)
1003
							end
1004
							hum.Health = hum.Health - Damage*(critMult or 2)
1005
						else
1006
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1007
								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)
1008
							end
1009
							hum.Health = hum.Health - Damage
1010
						end
1011
						if(Type == 'Knockback' and GetTorso(who))then
1012
							local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
1013
							local body = NewInstance('BodyVelocity',GetTorso(who),{
1014
								P = 500,
1015
								maxForce = V3.N(math.huge,0,math.huge),
1016
								velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
1017
							})
1018
							game:service'Debris':AddItem(body,.5)	
1019
						elseif(Type == 'Knockdown' and GetTorso(who))then
1020
							local rek = GetTorso(who)
1021
							print(rek)
1022
							hum.PlatformStand = true
1023
							delay(1,function()
1024
								hum.PlatformStand = false
1025
							end)
1026
							local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
1027
							local bodvol = NewInstance("BodyVelocity",rek,{
1028
								velocity = angle * Knock,
1029
								P = 5000,
1030
								maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
1031
							})
1032
							local rl = NewInstance("BodyAngularVelocity",rek,{
1033
								P = 3000,
1034
								maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
1035
								angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
1036
							})
1037
							game:GetService("Debris"):AddItem(bodvol, .5)
1038
							game:GetService("Debris"):AddItem(rl, .5)
1039
						end
1040
					end
1041
				end
1042
			end
1043
			table.insert(Hit,{hum,time()})
1044
		end
1045
	end
1046
end
1047
1048
function AOEDamage(where,range,minDam,maxDam,Knock,Type)
1049
	for _,v in next, getRegion(where,range,{Char}) do
1050
		if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
1051
			DealDamage(v.Parent,minDam,maxDam,Knock,Type)
1052
		end
1053
	end
1054
end
1055
1056
function AOEFunction(where,range,callback)
1057
	for _,v in next, getRegion(where,range,{Char}) do
1058
		if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
1059
			callback(v.Parent)
1060
		end
1061
	end
1062
end
1063
1064
function ClosestHumanoid(pos,range)
1065
	local mag,closest = math.huge;
1066
	for _,v in next, getRegion(pos,range or 10,{Char}) do
1067
		local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')
1068
		if((v.CFrame.p-pos).magnitude < mag and hum and closest ~= hum and hum.Health > 0)then
1069
			mag = (v.CFrame.p-pos).magnitude
1070
			closest = hum
1071
		end
1072
	end
1073
	return closest,(closest and GetTorso(closest.Parent) or nil)
1074
end
1075
1076
function AOEHeal(where,range,amount)
1077
	local healed = {}
1078
	for _,v in next, getRegion(where,range,{Char}) do
1079
		local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
1080
		if(hum and not healed[hum])then
1081
			hum.Health = hum.Health + amount
1082
			if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
1083
				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'Toothpaste'.Color)
1084
			end
1085
		end
1086
	end
1087
end
1088
--// Attack Function \\--
1089
1090
function Equip_Sawblade()
1091
	for i = 1, 5 do
1092
		Effect{
1093
			Effect='Resize+AndFade',
1094
			Color = BrickColor.new'Toothpaste',
1095
			Material = Enum.Material.Neon,
1096
			Size=V3.N(3.5,3.5,3.5),
1097
			CFrame=RArm.CFrame*CF.N(0,-1,0)*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1098
			FXSettings={
1099
				EndSize=V3.N(.05,.05,.05),
1100
				EndIsIncrement=true,
1101
				
1102
			}
1103
		}
1104
	end
1105
	local prt = Part(Char,BrickColor.new'Toothpaste',Enum.Material.SmoothPlastic,V3.N(3.42, 3.42, 0.05),CF.N(),false,false)
1106
	prt.Transparency = .5
1107
	local mesh = Mesh(prt,Enum.MeshType.FileMesh,"rbxassetid://74322089","",V3.N(3,3,3),V3.N())
1108
	local weld = NewInstance("Weld",Char,{Part0=RArm,Part1=prt,C0=CF.N(0,-1.25,0)}) 
1109
	return prt,weld
1110
end
1111
1112
function The_Necc()
1113
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1114
	if(torso)then
1115
		local who = torso.Parent
1116
		Attack = true
1117
		NeutralAnims = false
1118
		who.Parent = Char
1119
		local oRoot
1120
		pcall(function() oRoot = who.HumanoidRootPart; oRoot.Parent = nil end)
1121
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.25)})
1122
		for i = 0, 4, 0.1 do
1123
			swait()
1124
			humanoid.PlatformStand = true
1125
			local Alpha = .15
1126
			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)
1127
			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)
1128
			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)
1129
			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)
1130
			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)
1131
			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)
1132
		end		
1133
		gWeld:destroy()
1134
		if(who:FindFirstChild'Head')then
1135
			local s = Sound(who:FindFirstChild'Head',1093102664,1,2,false,false,false)
1136
			s:Play()
1137
			s.Ended:connect(function() s:Destroy() end)
1138
		end
1139
		who.Parent = workspace
1140
		humanoid.Health = 0
1141
		Ragdoll(who,false,true)
1142
		for i = 0, 1.5, 0.1 do
1143
			swait()
1144
			humanoid.PlatformStand = true
1145
			local Alpha = .3
1146
			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)
1147
			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)
1148
			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)
1149
			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)
1150
			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)
1151
			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)
1152
		end
1153
		Attack = false
1154
		NeutralAnims = true
1155
	end
1156
end
1157
1158
function Hands_Off()
1159
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1160
	
1161
	if(torso)then
1162
		local who = torso.Parent
1163
		local doAttack = false
1164
		Instance.AllChildren(who,function(v)
1165
			if(v.Name:lower():find"arm")then
1166
				doAttack = true
1167
			end
1168
		end, true)
1169
		if(not doAttack)then return end
1170
		Hum.WalkSpeed = 0
1171
		Hum.JumpPower = 0
1172
		Attack = true
1173
		NeutralAnims = false
1174
		who.Parent = Char
1175
		local oRoot
1176
		pcall(function() oRoot = who.HumanoidRootPart; oRoot.Parent = nil end)
1177
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.25)})
1178
		for i = 0, 4, 0.1 do
1179
			swait()
1180
			humanoid.PlatformStand = true
1181
			local Alpha = .15
1182
			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)
1183
			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)
1184
			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)
1185
			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)
1186
			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)
1187
			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)
1188
		end
1189
		local RABC = (who:FindFirstChild'Right Arm' or who:FindFirstChild'RightUpperArm' or who:FindFirstChild'RightLowerArm' or who:FindFirstChild'RightHand' or IN("Part")).BrickColor
1190
		local LABC = (who:FindFirstChild'Left Arm' or who:FindFirstChild'LeftUpperArm' or who:FindFirstChild'LeftLowerArm' or who:FindFirstChild'LeftHand' or IN("Part")).BrickColor
1191
		Sound(torso,1093102664,.85,5,false,true,true)
1192
		Sound(torso,429400881,1,1,false,true,true)
1193
		FRArm = NewInstance('Part',Effects,{Size=V3.N(1,2,1),BrickColor=RABC,Material='Plastic',CanCollide=false,Anchored=false,Locked=true})
1194
		Mesh(FRArm,Enum.MeshType.FileMesh,"rbxasset://fonts/rightarm.mesh","",V3.N(1,1,1),V3.N())
1195
		FLArm = NewInstance('Part',Effects,{Size=V3.N(1,2,1),BrickColor=LABC,Material='Plastic',CanCollide=false,Anchored=false,Locked=true})
1196
		Mesh(FLArm,Enum.MeshType.FileMesh,"rbxasset://fonts/leftarm.mesh","",V3.N(1,1,1),V3.N())		
1197
		FRArmW = NewInstance('Weld',FRArm,{Part0=RArm,Part1=FRArm,C0=CF.N(0,-1,0)*CF.A(M.R(90),0,0)})
1198
		FLArmW = NewInstance('Weld',FLArm,{Part0=LArm,Part1=FLArm,C0=CF.N(0,-1,0)*CF.A(M.R(90),0,0)})
1199
		Instance.AllChildren(who,function(v)
1200
			if(v.Name:lower():find"arm" or v.Name:lower():find"hand")then
1201
				v:destroy()
1202
			end
1203
		end, true)
1204
		if(not VoidSB)then
1205
			coroutine.wrap(function()
1206
				repeat swait() 
1207
				BloodDrop(torso.CFrame * CF.N(-.5,.5,0).p,torso.CFrame * CF.N(-1,.5,0).p,15)
1208
				BloodDrop(torso.CFrame * CF.N(.5,.5,0).p,torso.CFrame * CF.N(1,.5,0).p,15)
1209
				humanoid.Health = humanoid.Health - 0.5 until not who or not who.Parent or not humanoid.Parent
1210
				humanoid.Health = 0
1211
			end)()
1212
		else
1213
			coroutine.wrap(function()
1214
				repeat swait()  humanoid.Health = humanoid.Health - 0.5 until not who or not who.Parent or not humanoid.Parent
1215
				humanoid.Health = 0
1216
			end)()
1217
1218
			local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1219
			local prt2,prtcl2 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1220
			prt1.Parent = torso;
1221
			prt2.Parent = torso;
1222
			local prt1W = NewInstance('Weld',torso,{Part0=prt1,Part1=torso,C0=CF.N(0,-.5,-1.25)*CF.A(0,M.R(90),0)})
1223
			local prt2W = NewInstance('Weld',torso,{Part0=prt2,Part1=torso,C0=CF.N(0,-.5,-1.25)*CF.A(0,M.R(-90),0)})
1224
		end
1225
		
1226
		humanoid.Died:connect(function()
1227
			Ragdoll(who)
1228
		end)
1229
		who.Parent = workspace
1230
1231
		local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1232
		local prt2,prtcl2 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1233
		prt1.Parent = FRArm;
1234
		prt2.Parent = FLArm;
1235
		local prt1W = NewInstance('Weld',FRArm,{Part0=prt1,Part1=FRArm,C0=CF.N(0,0,0)*CF.A(0,M.R(90),0)})
1236
		local prt2W = NewInstance('Weld',FLArm,{Part0=prt2,Part1=FLArm,C0=CF.N(0,0,0)*CF.A(0,M.R(-90),0)})
1237
		gWeld:destroy()
1238
		humanoid.PlatformStand = false
1239
		if(oRoot)then
1240
			oRoot.Parent = who
1241
			if(who:FindFirstChild('RootJoint',true))then
1242
				oRoot.RootJoint.Part0 = oRoot
1243
				oRoot.RootJoint.Part1 = torso
1244
			else
1245
				humanoid:BuildRigFromAttachments()
1246
			end
1247
		end
1248
		
1249
		
1250
		for i = 0, 3, 0.1 do
1251
			swait()
1252
			local Alpha = .15
1253
			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)
1254
			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)
1255
			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)
1256
			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)
1257
			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)
1258
			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)
1259
		end
1260
		Hum.WalkSpeed = 16
1261
		Hum.JumpPower = 50
1262
		Attack = false
1263
		NeutralAnims = true
1264
	end
1265
end
1266
function ScrewMe()
1267
	Attack = true
1268
	NeutralAnims = false
1269
	for i = 0, 2, 0.1 do
1270
		swait()
1271
		local Alpha = .15
1272
		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)
1273
		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)
1274
		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)
1275
		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)
1276
		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)
1277
		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)
1278
	end
1279
	local screwdriver = Part(Char,BrickColor.new'Really blue',Enum.Material.SmoothPlastic,V3.N(2.158,0.29,0.312),RArm.CFrame,false,false)
1280
	local driverMesh = Mesh(screwdriver,Enum.MeshType.FileMesh,"rbxassetid://70265804","rbxassetid://70265794",V3.N(1,.5,.5),V3.N())
1281
	local driverWeld = NewInstance("Weld",Char,{Part0=LArm,Part1=screwdriver,C0=CF.N(0,-1.15,0)})
1282
	for i = 1, 3 do
1283
		for i = 0, 2, 0.1 do
1284
			swait()
1285
			local Alpha = .15
1286
			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)
1287
			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)
1288
			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)
1289
			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)
1290
			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)
1291
			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)
1292
			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)
1293
		end
1294
		for i = 0, 2, 0.1 do
1295
			swait()
1296
			local Alpha = .15
1297
			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)
1298
			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)
1299
			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)
1300
			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)
1301
			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)
1302
			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)
1303
			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)
1304
		end
1305
	end
1306
	for i = 0, 2, 0.1 do
1307
		swait()
1308
		local Alpha = .15
1309
		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)
1310
		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)
1311
		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)
1312
		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)
1313
		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)
1314
		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)
1315
	end
1316
	screwdriver:destroy()
1317
	Attack = false
1318
	NeutralAnims = true
1319
end
1320
function SliceYou()
1321
	Attack = true
1322
	NeutralAnims = false
1323
	local saw,weld = Equip_Sawblade()
1324
	for i = 0, 2, 0.1 do
1325
		swait()
1326
		local Alpha = .15
1327
		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)
1328
		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)
1329
		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)
1330
		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)
1331
		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)
1332
		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)
1333
	end
1334
	for i = 0, 3, 0.1 do
1335
		swait()
1336
		local Alpha = .3
1337
		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)
1338
		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)
1339
		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)
1340
		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)
1341
		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)
1342
		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)
1343
	end
1344
	local sound = Sound(Torso,367720620,false,false,false)
1345
	sound:Play()
1346
	for i = 0, 6, .1 do
1347
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(25)),.3)
1348
		swait()
1349
	end
1350
	for i = 0, 2, .1 do
1351
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(5)),.3)
1352
		swait()
1353
	end
1354
	sound:Play()
1355
	for i = 0, 1, .1 do
1356
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(25)),.3)
1357
		swait()
1358
	end
1359
	sound:Play()
1360
	for i = 0, 5, .1 do
1361
		weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(55)),.3)
1362
		swait()
1363
	end
1364
	for i = 1, 5 do
1365
		Effect{
1366
			Effect='Resize+AndFade',
1367
			Color = BrickColor.new'Toothpaste',
1368
			Material = Enum.Material.Neon,
1369
			Size=V3.N(3.5,3.5,3.5),
1370
			CFrame=saw.CFrame*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1371
			FXSettings={
1372
				EndSize=V3.N(.05,.05,.05),
1373
				EndIsIncrement=true,
1374
				
1375
			}
1376
		}
1377
	end
1378
	saw:destroy()
1379
	Attack = false
1380
	NeutralAnims = true
1381
end
1382
function Taunt()
1383
	local tauntFuncs = {SliceYou,ScrewMe}
1384
	local taunt = tauntFuncs[M.RNG(1,#tauntFuncs)]
1385
	taunt()
1386
end
1387
function Aids()
1388
	Music.Playing = false
1389
	local DabSounds = {420701444,420701460,420701487}
1390
	local DabSnd = Sound(Torso,DabSounds[M.RNG(1,#DabSounds)],1,5,false,false,false)
1391
	repeat swait() until DabSnd.IsLoaded
1392
	DabSnd:Play()
1393
	DabSnd.Ended:connect(function()DabSnd:destroy()end)
1394
	Attack = true
1395
	NeutralAnims = false
1396
	local a = 0
1397
	for i = 0, DabSnd.TimeLength * Frame_Speed/DabSnd.Pitch do
1398
		a = a + 1
1399
		swait()
1400
		local Alpha = .3
1401
		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)
1402
		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)
1403
		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)
1404
		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)
1405
		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)
1406
		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)
1407
	end
1408
	Music.Playing = true
1409
	Attack = false
1410
	NeutralAnims = true
1411
end
1412
1413
function OnceWas(who)
1414
	for _,v in next, who:children() do
1415
		if(v:IsA'BasePart')then
1416
			Effect{
1417
				Parent=Effects, 
1418
				Effect='Fade',
1419
				Color = BrickColor.new'Crimson',
1420
				Material = Enum.Material.Glass,
1421
				Size = v.Size,
1422
				CFrame=v.CFrame,
1423
				Frames = 90,
1424
			}
1425
		end
1426
	end
1427
end
1428
1429
function Teleport(where)
1430
	OnceWas(Char)
1431
	Sound(Root,235097614,3,1,false,true,true)
1432
	Sound(Root,75356820,2,1,false,true,true)
1433
	Root.CFrame = CF.N(where.p)
1434
	OnceWas(Char)
1435
end
1436
1437
function Dash()
1438
	Attack = true
1439
	Sound(Root,235097614,3,1,false,true,true)
1440
	Sound(Root,75356820,2,1,false,true,true)
1441
	for i = 1, 5 do
1442
		OnceWas(Char)
1443
		Root.CFrame = Root.CFrame*CF.N(0,0,-5)
1444
		swait()
1445
	end
1446
	Attack = false
1447
end
1448
1449
function Shriek()
1450
	Attack = true
1451
	NeutralAnims = false
1452
	local scream = Sound(Head,198165368,.5,10,false,false,false)
1453
	local i = 0
1454
	scream:Play()
1455
	while scream.Playing do
1456
		i = i + 1
1457
		swait()
1458
		coroutine.wrap(function()
1459
			AOEFunction(Head.Position,30,function(who)
1460
				local h,hd = who:FindFirstChildOfClass'Humanoid',who:FindFirstChild'Head'
1461
				if(h and hd and h.Health > 0)then
1462
					h.Health = 0
1463
					Sound(hd,429400881,1,1,false,true,true)
1464
					Ragdoll(who)
1465
					swait()
1466
					local frags = Fragment(hd)
1467
					for _,v in next, frags:children() do
1468
						v.BrickColor = BloodColor
1469
						v.Material = BloodMaterial
1470
						v.CanCollide = true
1471
						v.Anchored = false
1472
					end
1473
					hd:destroy()
1474
				end
1475
			end)
1476
		end)()
1477
		local Alpha = .15
1478
		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)
1479
		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)
1480
		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)
1481
		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)
1482
		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)
1483
		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)
1484
	end
1485
	Attack = false
1486
	NeutralAnims = true
1487
end
1488
1489
function SawMeDaddy()
1490
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1491
	if(torso)then
1492
		Attack = true
1493
		NeutralAnims = false
1494
		local who = torso.Parent
1495
		who.Parent = Char
1496
		Hum.WalkSpeed = 0
1497
		Hum.JumpPower = 0
1498
		humanoid.WalkSpeed = 0
1499
		humanoid.JumpPower = 0
1500
		local saw,weld = Equip_Sawblade()
1501
		pcall(function() who.HumanoidRootPart:destroy() end)
1502
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-3)*CF.A(0,M.R(180),0)})
1503
		for i = 0, 6, 0.1 do
1504
			swait()
1505
			weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(5)),.3)
1506
			local Alpha = .15
1507
			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)
1508
			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)
1509
			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)
1510
			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)
1511
			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)
1512
			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)
1513
		end
1514
		Sound(Torso,367720620,1,1,false,true,true)
1515
		coroutine.wrap(function()
1516
			repeat swait()
1517
				weld.C0 = weld.C0:lerp(weld.C0 * CF.A(0,0,M.R(45)),.3)
1518
			until not saw.Parent
1519
		end)()
1520
		swait(60)
1521
		local slicing = Sound(saw,1013673726,1,1,true,false,true)
1522
		Sound(torso,429400881,1,1,false,true,true)
1523
		local prt1,prtcl1 = Blood4(V3.N(.5,.5,.5),torso.CFrame)
1524
		prt1.Parent = torso;
1525
		local prt1W = NewInstance('Weld',torso,{Part0=prt1,Part1=torso,C0=CF.A(0,M.R(180),0)})
1526
		for i = 0, .3, 0.001 do
1527
			swait()
1528
			
1529
			humanoid.Health = humanoid.Health - .5
1530
			if(humanoid.Health <= 0)then
1531
				gWeld:destroy()
1532
				Sound(torso,429400881,1,1,false,true,true)
1533
				break
1534
			end
1535
			local Alpha = i
1536
			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)
1537
			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)
1538
			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)
1539
			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)
1540
			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)
1541
			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)
1542
		end
1543
		humanoid.Health = 0
1544
		who.Parent = workspace
1545
		Ragdoll(who)
1546
		slicing:destroy()
1547
		for i = 1, 5 do
1548
			Effect{
1549
				Effect='Resize+AndFade',
1550
				Color = BrickColor.new'Toothpaste',
1551
				Material = Enum.Material.Neon,
1552
				Size=V3.N(3.5,3.5,3.5),
1553
				CFrame=saw.CFrame*CF.A(M.RRNG(0,180),M.RRNG(0,180),M.RRNG(0,180)),
1554
				FXSettings={
1555
					EndSize=V3.N(.05,.05,.05),
1556
					EndIsIncrement=true,
1557
					
1558
				}
1559
			}
1560
		end
1561
		Hum.WalkSpeed = 16
1562
		Hum.JumpPower = 50
1563
		saw:destroy()
1564
		Attack = false
1565
		NeutralAnims = true
1566
	end
1567
end
1568
function The_End()
1569
	local humanoid, torso = ClosestHumanoid(Torso.CFrame.p,5)
1570
	
1571
	if(torso)then
1572
		Attack = true
1573
		NeutralAnims = false
1574
		local who = torso.Parent
1575
		Hum.WalkSpeed = 0
1576
		Hum.JumpPower = 0
1577
		humanoid.WalkSpeed = 0
1578
		humanoid.JumpPower = 0
1579
		who.Parent = Char
1580
		pcall(function() who.HumanoidRootPart:destroy() end)
1581
		local gWeld = NewInstance("Weld",Char,{Part0=Root,Part1=torso,C0=CF.N(0,0,-1.35)})
1582
		for i = 0, 2, 0.1 do
1583
			swait()
1584
			local Alpha = .3
1585
			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)
1586
			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)
1587
			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)
1588
			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)
1589
			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)
1590
			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)
1591
		end
1592
		Sound(Torso,200065377,1.3,4,false,true,true)
1593
		for i = 0, 1, 0.1 do
1594
			swait()
1595
			local Alpha = .2
1596
			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)
1597
			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)
1598
			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)
1599
			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)
1600
			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)
1601
			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)
1602
		end
1603
		gWeld:destroy()
1604
		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))})
1605
		for i = 0, 1, 0.1 do
1606
			swait()
1607
			local Alpha = .3
1608
			humanoid.PlatformStand = true
1609
			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)
1610
			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)
1611
			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)
1612
			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)
1613
			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)
1614
			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)
1615
		end
1616
		gWeld:destroy()
1617
		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))})
1618
		for i = 0, 6, 0.1 do
1619
			swait()
1620
			local Alpha = .3
1621
			humanoid.PlatformStand = true
1622
			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)
1623
			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)
1624
			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)
1625
			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)
1626
			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)
1627
			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)
1628
		end
1629
		Sound(torso,1093102664,.85,5,false,true,true)
1630
		Sound(torso,429400881,1,1,false,true,true)
1631
		gWeld:destroy()
1632
		Blood(torso.Size,torso.CFrame*CF.A(0,M.R(180),0),250)
1633
		humanoid.Health = 0
1634
		for _,v in next, who:children() do
1635
			if(v:IsA'LocalScript' or v:IsA'Script')then
1636
				v.Disabled = true
1637
				v:destroy()
1638
			end
1639
		end
1640
		Ragdoll(who,true)
1641
		
1642
	
1643
		if(not VoidSB)then
1644
			coroutine.wrap(function()
1645
				repeat swait()
1646
					BloodDrop(torso.CFrame * CF.N(0,-torso.Size.Y/2,0).p,(torso.CFrame * CF.N(0,-torso.Size.Y,0)).p,15)
1647
				until not who or not who.Parent
1648
			end)()
1649
			coroutine.wrap(function()
1650
				local LT = who:FindFirstChild'LowerTorso'
1651
				if(LT)then
1652
					repeat swait()
1653
						BloodDrop(LT.CFrame * CF.N(0,LT.Size.Y/2,0).p,(LT.CFrame * CF.N(0,LT.Size.Y,0)).p,15)
1654
					until not who or not who.Parent
1655
				end
1656
			end)()
1657
		end
1658
		
1659
		for i = 0, 1, 0.1 do
1660
			swait()
1661
			local Alpha = .3
1662
			humanoid.PlatformStand = true
1663
			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)
1664
			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)
1665
			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)
1666
			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)
1667
			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)
1668
			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)
1669
		end
1670
		for i = 0, 4, 0.1 do
1671
			swait()
1672
			local Alpha = .3
1673
			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)
1674
			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)
1675
			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)
1676
			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)
1677
			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)
1678
			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)
1679
		end
1680
		who.Parent = workspace
1681
		Attack = false
1682
		NeutralAnims = true
1683
		Hum.WalkSpeed = 16
1684
		Hum.JumpPower = 50
1685
	end
1686
end
1687
1688
function ThrowArms()
1689
	Attack = true
1690
	NeutralAnims = false
1691
	for i = 0, 3, 0.1 do
1692
		swait()
1693
		local Alpha = .15
1694
		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)
1695
		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)
1696
		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)
1697
		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)
1698
		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)
1699
		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)
1700
	end
1701
	Sound()
1702
	FLArmW:destroy()
1703
	FRArmW:destroy()
1704
	local BV1 = NewInstance("BodyVelocity", FRArm, {
1705
		velocity = Vector3.new(0, 10, 0) + Mouse.Hit.lookVector * 50,
1706
		P = 5000,
1707
		maxForce = Vector3.new(8000, 8000, 8000),
1708
	})
1709
	local BV2 = NewInstance("BodyVelocity", FLArm, {
1710
		velocity = Vector3.new(0, 10, 0) + Mouse.Hit.lookVector * 50,
1711
		P = 5000,
1712
		maxForce = Vector3.new(8000, 8000, 8000),
1713
	})
1714
	Sound(Torso,541909763,.8,5,false,true,true)
1715
	S.Debris:AddItem(BV1, 0.05)
1716
	S.Debris:AddItem(BV2, 0.05)
1717
	FRArm.CanCollide = true
1718
	FLArm.CanCollide = true
1719
	S.Debris:AddItem(FRArm, 5)
1720
	S.Debris:AddItem(FLArm, 5)
1721
	FRArm = nil
1722
	FLArm = nil
1723
	for i = 0, 1, 0.1 do
1724
		swait()
1725
		local Alpha = .3
1726
		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)
1727
		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)
1728
		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)
1729
		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)
1730
		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)
1731
		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)
1732
	end
1733
	Attack = false
1734
	NeutralAnims = true
1735
end
1736
Mouse.KeyDown:connect(function(k)
1737
	if(Attack)then return end
1738
	if(k == 'q')then Teleport(Mouse.Hit*CF.N(0,3.25,0)) end
1739
	if(k == 'e')then Dash() end
1740
	if(not FLArm and not FRArm)then
1741
		if(k == 'z')then The_Necc() end
1742
		if(k == 'x')then The_End() end
1743
		if(k == 'c')then Hands_Off() end
1744
		if(k == 'v')then SawMeDaddy() end
1745
		if(k == 'b')then Shriek() end
1746
		if(k == 't')then Taunt() end
1747
	end
1748
end)
1749
1750
Mouse.Button1Down:connect(function()
1751
	if(Attack)then return end
1752
	if(FLArm and FRArm)then
1753
		ThrowArms()
1754
	end
1755
end)
1756
Plr.Chatted:connect(function(m)
1757
	if(m == '/e aeiou')then Sound(Torso,221792881,1,5,false,true,true) end 
1758
	if(m == '/e earthquake')then Sound(Torso,1205111204,1,5,false,true,true) end 
1759
	if(Attack)then return end
1760
	if(m == '/e dab')then Aids() end
1761
end)
1762
1763
--// Wrap it all up \\--
1764
1765
while true do
1766
	swait()
1767
	if(not Music or not Music.Parent)then
1768
		local a = Music.TimePosition
1769
		Music = Sound(Char,MusicID,MusicPitch,2,true,false,true)
1770
		Music.Name = 'Music'
1771
		Music.TimePosition = a
1772
	end
1773
	if(Music.Volume ~= 2)then Music.Volume = 2 end
1774
	RArm.Transparency = 1
1775
	Sine = Sine + Change
1776
	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)
1777
	local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
1778
	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")
1779
	if(State == 'Walk')then
1780
		local wsVal = 7 / (Hum.WalkSpeed/16)
1781
		local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
1782
		--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)
1783
		--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)--
1784
		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)
1785
		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)	
1786
	else
1787
		RH.C1 = RH.C1:lerp(CF.N(0,1,0),.3)
1788
		LH.C1 = LH.C1:lerp(CF.N(0,1,0),.3)
1789
	end	
1790
	if(Idle > Frame_Speed*10)then
1791
		--idk i'll do something
1792
	end
1793
	if(NeutralAnims and not Attack and State == 'Idle')then
1794
		Idle = Idle + 1
1795
	else
1796
		Idle = 0
1797
	end
1798
	for v,_ in next, Stunned do
1799
		if(v.Parent)then
1800
			local h = v:FindFirstChildOfClass'Humanoid'
1801
			for _,c in next, v:children() do
1802
				if(c:IsA'Script' or c:IsA'LocalScript')then
1803
					c.Disabled = false
1804
				end
1805
			end
1806
			if(h)then
1807
				h.Name = 'no escape lol'
1808
				h.PlatformStand = true
1809
			else
1810
				Stunned[v] = nil
1811
			end
1812
		else
1813
			Stunned[v] = nil
1814
		end
1815
	end
1816
	if(NeutralAnims)then	
1817
		if(State == 'Idle')then
1818
			Change = 1
1819
			local Alpha = .3
1820
			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)
1821
			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)
1822
			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)
1823
			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)
1824
			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)
1825
			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)
1826
		elseif(State == 'Walk')then
1827
			local wsVal = 7 / (Hum.WalkSpeed/16)
1828
			local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
1829
			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)
1830
			RH.C0 = RH.C0:lerp(RHC0,Alpha)
1831
			LH.C0 = LH.C0:lerp(LHC0,Alpha)
1832
			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)
1833
			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)
1834
			NK.C0 = NK.C0:lerp(NKC0,Alpha)
1835
		elseif(State == 'Jump' or State == 'Fall')then
1836
			if(Walking)then
1837
				local Alpha = .2
1838
				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)
1839
				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)
1840
				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)
1841
				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)
1842
				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)
1843
				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)
1844
			else
1845
				local Alpha = .2
1846
				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)
1847
				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)
1848
				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)
1849
				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)
1850
				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)
1851
				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)			
1852
			end
1853
		elseif(State == 'Paralyzed')then
1854
			local Alpha = .3
1855
			RJ.C0 = RJ.C0:lerp(RJC0,Alpha)
1856
			RH.C0 = RH.C0:lerp(RHC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-10,10)),Alpha)
1857
			LH.C0 = LH.C0:lerp(LHC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-10,10)),Alpha)
1858
			RS.C0 = RS.C0:lerp(RSC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-5,15)),Alpha)
1859
			LS.C0 = LS.C0:lerp(LSC0*CF.A(M.RRNG(-10,10),M.RRNG(-10,10),M.RRNG(-15,5)),Alpha)
1860
			NK.C0 = NK.C0:lerp(NKC0,Alpha)
1861
		elseif(State == 'Sit')then
1862
			local Alpha = .3
1863
			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)
1864
			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)
1865
			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)
1866
			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)
1867
			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)
1868
			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)
1869
		end
1870
	end
1871
end