View difference between Paste ID: wAjY9FxA and cDXSrPAt
SHOW: | | - or go back to the newest paste.
1
--Enjoy Skiders
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("Made By TaiShi,Enjoy Skiders!")
7
    print("Version 3 FE Script")
8
	local rp = RealPlayer
9
	script.Parent = rp.Character
10
	
11
	--RemoteEvent for communicating
12
	local Event = Instance.new("RemoteEvent")
13
	Event.Name = "UserInput_Event"
14
15
	--Fake event to make stuff like Mouse.KeyDown work
16
	local function fakeEvent()
17
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
18
		t.connect = t.Connect
19
		return t
20
	end
21
22
	--Creating fake input objects with fake variables
23
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
24
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
25
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
26
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
27
	end}
28
	--Merged 2 functions into one by checking amount of arguments
29
	CAS.UnbindAction = CAS.BindAction
30
31
	--This function will trigger the events that have been :Connect()'ed
32
	local function te(self,ev,...)
33
		local t = m[ev]
34
		if t and t._fakeEvent then
35
			for _,f in pairs(t.Functions) do
36
				f(...)
37
			end
38
		end
39
	end
40
	m.TrigEvent = te
41
	UIS.TrigEvent = te
42
43
	Event.OnServerEvent:Connect(function(plr,io)
44
	    if plr~=rp then return end
45
		m.Target = io.Target
46
		m.Hit = io.Hit
47
		if not io.isMouse then
48
			local b = io.UserInputState == Enum.UserInputState.Begin
49
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
50
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
51
			end
52
			for _,t in pairs(CAS.Actions) do
53
				for _,k in pairs(t.Keys) do
54
					if k==io.KeyCode then
55
						t.Function(t.Name,io.UserInputState,io)
56
					end
57
				end
58
			end
59
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
60
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
61
	    end
62
	end)
63
	Event.Parent = NLS([==[
64
	local Player = game:GetService("Players").LocalPlayer
65
	local Event = script:WaitForChild("UserInput_Event")
66
67
	local Mouse = Player:GetMouse()
68
	local UIS = game:GetService("UserInputService")
69
	local input = function(io,a)
70
		if a then return end
71
		--Since InputObject is a client-side instance, we create and pass table instead
72
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
73
	end
74
	UIS.InputBegan:Connect(input)
75
	UIS.InputEnded:Connect(input)
76
77
	local h,t
78
	--Give the server mouse data 30 times every second, but only if the values changed
79
	--If player is not moving their mouse, client won't fire events
80
	while wait(1/30) do
81
		if h~=Mouse.Hit or t~=Mouse.Target then
82
			h,t=Mouse.Hit,Mouse.Target
83
			Event:FireServer({isMouse=true,Target=t,Hit=h})
84
		end
85
	end]==],Player.Character)
86
87
	----Sandboxed game object that allows the usage of client-side methods and services
88
	--Real game object
89
	local _rg = game
90
91
	--Metatable for fake service
92
	local fsmt = {
93
		__index = function(self,k)
94
			local s = rawget(self,"_RealService")
95
			if s then return s[k] end
96
		end,
97
		__newindex = function(self,k,v)
98
			local s = rawget(self,"_RealService")
99
			if s then s[k]=v end
100
		end,
101
		__call = function(self,...)
102
			local s = rawget(self,"_RealService")
103
			if s then return s(...) end
104
		end
105
	}
106
	local function FakeService(t,RealService)
107
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
108
		return setmetatable(t,fsmt)
109
	end
110
111
	--Fake game object
112
	local g = {
113
		GetService = function(self,s)
114
			return self[s]
115
		end,
116
		Players = FakeService({
117
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
118
		},"Players"),
119
		UserInputService = FakeService(UIS,"UserInputService"),
120
		ContextActionService = FakeService(CAS,"ContextActionService"),
121
	}
122
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
123
	g.service = g.GetService
124
	
125
	g.RunService = FakeService({
126
		RenderStepped = _rg:GetService("RunService").Heartbeat,
127
		BindToRenderStep = function(self,name,_,fun)
128
129
		end,
130
		UnbindFromRenderStep = function(self,name)
131
			self._btrs[name]:Disconnect()
132
		end,
133
	},"RunService")
134
135
	setmetatable(g,{
136
		__index=function(self,s)
137
			return _rg:GetService(s) or typeof(_rg[s])=="function"
138
			and function(_,...)return _rg[s](_rg,...)end or _rg[s]
139
		end,
140
		__newindex = fsmt.__newindex,
141
		__call = fsmt.__call
142
	})
143
	--Changing owner to fake player object to support owner:GetMouse()
144
	game,owner = g,g.Players.LocalPlayer
145
end
146
--//====================================================\\--
147
--||			   CREATED BY SHACKLUSTER
148
--\\====================================================//--
149
150
wait(0.2)
151
152
Player = owner
153
PlayerGui = Player.PlayerGui
154
Cam = workspace.CurrentCamera
155
Backpack = Player.Backpack
156
Character = Player.Character
157
Humanoid = Character.Humanoid
158
Mouse = Player:GetMouse()
159
RootPart = Character["HumanoidRootPart"]
160
Torso = Character["Torso"]
161
Head = Character["Head"]
162
RightArm = Character["Right Arm"]
163
LeftArm = Character["Left Arm"]
164
RightLeg = Character["Right Leg"]
165
LeftLeg = Character["Left Leg"]
166
RootJoint = RootPart["RootJoint"]
167
Neck = Torso["Neck"]
168
RightShoulder = Torso["Right Shoulder"]
169
LeftShoulder = Torso["Left Shoulder"]
170
RightHip = Torso["Right Hip"]
171
LeftHip = Torso["Left Hip"]
172
173
IT = Instance.new
174
CF = CFrame.new
175
VT = Vector3.new
176
RAD = math.rad
177
C3 = Color3.new
178
UD2 = UDim2.new
179
BRICKC = BrickColor.new
180
ANGLES = CFrame.Angles
181
EULER = CFrame.fromEulerAnglesXYZ
182
COS = math.cos
183
ACOS = math.acos
184
SIN = math.sin
185
ASIN = math.asin
186
ABS = math.abs
187
MRANDOM = math.random
188
FLOOR = math.floor
189
190
--//=================================\\
191
--|| 	      USEFUL VALUES
192
--\\=================================//
193
194
Animation_Speed = 3
195
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
196
local Speed = 12
197
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
198
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
199
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
200
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
201
local DAMAGEMULTIPLIER = 1
202
local ANIM = "Idle"
203
local ATTACK = false
204
local EQUIPPED = false
205
local HOLD = false
206
local COMBO = 1
207
local Rooted = false
208
local SINE = 0
209
local KEYHOLD = false
210
local CHANGE = 2 / Animation_Speed
211
local WALKINGANIM = false
212
local VALUE1 = false
213
local VALUE2 = false
214
local ROBLOXIDLEANIMATION = IT("Animation")
215
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
216
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
217
--ROBLOXIDLEANIMATION.Parent = Humanoid
218
local WEAPONGUI = IT("ScreenGui", PlayerGui)
219
WEAPONGUI.Name = "Weapon GUI"
220
local Weapon = IT("Model")
221
Weapon.Name = "Adds"
222
local Effects = IT("Folder", Weapon)
223
Effects.Name = "Effects"
224
local ANIMATOR = Humanoid.Animator
225
local ANIMATE = Character.Animate
226
local UNANCHOR = true
227
local PLAYANIMS = true
228
local CLOAKED = false
229
230
--//=================================\\
231
--\\=================================//
232
233
234
--//=================================\\
235
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
236
--\\=================================//
237
238
ArtificialHB = Instance.new("BindableEvent", script)
239
ArtificialHB.Name = "ArtificialHB"
240
241
script:WaitForChild("ArtificialHB")
242
243
frame = Frame_Speed
244
tf = 0
245
allowframeloss = false
246
tossremainder = false
247
lastframe = tick()
248
script.ArtificialHB:Fire()
249
250
game:GetService("RunService").Heartbeat:connect(function(s, p)
251
	tf = tf + s
252
	if tf >= frame then
253
		if allowframeloss then
254
			script.ArtificialHB:Fire()
255
			lastframe = tick()
256
		else
257
			for i = 1, math.floor(tf / frame) do
258
				script.ArtificialHB:Fire()
259
			end
260
		lastframe = tick()
261
		end
262
		if tossremainder then
263
			tf = 0
264
		else
265
			tf = tf - frame * math.floor(tf / frame)
266
		end
267
	end
268
end)
269
270
--//=================================\\
271
--\\=================================//
272
273
--//=================================\\
274
--|| 	      SOME FUNCTIONS
275
--\\=================================//
276
277
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
278
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
279
end
280
281
function PositiveAngle(NUMBER)
282
	if NUMBER >= 0 then
283
		NUMBER = 0
284
	end
285
	return NUMBER
286
end
287
288
function NegativeAngle(NUMBER)
289
	if NUMBER <= 0 then
290
		NUMBER = 0
291
	end
292
	return NUMBER
293
end
294
295
function Swait(NUMBER)
296
	if NUMBER == 0 or NUMBER == nil then
297
		ArtificialHB.Event:wait()
298
	else
299
		for i = 1, NUMBER do
300
			ArtificialHB.Event:wait()
301
		end
302
	end
303
end
304
305
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
306
	local NEWMESH = IT(MESH)
307
	if MESH == "SpecialMesh" then
308
		NEWMESH.MeshType = MESHTYPE
309
		if MESHID ~= "nil" and MESHID ~= "" then
310
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
311
		end
312
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
313
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
314
		end
315
	end
316
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
317
	NEWMESH.Scale = SCALE
318
	NEWMESH.Parent = PARENT
319
	return NEWMESH
320
end
321
322
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
323
	local NEWPART = IT("Part")
324
	NEWPART.formFactor = FORMFACTOR
325
	NEWPART.Reflectance = REFLECTANCE
326
	NEWPART.Transparency = TRANSPARENCY
327
	NEWPART.CanCollide = false
328
	NEWPART.Locked = true
329
	NEWPART.Anchored = true
330
	if ANCHOR == false then
331
		NEWPART.Anchored = false
332
	end
333
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
334
	NEWPART.Name = NAME
335
	NEWPART.Size = SIZE
336
	NEWPART.Position = Torso.Position
337
	NEWPART.Material = MATERIAL
338
	NEWPART:BreakJoints()
339
	NEWPART.Parent = PARENT
340
	return NEWPART
341
end
342
343
	local function weldBetween(a, b)
344
	    local weldd = Instance.new("ManualWeld")
345
	    weldd.Part0 = a
346
	    weldd.Part1 = b
347
	    weldd.C0 = CFrame.new()
348
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
349
	    weldd.Parent = a
350
	    return weldd
351
	end
352
353
354
function QuaternionFromCFrame(cf)
355
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
356
	local trace = m00 + m11 + m22
357
	if trace > 0 then 
358
		local s = math.sqrt(1 + trace)
359
		local recip = 0.5 / s
360
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
361
	else
362
		local i = 0
363
		if m11 > m00 then
364
			i = 1
365
		end
366
		if m22 > (i == 0 and m00 or m11) then
367
			i = 2
368
		end
369
		if i == 0 then
370
			local s = math.sqrt(m00 - m11 - m22 + 1)
371
			local recip = 0.5 / s
372
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
373
		elseif i == 1 then
374
			local s = math.sqrt(m11 - m22 - m00 + 1)
375
			local recip = 0.5 / s
376
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
377
		elseif i == 2 then
378
			local s = math.sqrt(m22 - m00 - m11 + 1)
379
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
380
		end
381
	end
382
end
383
 
384
function QuaternionToCFrame(px, py, pz, x, y, z, w)
385
	local xs, ys, zs = x + x, y + y, z + z
386
	local wx, wy, wz = w * xs, w * ys, w * zs
387
	local xx = x * xs
388
	local xy = x * ys
389
	local xz = x * zs
390
	local yy = y * ys
391
	local yz = y * zs
392
	local zz = z * zs
393
	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))
394
end
395
 
396
function QuaternionSlerp(a, b, t)
397
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
398
	local startInterp, finishInterp;
399
	if cosTheta >= 0.0001 then
400
		if (1 - cosTheta) > 0.0001 then
401
			local theta = ACOS(cosTheta)
402
			local invSinTheta = 1 / SIN(theta)
403
			startInterp = SIN((1 - t) * theta) * invSinTheta
404
			finishInterp = SIN(t * theta) * invSinTheta
405
		else
406
			startInterp = 1 - t
407
			finishInterp = t
408
		end
409
	else
410
		if (1 + cosTheta) > 0.0001 then
411
			local theta = ACOS(-cosTheta)
412
			local invSinTheta = 1 / SIN(theta)
413
			startInterp = SIN((t - 1) * theta) * invSinTheta
414
			finishInterp = SIN(t * theta) * invSinTheta
415
		else
416
			startInterp = t - 1
417
			finishInterp = t
418
		end
419
	end
420
	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
421
end
422
423
function Clerp(a, b, t)
424
	local qa = {QuaternionFromCFrame(a)}
425
	local qb = {QuaternionFromCFrame(b)}
426
	local ax, ay, az = a.x, a.y, a.z
427
	local bx, by, bz = b.x, b.y, b.z
428
	local _t = 1 - t
429
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
430
end
431
432
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
433
	local frame = IT("Frame")
434
	frame.BackgroundTransparency = TRANSPARENCY
435
	frame.BorderSizePixel = BORDERSIZEPIXEL
436
	frame.Position = POSITION
437
	frame.Size = SIZE
438
	frame.BackgroundColor3 = COLOR
439
	frame.BorderColor3 = BORDERCOLOR
440
	frame.Name = NAME
441
	frame.Parent = PARENT
442
	return frame
443
end
444
445
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
446
	local label = IT("TextLabel")
447
	label.BackgroundTransparency = 1
448
	label.Size = UD2(1, 0, 1, 0)
449
	label.Position = UD2(0, 0, 0, 0)
450
	label.TextColor3 = TEXTCOLOR
451
	label.TextStrokeTransparency = STROKETRANSPARENCY
452
	label.TextTransparency = TRANSPARENCY
453
	label.FontSize = TEXTFONTSIZE
454
	label.Font = TEXTFONT
455
	label.BorderSizePixel = BORDERSIZEPIXEL
456
	label.TextScaled = false
457
	label.Text = TEXT
458
	label.Name = NAME
459
	label.Parent = PARENT
460
	return label
461
end
462
463
function NoOutlines(PART)
464
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
465
end
466
467
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
468
	local NEWWELD = IT(TYPE)
469
	NEWWELD.Part0 = PART0
470
	NEWWELD.Part1 = PART1
471
	NEWWELD.C0 = C0
472
	NEWWELD.C1 = C1
473
	NEWWELD.Parent = PARENT
474
	return NEWWELD
475
end
476
477
local S = IT("Sound")
478
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
479
	local NEWSOUND = nil
480
	coroutine.resume(coroutine.create(function()
481
		NEWSOUND = S:Clone()
482
		NEWSOUND.Parent = PARENT
483
		NEWSOUND.Volume = VOLUME
484
		NEWSOUND.Pitch = PITCH
485
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
486
		NEWSOUND:play()
487
		if DOESLOOP == true then
488
			NEWSOUND.Looped = true
489
		else
490
			repeat wait(1) until NEWSOUND.Playing == false
491
			NEWSOUND:remove()
492
		end
493
	end))
494
	return NEWSOUND
495
end
496
497
function MakeForm(PART,TYPE)
498
	if TYPE == "Cyl" then
499
		local MSH = IT("CylinderMesh",PART)
500
	elseif TYPE == "Ball" then
501
		local MSH = IT("SpecialMesh",PART)
502
		MSH.MeshType = "Sphere"
503
	elseif TYPE == "Wedge" then
504
		local MSH = IT("SpecialMesh",PART)
505
		MSH.MeshType = "Wedge"
506
	end
507
end
508
509
function CFrameFromTopBack(at, top, back)
510
	local right = top:Cross(back)
511
	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)
512
end
513
514
function PuddleOfBlood(Position,MaxDrop,Model,MaxSize)
515
	local HITFLOOR, HITPOS, NORMAL = Raycast(Position, (CF(Position, Position + VT(0, -1, 0))).lookVector, MaxDrop, Model)
516
	if HITFLOOR ~= nil then
517
		if HITFLOOR.Parent ~= Weapon and HITFLOOR.Parent ~= Character then
518
			if HITFLOOR.Name == "BloodPuddle" then
519
				local DIST = (Position - HITFLOOR.Position).Magnitude
520
				if (HITFLOOR.Size.Z <= 5 and HITFLOOR.Size.Z < MaxSize) or (HITFLOOR.Size.Z > 5 and HITFLOOR.Size.Z < MaxSize and DIST < HITFLOOR.Size.Z/3) then
521
					HITFLOOR.Size = HITFLOOR.Size + VT(0.1,0,0.1)
522
				end
523
			else
524
				if HITFLOOR.Anchored == true then
525
					local BLOOD = CreatePart(3, Effects, "Glass", 0, 0, "Maroon", "BloodPuddle", VT(2,0,2))
526
					BLOOD.CFrame = CF(HITPOS,HITPOS+NORMAL)*ANGLES(RAD(90),RAD(0),RAD(0))
527
					MakeForm(BLOOD,"Cyl")
528
					coroutine.resume(coroutine.create(function()
529
						Swait(75)
530
						while true do
531
							Swait()
532
							BLOOD.Size = BLOOD.Size - VT(0.02,0,0.02)
533
							if BLOOD.Size.Z < 0.051 then
534
								BLOOD:remove()
535
								break
536
							end
537
						end
538
					end))
539
				end
540
			end
541
		end
542
	end
543
end
544
545
function SprayBlood(POSITION,DIRECTION,BloodSize)
546
	local BLOOD = CreatePart(3, Effects, "Glass", 0, 0, "Maroon", "BloodPuddle", VT(0.3,0.3,0.3),false)
547
	BLOOD.CFrame = CF(POSITION)
548
	MakeForm(BLOOD,"Ball")
549
	local bv = Instance.new("BodyVelocity",BLOOD) 
550
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
551
	bv.velocity = CF(POSITION,DIRECTION+VT(MRANDOM(-3,3)/30,MRANDOM(-3,3)/30,MRANDOM(-3,3)/30)).lookVector*75
552
	bv.Name = "MOVE"
553
	Debris:AddItem(bv,0.05)
554
	coroutine.resume(coroutine.create(function()
555
		local HASTOUCHEDGROUND = false
556
		local HIT = BLOOD.Touched:Connect(function(hit)
557
			if hit.Anchored == true then
558
				HASTOUCHEDGROUND = true
559
				PuddleOfBlood(BLOOD.Position+VT(0,1,0),2,BLOOD,BloodSize)
560
			end
561
		end)
562
		wait(5)
563
		if HASTOUCHEDGROUND == false then
564
			BLOOD:remove()
565
		end
566
	end))
567
end
568
569
Debris = game:GetService("Debris")
570
571
function CastProperRay(StartPos, EndPos, Distance, Ignore)
572
	local DIRECTION = CF(StartPos,EndPos).lookVector
573
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
574
end
575
576
function turnto(position)
577
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
578
end
579
580
function recurse(root,callback,i)
581
	i= i or 0
582
	for _,v in pairs(root:GetChildren()) do
583
		i = i + 1
584
		callback(i,v)
585
		
586
		if #v:GetChildren() > 0 then
587
			i = recurse(v,callback,i)
588
		end
589
	end
590
	
591
	return i
592
end
593
594
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
595
	attachmentName = attachmentName.."RigAttachment"
596
	local constraint = Instance.new(className.."Constraint")
597
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
598
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
599
	constraint.Name = "RagdollConstraint"..part1.Name
600
	
601
	for _,propertyData in next,properties or {} do
602
		constraint[propertyData[1]] = propertyData[2]
603
	end
604
	
605
	constraint.Parent = character
606
end
607
608
function getAttachment0(character, attachmentName)
609
	for _,child in next,character:GetChildren() do
610
		local attachment = child:FindFirstChild(attachmentName)
611
		if attachment then
612
			return attachment
613
		end
614
	end
615
end
616
617
function R15Ragdoll(character)
618
	recurse(character, function(_,v)
619
		if v:IsA("Attachment") then
620
			v.Axis = Vector3.new(0, 1, 0)
621
			v.SecondaryAxis = Vector3.new(0, 0, 1)
622
			v.Rotation = Vector3.new(0, 0, 0)
623
		end
624
	end)
625
	for _,child in next,character:GetChildren() do
626
		if child:IsA("Accoutrement") then
627
			for _,part in next,child:GetChildren() do
628
				if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
629
					local attachment1 = part:FindFirstChildOfClass("Attachment")
630
					local attachment0 = getAttachment0(character,attachment1.Name)
631
					if attachment0 and attachment1 then
632
						local constraint = Instance.new("HingeConstraint")
633
						constraint.Attachment0 = attachment0
634
						constraint.Attachment1 = attachment1
635
						constraint.LimitsEnabled = true
636
						constraint.UpperAngle = 0
637
						constraint.LowerAngle = 0
638
						constraint.Parent = character
639
					end
640
				elseif part.Name == "HumanoidRootPart" then
641
					part:remove()
642
				end
643
			end
644
		end
645
	end
646
	
647
	ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
648
		{"LimitsEnabled",true};
649
		{"UpperAngle",5};
650
	})
651
	ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
652
		{"LimitsEnabled",true};
653
		{"UpperAngle",15};
654
	})
655
	
656
	local handProperties = {
657
		{"LimitsEnabled", true};
658
		{"UpperAngle",0};
659
		{"LowerAngle",0};
660
	}
661
	ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
662
	ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
663
	
664
	local shinProperties = {
665
		{"LimitsEnabled", true};
666
		{"UpperAngle", 0};
667
		{"LowerAngle", -75};
668
	}
669
	ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
670
	ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
671
	
672
	local footProperties = {
673
		{"LimitsEnabled", true};
674
		{"UpperAngle", 15};
675
		{"LowerAngle", -45};
676
	}
677
	ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
678
	ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
679
	
680
	ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
681
	ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
682
	ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
683
	ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
684
	ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
685
	ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
686
end
687
688
function Ragdoll(Character2,CharTorso)
689
	Character2:BreakJoints()
690
	local hum = Character2:findFirstChild("Humanoid")
691
	hum:remove()
692
	local function Scan(ch)
693
		local e
694
		for e = 1,#ch do
695
			Scan(ch[e]:GetChildren())
696
			if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
697
				ch[e]:remove()
698
			end
699
		end
700
	end
701
	local NEWHUM = IT("Humanoid")
702
	NEWHUM.Name = "Corpse"
703
	NEWHUM.Health = 0
704
	NEWHUM.MaxHealth = 0
705
	NEWHUM.PlatformStand = true
706
	NEWHUM.Parent = Character2
707
	NEWHUM.DisplayDistanceType = "None"
708
709
	local ch = Character2:GetChildren()
710
	local i
711
	for i = 1,#ch do
712
		if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
713
			ch[i]:remove()
714
		end
715
	end
716
717
	local Torso2 = Character2.Torso
718
	local movevector = Vector3.new()
719
720
	if Torso2 then
721
		movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
722
		local Head = Character2:FindFirstChild("Head")
723
		if Head then
724
			local Neck = Instance.new("Weld")
725
			Neck.Name = "Neck"
726
			Neck.Part0 = Torso2
727
			Neck.Part1 = Head
728
			Neck.C0 = CFrame.new(0, 1.5, 0)
729
			Neck.C1 = CFrame.new()
730
			Neck.Parent = Torso2
731
732
		end
733
		local Limb = Character2:FindFirstChild("Right Arm")
734
		if Limb then
735
736
			Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
737
			local Joint = Instance.new("Glue")
738
			Joint.Name = "RightShoulder"
739
			Joint.Part0 = Torso2
740
			Joint.Part1 = Limb
741
			Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
742
			Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
743
			Joint.Parent = Torso2
744
745
			local B = Instance.new("Part")
746
			B.TopSurface = 0
747
			B.BottomSurface = 0
748
			B.formFactor = "Symmetric"
749
			B.Size = Vector3.new(1, 1, 1)
750
			B.Transparency = 1
751
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
752
			B.Parent = Character2
753
			local W = Instance.new("Weld")
754
			W.Part0 = Limb
755
			W.Part1 = B
756
			W.C0 = CFrame.new(0, -0.5, 0)
757
			W.Parent = Limb
758
759
		end
760
		local Limb = Character2:FindFirstChild("Left Arm")
761
		if Limb then
762
763
			Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
764
			local Joint = Instance.new("Glue")
765
			Joint.Name = "LeftShoulder"
766
			Joint.Part0 = Torso2
767
			Joint.Part1 = Limb
768
			Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
769
			Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
770
			Joint.Parent = Torso2
771
772
			local B = Instance.new("Part")
773
			B.TopSurface = 0
774
			B.BottomSurface = 0
775
			B.formFactor = "Symmetric"
776
			B.Size = Vector3.new(1, 1, 1)
777
			B.Transparency = 1
778
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
779
			B.Parent = Character2
780
			local W = Instance.new("Weld")
781
			W.Part0 = Limb
782
			W.Part1 = B
783
			W.C0 = CFrame.new(0, -0.5, 0)
784
			W.Parent = Limb
785
786
		end
787
		local Limb = Character2:FindFirstChild("Right Leg")
788
		if Limb then
789
790
			Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
791
			local Joint = Instance.new("Glue")
792
			Joint.Name = "RightHip"
793
			Joint.Part0 = Torso2
794
			Joint.Part1 = Limb
795
			Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
796
			Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
797
			Joint.Parent = Torso2
798
799
			local B = Instance.new("Part")
800
			B.TopSurface = 0
801
			B.BottomSurface = 0
802
			B.formFactor = "Symmetric"
803
			B.Size = Vector3.new(1, 1, 1)
804
			B.Transparency = 1
805
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
806
			B.Parent = Character2
807
			local W = Instance.new("Weld")
808
			W.Part0 = Limb
809
			W.Part1 = B
810
			W.C0 = CFrame.new(0, -0.5, 0)
811
			W.Parent = Limb
812
813
		end
814
		local Limb = Character2:FindFirstChild("Left Leg")
815
		if Limb then
816
817
			Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
818
			local Joint = Instance.new("Glue")
819
			Joint.Name = "LeftHip"
820
			Joint.Part0 = Torso2
821
			Joint.Part1 = Limb
822
			Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
823
			Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
824
			Joint.Parent = Torso2
825
826
			local B = Instance.new("Part")
827
			B.TopSurface = 0
828
			B.BottomSurface = 0
829
			B.formFactor = "Symmetric"
830
			B.Size = Vector3.new(1, 1, 1)
831
			B.Transparency = 1
832
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
833
			B.Parent = Character2
834
			local W = Instance.new("Weld")
835
			W.Part0 = Limb
836
			W.Part1 = B
837
			W.C0 = CFrame.new(0, -0.5, 0)
838
			W.Parent = Limb
839
840
		end
841
		--[
842
		local Bar = Instance.new("Part")
843
		Bar.TopSurface = 0
844
		Bar.BottomSurface = 0
845
		Bar.formFactor = "Symmetric"
846
		Bar.Size = Vector3.new(1, 1, 1)
847
		Bar.Transparency = 1
848
		Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
849
		Bar.Parent = Character2
850
		local Weld = Instance.new("Weld")
851
		Weld.Part0 = Torso2
852
		Weld.Part1 = Bar
853
		Weld.C0 = CFrame.new(0, 0.5, 0)
854
		Weld.Parent = Torso2
855
		--]]
856
	end
857
	Character2.Parent = workspace
858
	Debris:AddItem(Character2,5)
859
860
	return Character2,Torso2
861
end
862
863
for i,v in pairs(Character:children()) do
864
if v:IsA("Shirt") and v:IsA("Pants") and v:IsA("Hat") and v:IsA("Accessory") then
865
v:Remove()
866
end
867
end
868
shirt = Instance.new("Shirt", Character)
869
shirt.Name = "Shirt"
870
pants = Instance.new("Pants", Character)
871
pants.Name = "Pants"
872-
Character.Shirt.ShirtTemplate = "rbxassetid://244694291"
872+
Character.Shirt.ShirtTemplate = "rbxassetid://68450480"
873-
Character.Pants.PantsTemplate = "rbxassetid://206083170"
873+
Character.Pants.PantsTemplate = "rbxassetid://68450480"
874
875
local music = Instance.new("Sound", game.Players.LocalPlayer.Character)
876
music.SoundId = "rbxassetid://632132900"
877
music.Volume = 10
878
music:Play()
879
music.Looped = true
880
881-
Character.Head.face.Texture = "http://www.roblox.com/asset/?id=701379058"
881+
Character.Head.face.Texture = "http://www.roblox.com/asset/?id=404306534"
882
883
--//=================================\\
884
--||	     WEAPON CREATION
885
--\\=================================//
886
887
local Knife = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,1.2,0.2),false)
888
local Grip = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Knife, CF(0,-1.2, -0.5) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0.3, 0))
889
CreateMesh("SpecialMesh", Knife, "FileMesh", "470094777", "470149026", VT(0.2,0.2,0.2), VT(0,0,0))
890
local A = IT("Attachment",Knife)
891
A.Position = VT(-0, 0.2, 0.136)
892
local B = IT("Attachment",Knife)
893
B.Position = VT(-0, -0.95, -0.982)
894
local Trail = IT("Trail",Knife)
895
Trail.Attachment0 = B
896
Trail.Attachment1 = A
897
Trail.Lifetime = 0.1
898
Trail.Transparency = NumberSequence.new(0.5, 1)
899
Trail.Texture = "http://www.roblox.com/asset/?id=1472703539"
900
Trail.Enabled = true
901
Humanoid.DisplayDistanceType = "None"
902
Humanoid.MaxHealth = 9999999999999
903
Humanoid.Health = 9999999999999
904
905
local STEP = CreateSound(131436155, Torso, 3, 1, true)
906
STEP.Playing = false
907
STEP.Looped = false
908
local STEPPING = false
909
Humanoid.Running:Connect(function(speed)
910
	if STEPPING == false then
911
		STEPPING = true
912
		repeat
913
			local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
914
			wait(8/TORSOVELOCITY)
915
			local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
916
			if TORSOVELOCITY > 1 and Torso.Transparency ~= 1 and HITFLOOR ~= nil then
917
				STEP.Parent = Torso
918
				STEP.Pitch = MRANDOM(8,12)/10
919
				STEP:Play()
920
			end
921
		until TORSOVELOCITY < 0.6
922
		STEPPING = false
923
	end
924
end)
925
926
for _, c in pairs(Weapon:GetChildren()) do
927
	if c.ClassName == "Part" then
928
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
929
	end
930
end
931
932
local SKILLTEXTCOLOR = C3(0,0,0)
933
local SKILLFONT = "SciFi"
934
local SKILLTEXTSIZE = 7
935
936
Weapon.Parent = Character
937
938
Humanoid.Died:connect(function()
939
	ATTACK = true
940
end)
941
942
--//=================================\\
943
--||	     DAMAGE FUNCTIONS
944
--\\=================================//
945
946
function StatLabel(CFRAME, TEXT, COLOR)
947
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
948
	STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
949
	local BODYGYRO = IT("BodyGyro", STATPART)
950
	game:GetService("Debris"):AddItem(STATPART ,5)
951
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
952
	BILLBOARDGUI.Adornee = STATPART
953
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
954
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
955
	BILLBOARDGUI.AlwaysOnTop = false
956
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
957
	TEXTLABEL.BackgroundTransparency = 1
958
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
959
	TEXTLABEL.Text = TEXT
960
	TEXTLABEL.Font = SKILLFONT
961
	TEXTLABEL.FontSize="Size42"
962
	TEXTLABEL.TextColor3 = COLOR
963
	TEXTLABEL.TextStrokeTransparency = 0
964
	TEXTLABEL.TextScaled = true
965
	TEXTLABEL.TextWrapped = true
966
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
967
		for i = 1, 50 do
968
			Swait()
969
			STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
970
			TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
971
			TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
972
		end
973
		THEPART.Parent = nil
974
	end),STATPART, TEXTLABEL)
975
end
976
977
--//=================================\\
978
--||			DAMAGING
979
--\\=================================//
980
981
function ApplyDamage(Humanoid,Damage,TorsoPart)
982
	local defence = Instance.new("BoolValue",Humanoid.Parent)
983
	defence.Name = ("HitBy"..Player.Name)
984
	game:GetService("Debris"):AddItem(defence, 0.001)
985
	Damage = Damage * DAMAGEMULTIPLIER
986
	if Humanoid.Health ~= 0 then
987
		local CritChance = MRANDOM(1,100)
988
		if Damage > Humanoid.Health then
989
			Damage = math.ceil(Humanoid.Health)
990
			if Damage == 0 then
991
				Damage = 0.1
992
			end
993
		end
994
		Humanoid.Health = Humanoid.Health - Damage
995
		StatLabel(TorsoPart.CFrame * CF(0, 0 + (TorsoPart.Size.z - 1), 0), Damage, C3(0, 0, 0))
996
	end
997
end
998
999
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1000
	local CHILDREN = workspace:GetDescendants()
1001
	for index, CHILD in pairs(CHILDREN) do
1002
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1003
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1004
			if HUM then
1005
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1006
				if TORSO then
1007
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1008
						if INSTAKILL == true then
1009
							CHILD:BreakJoints()
1010
						else
1011
							local DMG = MRANDOM(MINDMG,MAXDMG)
1012
							ApplyDamage(HUM,DMG,TORSO)
1013
						end
1014
						if FLING > 0 then
1015
							for _, c in pairs(CHILD:GetChildren()) do
1016
								if c:IsA("BasePart") then
1017
									local bv = Instance.new("BodyVelocity") 
1018
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1019
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1020
									bv.Parent = c
1021
									Debris:AddItem(bv,0.05)
1022
								end
1023
							end
1024
						end
1025
					end
1026
				end
1027
			end
1028
		end
1029
	end
1030
end
1031
1032
--//=================================\\
1033
--||	ATTACK FUNCTIONS AND STUFF
1034
--\\=================================//
1035
1036
function Cloaked()
1037
	CLOAKED = true
1038
	Speed = 0
1039
	local POS = RootPart.Position
1040
	local DISTANCE = 99999
1041
	for i = 1, 15 do
1042
		wait()
1043
		for _, c in pairs(Character:GetChildren()) do
1044
			if c:IsA("BasePart") and c ~= RootPart then
1045
				c.Transparency = c.Transparency + 1/15
1046
			elseif c.ClassName == "Accessory" then
1047
				c.Handle.Transparency = c.Handle.Transparency + 1/15
1048
			end
1049
		end
1050
		Trail.Transparency = NumberSequence.new(0.5+((i/15)/2), 1)
1051
		Knife.Transparency = Knife.Transparency + 1/15
1052
	end
1053
	Speed = 5
1054
	repeat
1055
		wait()
1056
		DISTANCE = (RootPart.Position - POS).Magnitude
1057
	until DISTANCE > 45 or CLOAKED == false
1058
	Speed = 0
1059
	for i = 1, 15 do
1060
		wait()
1061
		for _, c in pairs(Character:GetChildren()) do
1062
			if c:IsA("BasePart") and c ~= RootPart then
1063
				c.Transparency = 1 - i/15
1064
			elseif c.ClassName == "Accessory" then
1065
				c.Handle.Transparency = 1 - i/15
1066
			end
1067
		end
1068
		Trail.Transparency = NumberSequence.new(1-((0.5/15)*i), 1)
1069
		Knife.Transparency = 1 - i/15
1070
	end
1071
	Speed = 12
1072
	CLOAKED = false
1073
end
1074
1075
Character["Body Colors"].HeadColor = BrickColor.new("Really black")
1076
Character["Body Colors"].TorsoColor = BrickColor.new("Really black")
1077
Character["Body Colors"].LeftArmColor = BrickColor.new("Really black")
1078
Character["Body Colors"].RightArmColor = BrickColor.new("Really black")
1079
Character["Body Colors"].LeftLegColor = BrickColor.new("Really black")
1080
Character["Body Colors"].RightLegColor = BrickColor.new("Really black")
1081
1082
function Attack()
1083
	PLAYANIMS = false
1084
	ATTACK = true
1085
	Rooted = false
1086
	local TARGET = nil
1087
	Knife.CanCollide = true
1088
	local HUMAN = nil
1089
	local TORSOPART = nil
1090
	local HIT = Knife.Touched:Connect(function(hit)
1091
		if hit.Parent:FindFirstChildOfClass("Humanoid") then
1092
			local HITBODY = hit.Parent
1093
			local HUM = hit.Parent:FindFirstChildOfClass("Humanoid")
1094
			local TORSO = HITBODY:FindFirstChild("Torso") or HITBODY:FindFirstChild("UpperTorso")
1095
			if TORSO and HUM.Health > 0 then
1096
				TARGET = HITBODY
1097
				TORSOPART = TORSO
1098
				HUMAN = HUM
1099
			end
1100
		end
1101
	end)
1102
	for i=0, 0.4, 0.1 / Animation_Speed do
1103
		Swait()
1104
		if TARGET then
1105
			break
1106
		end
1107
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
1108
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 1 / Animation_Speed)
1109
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1110
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1111
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1112
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1113
	end
1114
	CreateSound(143501853,Knife,2,MRANDOM(8,13)/10,false)
1115
	for i=0, 0.5, 0.1 / Animation_Speed do
1116
		Swait()
1117
		if TARGET then
1118
			break
1119
		end
1120
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1 / Animation_Speed)
1121
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), 1 / Animation_Speed)
1122
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.4) * ANGLES(RAD(90), RAD(0), RAD(35)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1123
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.3) * ANGLES(RAD(90), RAD(0), RAD(35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1124
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1125
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1126
	end
1127
	Knife.CanCollide = false
1128
	if TARGET then
1129
		CLOAKED = false
1130
		local DISPOSE = false
1131
		Rooted = true
1132
		coroutine.resume(coroutine.create(function()
1133
			repeat
1134
				Swait()
1135
				if TORSOPART then
1136
					TORSOPART.Anchored = true
1137
					TORSOPART.CFrame = RootPart.CFrame*CF(0,0,-2.2)
1138
				end
1139
			until DISPOSE == true
1140
			TORSOPART.Anchored = false
1141
		end))
1142
		for i=0, 0.5, 0.1 / Animation_Speed do
1143
			Swait()
1144
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
1145
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 1 / Animation_Speed)
1146
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.75, -1.3) * ANGLES(RAD(90), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1147
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1148
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1149
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1150
		end
1151
		CreateSound(28144268,Knife,2,MRANDOM(8,13)/10,false)
1152
		CreateSound(180083298,TORSOPART,5,MRANDOM(8,13)/10,false)
1153
		coroutine.resume(coroutine.create(function()
1154
			for i = 1, 750 do
1155
				Swait()
1156
				if HUMAN and TORSOPART then
1157
					if HUMAN.Health > 0 then
1158
						SprayBlood(TORSOPART.CFrame*CF(0,TORSOPART.Size.Y/2,-TORSOPART.Size.Z/2).p,TORSOPART.CFrame*CF(MRANDOM(-3,3)/15,TORSOPART.Size.Y+MRANDOM(-3,3)/35,-TORSOPART.Size.Z*MRANDOM(8,25)/10).p,MRANDOM(15,35)/10)
1159
						HUMAN.Health = HUMAN.Health - 1
1160
						HUMAN.WalkSpeed = MRANDOM(5,45)
1161
					else
1162
						break
1163
					end
1164
				else
1165
					break
1166
				end
1167
			end
1168
			local SCREAMS = {160718677,337800380}
1169
			if HUMAN and TORSOPART then
1170
				if HUMAN.Health == 0 then
1171
					local HEAD = TORSOPART.Parent:FindFirstChild("Head")
1172
					if HEAD then
1173
						CreateSound(SCREAMS[MRANDOM(1,#SCREAMS)],HEAD,5,MRANDOM(13,15)/10,false)
1174
						local FACE = HEAD:FindFirstChild("face")
1175
						if FACE then
1176-
							FACE.Texture = "http://www.roblox.com/asset/?id=145854465"
1176+
							FACE.Texture = "http://www.roblox.com/asset/?id=404306534"
1177
						end
1178
					end
1179
					if TORSOPART.Name == "Torso" then
1180
						Ragdoll(TORSOPART.Parent,Torso)
1181
					elseif TORSOPART.Name == "UpperTorso" then
1182
						R15Ragdoll(TORSOPART.Parent)
1183
					end
1184
				end
1185
				HUMAN.WalkSpeed = 16
1186
			end
1187
		end))
1188
		for i=0, 0.2, 0.1 / Animation_Speed do
1189
			Swait()
1190
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
1191
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 1 / Animation_Speed)
1192
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(2, 0.75, -1.3) * ANGLES(RAD(90), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1193
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1194
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1195
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1196
		end
1197
		DISPOSE = true
1198
		local bv = Instance.new("BodyVelocity") 
1199
		bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1200
		bv.velocity = CF(TORSOPART.Position,TORSOPART.CFrame*CF(0,5,-15).p).lookVector*75
1201
		bv.Parent = TORSOPART
1202
		Debris:AddItem(bv,0.05)
1203
		for i=0, 0.5, 0.1 / Animation_Speed do
1204
			Swait()
1205
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 1 / Animation_Speed)
1206
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(35)), 1 / Animation_Speed)
1207
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1208
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1209
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(110), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1210
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1211
		end
1212
	end
1213
	HIT:disconnect()
1214
	ATTACK = false
1215
	Rooted = false
1216
	PLAYANIMS = true
1217
end
1218
1219
function Taunt()
1220
	ATTACK = true
1221
	Rooted = true
1222
	PLAYANIMS = false
1223
	CreateSound(135017578,Torso,5,MRANDOM(8,9)/10,false)
1224
	for i=0, 1, 0.1 / Animation_Speed do
1225
		Swait()
1226
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.8) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1227
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1228
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0, -0.5) * ANGLES(RAD(15), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1229
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0, -0.5) * ANGLES(RAD(15), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1230
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(25), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1231
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-45), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1232
	end
1233
	PLAYANIMS = true
1234
	ATTACK = false
1235
	Rooted = false
1236
end
1237
1238
CV="Maroon"
1239
    Player = game.Players.LocalPlayer
1240
    Character = Player.Character
1241
    local txt = Instance.new("BillboardGui", Character)
1242
    txt.Adornee = Character .Head
1243
    txt.Name = "_status"
1244
    txt.Size = UDim2.new(2, 0, 1.2, 0)
1245
    txt.StudsOffset = Vector3.new(-9, 8, 0)
1246
    local text = Instance.new("TextLabel", txt)
1247
    text.Size = UDim2.new(10, 0, 7, 0)
1248
    text.FontSize = "Size24"
1249
    text.TextScaled = true
1250
    text.TextTransparency = 0
1251
    text.BackgroundTransparency = 1
1252
    text.TextTransparency = 0
1253
    text.TextStrokeTransparency = 0
1254
    text.Font = "Bodoni"
1255
    text.TextStrokeColor3 = Color3.new(255,0,0)
1256
 
1257
    v=Instance.new("Part")
1258
    v.Name = "ColorBrick"
1259
    v.Parent=Player.Character
1260
    v.FormFactor="Symmetric"
1261
    v.Anchored=true
1262
    v.CanCollide=false
1263
    v.BottomSurface="Smooth"
1264
    v.TopSurface="Smooth"
1265
    v.Size=Vector3.new(3,3,3)
1266
    v.Transparency=1
1267
    v.CFrame=Character.Torso.CFrame
1268
    v.BrickColor=BrickColor.new(CV)
1269
    v.Transparency=1
1270
    text.TextColor3 = Color3.new(0,0,0)
1271
    v.Shape="Block"
1272-
    text.Text = "SAUCE Murderer"
1272+
    text.Text = "MICHEAL THE ULTIMATE MURDER"
1273
-------------------------------------
1274
1275
local Hair2 = Instance.new("Part", Character)
1276
Hair2.Name = "Hair2"
1277
Hair2.CanCollide = false
1278
Hair2.BrickColor = BrickColor.new("Institutional white")
1279
Hair2.Transparency = 0
1280
Hair2.Material = "Plastic"
1281
Hair2.Size = Vector3.new(1, 1, 2)
1282
Hair2.TopSurface = Enum.SurfaceType.Smooth
1283
Hair2.BottomSurface = Enum.SurfaceType.Smooth
1284
 
