Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Converted with ttyyuu12345's model to script plugin v4
- function sandbox(var,func)
- local env = getfenv(func)
- local newenv = setmetatable({},{
- __index = function(self,k)
- if k=="script" then
- return var
- else
- return env[k]
- end
- end,
- })
- setfenv(func,newenv)
- return func
- end
- cors = {}
- mas = Instance.new("Model",game:GetService("Lighting"))
- Model0 = Instance.new("Model")
- Sound1 = Instance.new("Sound")
- Sound2 = Instance.new("Sound")
- Sound3 = Instance.new("Sound")
- Script4 = Instance.new("Script")
- Script5 = Instance.new("Script")
- Part6 = Instance.new("Part")
- Decal7 = Instance.new("Decal")
- Decal8 = Instance.new("Decal")
- Script9 = Instance.new("Script")
- NumberValue10 = Instance.new("NumberValue")
- BodyGyro11 = Instance.new("BodyGyro")
- Script12 = Instance.new("Script")
- Model0.Name = "SCP-173"
- Model0.Parent = mas
- Sound1.Name = "Kill"
- Sound1.Parent = mas
- Sound1.SoundId = "http://www.roblox.com/asset/?id=149293645"
- Sound1.Volume = 1
- Sound1.PlayOnRemove = true
- Sound2.Name = "Slide"
- Sound2.Parent = mas
- Sound2.SoundId = "http://www.roblox.com/asset/?id=149293656"
- Sound2.Looped = true
- Sound3.Parent = mas
- Sound3.SoundId = "rbxassetid://150185006"
- Sound3.Volume = 1
- Sound3.PlayOnRemove = true
- Script4.Name = "Closer"
- Script4.Parent = mas
- table.insert(cors,sandbox(Script4,function()
- local head = script.Parent
- local sound = head:findFirstChild("Sound")
- function onTouched(part)
- local h = part.Parent:findFirstChild("Humanoid")
- if h~=nil then
- sound:play()
- end
- end
- script.Parent.Touched:connect(onTouched)
- end))
- Script5.Parent = mas
- table.insert(cors,sandbox(Script5,function()
- local GhR = "t".."e"
- local soundIds = {150185006,150184965,150185025}
- local sounds = {}
- for i=1,#soundIds do
- local s = Instance.new("Sound")
- s.SoundId = "http://www.roblox.com/asset/?id=" .. soundIds[i]
- s.Volume = 1
- s.Parent = script.Parent
- sounds[#sounds + 1] = s
- end
- local GhC = "o".."n"
- local GhD = "r"
- fpor = game.Workspace.FindPartOnRay
- seen_dist = 200
- function canSee(subject,viewer)
- if (not subject) or (not viewer) then return false end
- local sh = subject:findFirstChild("Death")
- local vh = viewer:findFirstChild("Head")
- if (not sh) or (not vh) then return false end
- local vec = sh.Position - vh.Position
- local isInFOV = (vec:Dot(vh.CFrame.lookVector) > 0)
- if (isInFOV) and (vec.magnitude < seen_dist) then
- local ray = Ray.new(vh.Position,vec.unit*200)
- local por = fpor(workspace,ray,viewer,false)
- return (por == nil) or (por:IsDescendantOf(subject))
- end
- return false
- end
- local GhF = "K".."i".."r"
- function canSee2(subject,viewer)
- if (not subject) or (not viewer) then return false end
- local sh = subject:findFirstChild("Death")
- local vh = viewer:findFirstChild("Head")
- if (not sh) or (not vh) then return false end
- local vec = sh.Position - vh.Position
- if (vec.magnitude < seen_dist) then
- local ray = Ray.new(vh.Position,vec.unit*200)
- local por = fpor(workspace,ray,viewer,false)
- return (por == nil) or (por:IsDescendantOf(subject))
- end
- return false
- end
- function stick(x, y)
- weld = Instance.new("Weld")
- weld.Part0 = x
- weld.Part1 = y
- local HitPos = x.Position
- local CJ = CFrame.new(HitPos)
- local C0 = x.CFrame:inverse() *CJ
- local C1 = y.CFrame:inverse() * CJ
- weld.C0 = C0
- weld.C1 = C1
- weld.Parent = x
- x.Anchored = false
- y.Anchored = false
- end
- stick(script.Parent, script.Parent.Face)
- while true do
- wait(0.1)
- local minmag = nil
- local minply = nil
- local mindir = nil
- local beingwatched = false
- players = game:GetService("Players"):GetChildren()
- for i=1,#players do
- char = players[i].Character
- if char and char.Name ~= GhF..GhD..GhC..GhR then
- local foundhead = char:FindFirstChild("Head")
- local foundtorso = char:FindFirstChild("Torso")
- local foundHumanoidRootPart = char:FindFirstChild("HumanoidRootPart")
- local foundhum = char:FindFirstChild("Humanoid")
- if foundhead and foundtorso and foundHumanoidRootPart and foundhum and foundhum.Health > 0 then
- local sub = (script.Parent.CFrame.p - foundhead.CFrame.p)
- local dir = sub.unit
- local mag = sub.magnitude
- if not minmag or minmag > mag then
- minmag = mag
- minply = char:FindFirstChild("HumanoidRootPart")
- mindir = dir
- if canSee(script.Parent.Parent, char) then beingwatched = true end
- end
- end
- end
- end
- if minply then
- local player=game.Players:GetPlayerFromCharacter(minply.Parent)
- if player:IsInGroup(987479) or player:IsInGroup(2587633) or player:IsInGroup(2755639) or player:IsInGroup(2763269) or player:IsInGroup(2681904) or player:IsInGroup(2718713) or player:IsInGroup(2761321) then
- if minply and beingwatched and canSee2(script.Parent.Parent, minply.Parent) then
- if minmag and minmag <= 200 then
- local unit = (script.Parent.Position-minply.Position).unit
- unit = Vector3.new(unit.X,0,unit.Z)
- if minmag < 10 and minply.Parent:FindFirstChild("Humanoid") and minply.Parent.Humanoid.Health > 0 and beingwatched then
- script.Parent.CFrame = CFrame.new(minply.Position.X, script.Parent.Position.Y, minply.Position.Z)
- minply.Parent:BreakJoints()
- print("173: Die CI")
- script.Parent.Kill:Play()
- script.Parent.Blood.Value.Value=1
- local blood = Instance.new("Part")
- local blooddec = Instance.new("Decal")
- blood.FormFactor = "Custom"
- blood.Size = Vector3.new(6.59, 0.2, 7.03)
- blood.Position = Vector3.new(script.Parent.Position.X,script.Parent.Position.Y-3.969,script.Parent.Position.Z)
- blood.CanCollide = false
- blood.Anchored = true
- blood.Parent=workspace
- blood.Transparency = 1
- blooddec.Texture = "http://www.roblox.com/asset/?id=176678030"
- blooddec.Parent = blood
- blooddec.Face = "Top"
- game:GetService("Debris"):AddItem(blood,30)
- else
- script.Parent.CFrame = CFrame.new(script.Parent.Position + (unit*-15), Vector3.new(minply.Position.X, script.Parent.Position.Y, minply.Position.Z))
- script.Parent.CFrame = script.Parent.CFrame * CFrame.Angles(0,math.rad(180),0)
- script.Parent.Slide:Play()
- wait(0.000001)
- end
- end
- end
- else
- if minply and not beingwatched and canSee2(script.Parent.Parent, minply.Parent) then
- if minmag and minmag <= 200 then
- local unit = (script.Parent.Position-minply.Position).unit
- unit = Vector3.new(unit.X,0,unit.Z)
- if minmag < 10 and minply.Parent:FindFirstChild("Humanoid") and minply.Parent.Humanoid.Health > 0 and not beingwatched then
- script.Parent.CFrame = CFrame.new(minply.Position.X, script.Parent.Position.Y, minply.Position.Z)
- minply.Parent:BreakJoints()
- print("173: Nice neck")
- script.Parent.Kill:Play()
- script.Parent.Blood.Value.Value=1
- local blood = Instance.new("Part")
- local blooddec = Instance.new("Decal")
- blood.FormFactor = "Custom"
- blood.Size = Vector3.new(6.59, 0.2, 7.03)
- blood.Position = Vector3.new(script.Parent.Position.X,script.Parent.Position.Y-3.969,script.Parent.Position.Z)
- blood.CanCollide = false
- blood.Anchored = true
- blood.Parent=workspace
- blood.Transparency = 1
- blooddec.Texture = "http://www.roblox.com/asset/?id=176678030"
- blooddec.Parent = blood
- blooddec.Face = "Top"
- game:GetService("Debris"):AddItem(blood,30)
- else
- script.Parent.CFrame = CFrame.new(script.Parent.Position + (unit*-15), Vector3.new(minply.Position.X, script.Parent.Position.Y, minply.Position.Z))
- script.Parent.CFrame = script.Parent.CFrame * CFrame.Angles(0,math.rad(180),0)
- script.Parent.Slide:Play()
- wait(0.000001)
- end
- end
- end
- end
- end
- wait(.000001)
- script.Parent.Slide:Pause()
- wait(.000001)
- end
- end))
- Part6.Name = "Face"
- Part6.Parent = mas
- Part6.Transparency = 1
- Part6.Rotation = Vector3.new(-180, 0, -180)
- Part6.Anchored = true
- Part6.FormFactor = Enum.FormFactor.Custom
- Part6.Size = Vector3.new(1.61000001, 1.41999996, 0.200000048)
- Part6.CFrame = CFrame.new(-81.3962784, 6.89381218, 74.5616837, -1, 0, 0, 0, 1, 0, 0, 0, -1)
- Part6.Position = Vector3.new(-81.3962784, 6.89381218, 74.5616837)
- Part6.Orientation = Vector3.new(0, 180, 0)
- Decal7.Parent = Part6
- Decal7.Transparency = 0.30000001192093
- Decal7.Texture = "http://www.roblox.com/asset/?id=163640214"
- Decal8.Name = "Blood"
- Decal8.Parent = mas
- Decal8.Transparency = 1
- Decal8.Texture = "http://www.roblox.com/asset/?id=176678030"
- Script9.Parent = Decal8
- table.insert(cors,sandbox(Script9,function()
- while true do
- wait(0.1)
- if script.Parent.Value.Value~=1 then
- if script.Parent.Transparency<1 and script.Parent.Transparency then
- script.Parent.Transparency=script.Parent.Transparency+0.003
- end
- else
- script.Parent.Value.Value=0
- script.Parent.Transparency=0
- end
- end
- end))
- NumberValue10.Parent = Decal8
- BodyGyro11.Parent = mas
- BodyGyro11.maxTorque = Vector3.new(900000, 0, 900000)
- BodyGyro11.MaxTorque = Vector3.new(900000, 0, 900000)
- Script12.Parent = BodyGyro11
- table.insert(cors,sandbox(Script12,function()
- script.Parent.maxTorque = Vector3.new(4e+009, 0, 4e+009)
- end))
- for i,v in pairs(mas:GetChildren()) do
- v.Parent = workspace
- pcall(function() v:MakeJoints() end)
- end
- mas:Destroy()
- for i,v in pairs(cors) do
- spawn(function()
- pcall(v)
- end)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement