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