1285
local Weld = Instance.new("Weld", Hair2)
1286
Weld.Part0 = Head
1287
Weld.Part1 = Hair2
1288
Weld.C1 = CFrame.new(0, -.6, 0)
1289
Weld.C0 = CFrame.Angles(math.rad(0),math.rad(0),0)
1290
 
1291
local M2 = Instance.new("SpecialMesh")
1292
M2.Parent = Hair2
1293
M2.MeshId = "http://www.roblox.com/asset/?id=346578029"
1294
M2.TextureId = "http://www.roblox.com/asset/?id=82907376"
1295
M2.Scale = Vector3.new(1, 1, 1)
1296
1297
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
1298
local acs = Instance.new("Part")
1299
acs.CanCollide = false
1300
acs.Anchored = false
1301
acs.Size = Vector3.new(0,0,0)
1302
acs.CFrame = attachmentpart.CFrame
1303
acs.Parent = Character
1304
acs.BrickColor = color
1305
    local meshs = Instance.new("SpecialMesh")
1306
    meshs.MeshId = mesh
1307
    meshs.TextureId = texture
1308
    meshs.Parent = acs
1309
    meshs.Scale = scale
1310
    meshs.Offset = offset
1311
weldBetween(attachmentpart,acs)
1312
end
1313
1314
createaccessory(Head,"http://www.roblox.com/asset/?id=210118899","",VT(1, 1, 1),VT(0, 0.25, 0.1),BrickColor.new"Really black")
1315
1316
--//=================================\\
1317
--||	  ASSIGN THINGS TO KEYS
1318
--\\=================================//
1319
1320
function MouseDown(Mouse)
1321
	HOLD = true
1322
	if ATTACK == false then
1323
		Attack()
1324
	end
1325
end
1326
1327
function MouseUp(Mouse)
1328
HOLD = false
1329
end
1330
1331
function KeyDown(Key)
1332
	KEYHOLD = true
1333
	if Key == "z" and ATTACK == false then
1334
		if CLOAKED == false then
1335
			Cloaked()
1336
		else
1337
			CLOAKED = false
1338
		end
1339
	end
1340
1341
	if Key == "t" and ATTACK == false then
1342
		Taunt()
1343
	end
1344
1345
	if string.byte(Key) == 50 and ATTACK == false and CLOAKED == false then
1346
		if Speed == 12 then
1347
			Speed = 30
1348
		elseif Speed == 30 then
1349
			Speed = 14
1350
		end
1351
	end
1352
end
1353
1354
function KeyUp(Key)
1355
	KEYHOLD = false
1356
end
1357
1358
	Mouse.Button1Down:connect(function(NEWKEY)
1359
		MouseDown(NEWKEY)
1360
	end)
1361
	Mouse.Button1Up:connect(function(NEWKEY)
1362
		MouseUp(NEWKEY)
1363
	end)
1364
	Mouse.KeyDown:connect(function(NEWKEY)
1365
		KeyDown(NEWKEY)
1366
	end)
1367
	Mouse.KeyUp:connect(function(NEWKEY)
1368
		KeyUp(NEWKEY)
1369
	end)
1370
1371
--//=================================\\
1372
--\\=================================//
1373
1374
function unanchor()
1375
	if UNANCHOR == true then
1376
		g = Character:GetChildren()
1377
		for i = 1, #g do
1378
			if g[i].ClassName == "Part" then
1379
				g[i].Anchored = false
1380
			end
1381
		end
1382
	end
1383
end
1384
1385
--//=================================\\
1386
--||	WRAP THE WHOLE SCRIPT UP
1387
--\\=================================//
1388
Player_Size = 1
1389
1390
Humanoid.Changed:connect(function(Jump)
1391
    if Jump == "Jump" and (Disable_Jump == true) then
1392
        Humanoid.Jump = false
1393
    end
1394
end)
1395
 
1396
while true do
1397
    Swait()
1398
    script.Parent = WEAPONGUI
1399
    ANIMATE.Parent = nil
1400
    for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1401
        v:Stop();
1402
    end
1403
    SINE = SINE + CHANGE
1404
    local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1405
    local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1406
    local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1407
    local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1408
    if ANIM == "Walk" and TORSOVELOCITY > 1 then
1409
        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)
1410
        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)
1411
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.3 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1412
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.3 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1413
    elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1414
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1415
        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)
1416
        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)
1417
        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)
1418
    end
1419
    if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1420
        ANIM = "Jump"
1421
        if PLAYANIMS == true then
1422
                    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1423
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1424
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1425
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1426
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1427
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1428
        end
1429
    elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1430
        ANIM = "Fall"
1431
        if PLAYANIMS == true then
1432
                    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1433
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1434
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1435
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1436
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1437
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1438
        end
1439
    elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1440
        ANIM = "Idle"
1441
        if PLAYANIMS == true then
1442
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.1, -0.1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1443
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1444
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1445
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.35, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1446
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(20), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1447
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1448
        end
1449
    elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1450
        ANIM = "Walk"
1451
        if PLAYANIMS == true then
1452
            if Humanoid.WalkSpeed <= 17 then
1453
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1454
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1455
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1456
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
1457
                    RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1458
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1459
            else
1460
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(35), RAD(0), RAD(5 * SIN(SINE / (WALKSPEEDVALUE / 2)))), 0.15 / Animation_Speed)
1461
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(-5 * SIN(SINE / (WALKSPEEDVALUE / 2)))), 0.15 / Animation_Speed)
1462
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(35), RAD(0)) * ANGLES(RAD(35+20 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1463
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(-35), RAD(0)) * ANGLES(RAD(35-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1464
                RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(5)), 2 / Animation_Speed)
1465
                LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-5)), 2 / Animation_Speed)
1466
            end
1467
        end
1468
    end
1469
    unanchor()
1470
    if Rooted == false then
1471
        Disable_Jump = false
1472
        Humanoid.WalkSpeed = Speed
1473
    elseif Rooted == true then
1474
        Disable_Jump = true
1475
        Humanoid.WalkSpeed = 0
1476
    end
1477
    if Head:FindFirstChildOfClass("Sound") then
1478
        Head:FindFirstChildOfClass("Sound"):remove()
1479
    end
1480
    Humanoid.Health = Humanoid.Health + 1
1481
end
1482
1483
 
1484
1485
--//=================================\\
1486
--\\=================================//
1487
1488
1489
1490
1491
1492
--//====================================================\\--
1493
--||			  		 END OF SCRIPT
1494
--\\====================================================//--