Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- plr = owner
- char = plr.Character
- hum = char.Humanoid
- hp = hum.Health
- tors = char.Torso
- ra = char["Right Arm"]
- la = char["Left Arm"]
- rs = tors["Right Shoulder"]
- ls = tors["Left Shoulder"]
- rsnor = rs.C0
- rsnor2 = rs.C1
- lsnor = ls.C0
- lsnor2 = ls.C1
- SKM = "rbxassetid://448822064"
- SKT = "rbxassetid://448822109"
- SNM = "rbxassetid://442476524"
- SNT = "rbxassetid://442476528"
- function ragdoll(model, ragdolltime)
- local torso = model:FindFirstChild("Torso") or model:FindFirstChild("UpperTorso")
- for i,v in pairs (model:GetDescendants()) do
- if v:IsA("Motor") and not model:FindFirstChild("ragged") or v:IsA("Motor6D") and not model:FindFirstChild("ragged") then
- if v.Name == "Right Shoulder" then
- old = v.Parent
- local glue = Instance.new("Glue",old)
- glue.Part0 = v.Part0
- glue.Part1 = v.Part1
- glue.C0 = v.C0
- glue.C1 = v.C1
- v.Parent = nil
- game.Debris:AddItem(glue, ragdolltime)
- if model:FindFirstChild("Right Arm") then
- local ack = model["Right Arm"]
- local hitbox = ack:Clone()
- hitbox.Parent = ack
- hitbox.Size = ack.Size
- hitbox.Transparency = 1
- hitbox.CanCollide = true
- hitbox.Anchored = false
- ezweld(hitbox, hitbox, ack, CFrame.new())
- game.Debris:AddItem(hitbox, ragdolltime)
- end
- coroutine.resume(coroutine.create(function()
- wait(ragdolltime)
- v.Parent = old
- end))
- end
- if v.Name == "Left Shoulder" then
- old = v.Parent
- local glue = Instance.new("Glue",old)
- glue.Part0 = v.Part0
- glue.Part1 = v.Part1
- glue.C0 = v.C0
- glue.C1 = v.C1
- v.Parent = nil
- game.Debris:AddItem(glue, ragdolltime)
- if model:FindFirstChild("Left Arm") then
- local ack = model["Left Arm"]
- local hitbox = ack:Clone()
- hitbox.Parent = ack
- hitbox.Size = ack.Size
- hitbox.Transparency = 1
- hitbox.CanCollide = true
- hitbox.Anchored = false
- ezweld(hitbox, hitbox, ack, CFrame.new())
- game.Debris:AddItem(hitbox, ragdolltime)
- end
- coroutine.resume(coroutine.create(function()
- wait(ragdolltime)
- v.Parent = old
- end))
- end
- if v.Name == "Right Hip" then
- old = v.Parent
- local glue = Instance.new("Glue",old)
- glue.Part0 = v.Part0
- glue.Part1 = v.Part1
- glue.C0 = v.C0
- glue.C1 = v.C1
- v.Parent = nil
- game.Debris:AddItem(glue, ragdolltime)
- if model:FindFirstChild("Right Leg") then
- local ack = model["Right Leg"]
- local hitbox = ack:Clone()
- hitbox.Parent = ack
- hitbox.Size = ack.Size
- hitbox.Transparency = 1
- hitbox.CanCollide = true
- hitbox.Anchored = false
- ezweld(hitbox, hitbox, ack, CFrame.new())
- game.Debris:AddItem(hitbox, ragdolltime)
- end
- coroutine.resume(coroutine.create(function()
- wait(ragdolltime)
- v.Parent = old
- end))
- end
- if v.Name == "Left Hip" then
- old = v.Parent
- local glue = Instance.new("Glue",old)
- glue.Part0 = v.Part0
- glue.Part1 = v.Part1
- glue.C0 = v.C0
- glue.C1 = v.C1
- v.Parent = nil
- game.Debris:AddItem(glue, ragdolltime)
- if model:FindFirstChild("Left Leg") then
- local ack = model["Left Leg"]
- local hitbox = ack:Clone()
- hitbox.Parent = ack
- hitbox.Size = ack.Size
- hitbox.Transparency = 1
- hitbox.CanCollide = true
- hitbox.Anchored = false
- ezweld(hitbox, hitbox, ack, CFrame.new())
- game.Debris:AddItem(hitbox, ragdolltime)
- end
- coroutine.resume(coroutine.create(function()
- wait(ragdolltime)
- v.Parent = old
- end))
- end
- end
- if v:IsA("Humanoid") and not model:FindFirstChild("ragged") then
- v.PlatformStand = true
- coroutine.resume(coroutine.create(function()
- wait(ragdolltime)
- v.PlatformStand = false
- end))
- end
- if v:IsA("Part") and v.Name == "Torso" and not model:FindFirstChild("ragged") then
- local a = 120
- local bv = Instance.new("BodyVelocity",v)
- bv.Velocity = Vector3.new(math.random(-a, a), math.random(-a, a), math.random(-a, a))
- --bv.Velocity = v.CFrame.lookVector * 400
- game.Debris:AddItem(bv, .1)
- end
- end
- local ragged = Instance.new("NumberValue",model)
- ragged.Name = "ragged"
- game.Debris:AddItem(ragged, ragdolltime)
- end
- function checkifback(nTorso)
- local offSet=nTorso.CFrame:toObjectSpace(tors.CFrame)
- if offSet.z>0 then
- if nTorso.Parent:FindFirstChildOfClass("Humanoid") then
- local hum = nTorso.Parent:FindFirstChildOfClass("Humanoid")
- hum.BreakJointsOnDeath = false
- Swait()
- end
- if nTorso.Parent.ClassName == "Model" then
- nTorso.Parent:BreakJoints()
- end
- ragdoll(nTorso.Parent, 999999999999999999999999999999999)
- local ch = Instance.new("Sound",tors) ch.SoundId = "rbxassetid://296102734" ch.Volume = 3 ch:Play()
- end
- end
- function critkill(nTorso)
- if nTorso.Parent:FindFirstChildOfClass("Humanoid") then
- local hum = nTorso.Parent:FindFirstChildOfClass("Humanoid")
- hum.BreakJointsOnDeath = false
- Swait()
- end
- if nTorso.Parent.ClassName == "Model" then
- nTorso.Parent:BreakJoints()
- end
- ragdoll(nTorso.Parent, 999999999999999999999999999999999)
- local ch = Instance.new("Sound",tors) ch.SoundId = "rbxassetid://296102734" ch.Volume = 3 ch:Play()
- end
- ezweld = function(p, a, b, cf)
- local weld = Instance.new("Weld",p)
- weld.Part0 = a
- weld.Part1 = b
- weld.C0 = cf
- return weld
- end
- Swait = function(number)
- if number == 0 or number == nil then
- game:GetService("RunService").Heartbeat:Wait()
- else
- for i = 1,number do
- game:GetService("RunService").Heartbeat:Wait()
- end
- end
- end
- local MouseLoc = Instance.new("RemoteFunction",char)
- MouseLoc.Name = "MouseLoc"
- local Client = NLS([[
- local char = script.Parent
- script.Name = "Client"
- local MouseLoc = char:WaitForChild("MouseLoc",10)
- function MouseLoc.OnClientInvoke()
- return game:GetService("Players").LocalPlayer:GetMouse().Hit.p
- end
- ]],char)
- local Target = Instance.new("RemoteFunction",char)
- Target.Name = "Target"
- local Client2 = NLS([[
- local char = script.Parent
- script.Name = "Client2"
- local MouseLoc = char:WaitForChild("Target",10)
- function MouseLoc.OnClientInvoke()
- return game:GetService("Players").LocalPlayer:GetMouse().Target
- end
- ]],char)
- local spyk = Instance.new("Tool",plr.Backpack)
- spyk.Name = "spy's knife"
- spyk.GripForward = Vector3.new(-0, -0.094, 0.996)
- spyk.GripPos = Vector3.new(-0.139, -0.462, -0.398)
- spyk.GripRight = Vector3.new(-1, 0, -0)
- spyk.GripUp = Vector3.new(0, 0.996, 0.094)
- local khandle = Instance.new("Part",spyk)
- khandle.Name = "Handle"
- khandle.Size = Vector3.new(0.25, 2.75, 1.75)
- khandle.CanCollide = false
- local kmesh = Instance.new("SpecialMesh",khandle)
- kmesh.MeshId = SKM
- kmesh.TextureId = SKT
- kmesh.Scale = Vector3.new(0.0025, 0.0025, 0.0025)
- local kraw = ezweld(nil, tors, ra, rsnor * CFrame.Angles(0, 0, 0))
- kraw.C1 = rsnor2
- if char:FindFirstChild("Animate") then
- local ranim = char.Animate
- if ranim:FindFirstChild("toolnone") then
- ranim.toolnone:remove()
- end
- end
- spyk.Equipped:connect(function()
- kraw.Parent = char
- for i = 1,9 do
- Swait()
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(65)), 0.3)
- end
- end)
- spyk.Unequipped:connect(function()
- kanim = 0
- kraw.Parent = char
- for i = 1,9 do
- Swait()
- kraw.C0 = kraw.C0:Lerp(rsnor, 0.3)
- end
- kraw.Parent = nil
- end)
- local sniper = Instance.new("Tool",plr.Backpack)
- sniper.Name = "sniper's sniper"
- sniper.GripForward = Vector3.new(0.996, 0.025, 0.91)
- sniper.GripPos = Vector3.new(-0.189, -0.379, -0.18)
- sniper.GripRight = Vector3.new(-0.09, -0.018, 0.996)
- sniper.GripUp = Vector3.new(-0.026, 1, 0.016)
- local shandle = Instance.new("Part",sniper)
- shandle.Name = "Handle"
- shandle.Size = Vector3.new(0.25, 2.75, 1.75)
- shandle.CanCollide = false
- local smesh = Instance.new("SpecialMesh",shandle)
- smesh.MeshId = SNM
- smesh.TextureId = SNT
- smesh.Scale = Vector3.new(5, 5, 5)
- smesh.Offset = Vector3.new(0.25, 0.25, 0)
- local sraw = ezweld(nil, tors, ra, rsnor * CFrame.Angles(0, 0, 0))
- sraw.C1 = rsnor2
- local slaw = ezweld(nil, tors, la, lsnor * CFrame.Angles(0, 0, 0))
- slaw.C1 = lsnor2
- sniper.Equipped:connect(function()
- sraw.Parent = char
- slaw.Parent = char
- for i = 1,9 do
- Swait()
- sraw.C0 = sraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(90)), 0.3)
- slaw.C0 = slaw.C0:Lerp(lsnor * CFrame.new(0, 0, -0.5) * CFrame.Angles(0, math.rad(-65), math.rad(-90)), 0.3)
- end
- end)
- sniper.Unequipped:connect(function()
- sraw.Parent = char
- slaw.Parent = char
- for i = 1,9 do
- Swait()
- sraw.C0 = sraw.C0:Lerp(rsnor, 0.3)
- slaw.C0 = slaw.C0:Lerp(lsnor, 0.3)
- end
- slaw.Parent = nil
- sraw.Parent = nil
- end)
- function AttachmentCFrame(A)
- return A.Parent.CFrame*CFrame.new(A.Position)
- end
- local snipen = Instance.new("Attachment",shandle)
- snipen.Position = Vector3.new(2.5, -0.5, 0)
- snipen.Name = "Nuzzle"
- sniper.Activated:connect(function()
- local targetPos = MouseLoc:InvokeClient(plr)
- local DIST = (shandle.Position - targetPos).Magnitude
- local bullet = Instance.new("Part",hum)
- bullet.Anchored = true
- bullet.CanCollide = false
- bullet.BrickColor = BrickColor.new("Bright yellow")
- bullet.Transparency = 0.25
- bullet.Material = "Neon"
- bullet.CFrame = CFrame.new(AttachmentCFrame(shandle.Nuzzle).p, targetPos) * CFrame.new(0, 0, -DIST/2)
- bullet.Size = Vector3.new(0.1, 0.1, DIST)
- local target = Target:InvokeClient(plr).Parent
- if target and target ~= workspace and target ~= char then
- for i,v in pairs (target:children()) do
- if v:IsA("Humanoid") then
- v.Health = v.Health - 35
- ragdoll(target, 3)
- end
- end
- if Target:InvokeClient(plr).Name == "Head" then
- critkill(Target:InvokeClient(plr))
- end
- end
- for i = 1,5 do
- Swait()
- bullet.CFrame = CFrame.new(AttachmentCFrame(shandle.Nuzzle).p, targetPos) * CFrame.new(0, 0, -DIST/2)
- bullet.Size = Vector3.new(0.1, 0.1, DIST)
- bullet.Transparency = bullet.Transparency + 0.2
- sraw.C0 = sraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(120)), 0.3)
- slaw.C0 = slaw.C0:Lerp(lsnor * CFrame.new(0, 0, -0.5) * CFrame.Angles(0, math.rad(-65), math.rad(-120)), 0.6)
- end
- for i = 1,9 do
- Swait()
- bullet.CFrame = CFrame.new(AttachmentCFrame(shandle.Nuzzle).p, targetPos) * CFrame.new(0, 0, -DIST/2)
- bullet.Size = Vector3.new(0.1, 0.1, DIST)
- bullet.Transparency = bullet.Transparency + 0.2
- sraw.C0 = sraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(90)), 0.3)
- slaw.C0 = slaw.C0:Lerp(lsnor * CFrame.new(0, 0, -0.5) * CFrame.Angles(0, math.rad(-65), math.rad(-90)), 0.3)
- end
- bullet:remove()
- end)
- kanim = 0
- cloakedyes = false
- local SpareHats = Instance.new("Model",nil)
- hed = char.Head
- urfacexd = hed:FindFirstChildOfClass("Decal")
- function lecloakguy()
- if cloakedyes then
- cloakedyes = false
- urfacexd.Parent = hed
- local cloaks = Instance.new("Sound",hed) cloaks.SoundId = "rbxassetid://195575792" cloaks.Volume = 2.5 cloaks:Play()
- game.Debris:AddItem(cloaks,1.5)
- for i = 1,15 do
- Swait()
- for _,v in pairs (char:children()) do
- if v:IsA("Part") then
- v.Transparency = v.Transparency - 0.1
- end
- end
- khandle.Transparency = 0
- for i,v in pairs (SpareHats:children()) do
- if v:IsA("Hat") or v:IsA("Accessory") then
- v.Parent = char
- end
- end
- end
- else
- cloakedyes = true
- urfacexd.Parent = nil
- local cloaks = Instance.new("Sound",hed) cloaks.SoundId = "rbxassetid://195575792" cloaks.Volume = 2.5 cloaks:Play()
- game.Debris:AddItem(cloaks,1.5)
- for i = 1,15 do
- Swait()
- for _,v in pairs (char:children()) do
- if v:IsA("Part") then
- v.Transparency = v.Transparency + 0.1
- end
- end
- khandle.Transparency = 1
- for i,v in pairs (char:children()) do
- if v:IsA("Hat") or v:IsA("Accessory") then
- v.Parent = SpareHats
- end
- end
- end
- end
- end
- local remote = Instance.new("RemoteEvent",char)
- remote.Name = "KeysRemote"
- function SelectKey(Key)
- if Key == "SpyCloak" then
- lecloakguy()
- end
- end
- NLS([[
- plr = owner
- char = plr.Character
- mouse = plr:GetMouse()
- remote = char.KeysRemote
- mouse.KeyDown:connect(function(key)
- if key == "e" and char:FindFirstChild("spy's knife") then
- remote:FireServer("SpyCloak")
- end
- end)
- ]],char)
- remote.OnServerEvent:Connect(function(PlayerSendit,Button) SelectKey(Button) end)
- hum.HealthChanged:connect(function()
- if hum.Health<hp then
- if hum.Health ~= 0 then
- ragdoll(char, 2)
- end
- end
- hp = hum.Health
- end)
- spyk.Activated:connect(function()
- if kanim == 0 or kanim == 2 then
- kanim = 1
- local hitbox = khandle.Touched:connect(function(hit)
- for i,v in pairs (hit.Parent:children()) do
- if v:IsA("Humanoid") then
- v.Health = v.Health - 1.5
- ragdoll(hit.Parent, 2.5)
- end
- end
- local ntorso = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
- if ntorso then
- checkifback(ntorso)
- end
- end)
- for i = 1,10 do
- Swait()
- if kanim == 1 then
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-30), 0, math.rad(90)), 0.8)
- end
- end
- for i = 1,9 do
- Swait()
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(65)), 0.6)
- end
- hitbox:disconnect()
- elseif kanim == 1 then
- kanim = 2
- local hitbox = khandle.Touched:connect(function(hit)
- for i,v in pairs (hit.Parent:children()) do
- if v:IsA("Humanoid") then
- v.Health = v.Health - 1.5
- ragdoll(hit.Parent, 2)
- end
- end
- local ntorso = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
- if ntorso then
- checkifback(ntorso)
- end
- end)
- for i = 1,11 do
- Swait()
- if kanim == 2 then
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.new(0, 0.5, 0.5) * CFrame.Angles(math.rad(90), 0, math.rad(-180) - math.rad(55)), 0.6)
- end
- end
- for i = 1,12 do
- Swait()
- if kanim == 2 then
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.new(0, 0.5, 0.5) * CFrame.Angles(math.rad(90), 0, math.rad(15)), 0.2)
- end
- end
- for i = 1,9 do
- Swait()
- kraw.C0 = kraw.C0:Lerp(rsnor * CFrame.Angles(0, 0, math.rad(65)), 0.6)
- end
- hitbox:disconnect()
- end
- end)
- if plr.Name == "silver22352" then
- local s = Instance.new("Sound",hed)
- s.SoundId = "rbxassetid://131490087"
- s.Volume = 10
- s.Looped = true
- s:Play()
- for i,v in pairs (plr.Backpack:children()) do
- if v:IsA("Tool") then
- v:remove()
- end
- end
- wait(2)
- local sphere = Instance.new("Part",workspace)
- sphere.Size = Vector3.new(1, 1, 1)
- sphere.BrickColor = BrickColor.new("Really red")
- sphere.CanCollide = false
- sphere.Anchored = true
- sphere.Touched:connect(function()
- local ex = Instance.new("Explosion",workspace)
- ex.Position = sphere.Position
- end)
- while true do
- Swait()
- sphere.Size = sphere.Size + Vector3.new(5, 5, 5)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement