I found a vampire script and I'm attempting to modify it, but when i go to try and make it remove the players shirt, It works, but the rest of the script doesnt execute due to the error. Workspace.Player.vmp.Vampire:13: attempt to index a nil value
if script.Parent.Name == "vmp" then
wait(5)
e = script.Parent.Parent:children()
for i = 1,#e do
if e[i]:IsA("Part") then
wait(1)
e[i].BrickColor = BrickColor.new("White")
e[i].Parent:FindFirstChild("Head"):FindFirstChild("face").Texture="http://www.roblox.com/asset/?id=7323991"
e[i].Parent:FindFirstChild("Torso").BrickColor = BrickColor.new("Black")
e[i].Parent:FindFirstChild("Right Leg").BrickColor = BrickColor.new("Black")
e[i].Parent:FindFirstChild("Left Leg").BrickColor = BrickColor.new("Black")
e[i].Parent:FindFirstChild("Torso"):FindFirstChild("roblox").Texture=""
e[i].Parent:FindFirstChild("Shirt"):remove()
end
end
script.Parent = script.Parent.Parent
end
local larm = script.Parent:FindFirstChild("Left Arm")
local rarm = script.Parent:FindFirstChild("Right Arm")
target = nil
function findNearestTorso(pos)
local list = game.Workspace:children()
local torso = nil
local dist = 1000
local temp = nil
local human = nil
local temp2 = nil
for x = 1, #list do
temp2 = list[x]
if (temp2.className == "Model") and (temp2 ~= script.Parent) and (temp2:findFirstChild("vmp") == nil) then
followed = false
z = Workspace:children()
for x = 1,#z do
if z[x]:findFirstChild("vmp") and z[x] ~= script.Parent then
if z[x].vmp.Value == temp2 then
followed = true
end
end
end
if not followed then
temp = temp2:findFirstChild("Torso")
human = temp2:findFirstChild("Humanoid")
if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
if (temp.Position - pos).magnitude < dist then
torso = temp
dist = (temp.Position - pos).magnitude
end
end
end
end
end
return torso
end
function onTouched(part)
if debounce then return end
debounce = true
print("Touched", part.Parent:findFirstChild("Torso"),target)
if part.Parent:findFirstChild("Torso") then
if part.Parent.Torso == target then
script.Parent.Animate.Disabled = true
part.Parent.Humanoid.PlatformStand = true
g = Instance.new("BodyGyro")
g.Parent = part.Parent.Torso
g.cframe = CFrame.new(Vector3.new(0,0,0), Vector3.new(0,-5000000,0))
g.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
g.Name = "bg"
w = Instance.new("Weld")
w.Parent = script.Parent.Head
w.Part0 = part.Parent.Head
w.Part1 = w.Parent
w.C0 = CFrame.new(0,.5,1) * CFrame.fromEulerAnglesXYZ(0,0,-2)
script.Parent.Torso["Left Shoulder"].DesiredAngle = -3
script.Parent.Torso["Right Shoulder"].DesiredAngle = 3
script.Parent.Torso["Left Hip"].DesiredAngle = -.5
script.Parent.Torso["Right Hip"].DesiredAngle = .5
wait(4)
if script.Parent.Humanoid.Health ~= 0 then
b = Instance.new("ObjectValue")
b.Parent = part.Parent
b.Name = "vmp"
script:clone().Parent = b
end
g:Remove()
w:Remove()
script.Parent.Animate.Disabled = false
part.Parent.Humanoid.PlatformStand = false
wait(.5)
end
end
debounce = false
end
if script.Parent:findFirstChild("Head2") == nil then
character = script.Parent
a = character.Head:clone()
character.Head.Transparency = 1
a.Parent = character
a.Name = "Head2"
b = Instance.new("Weld")
b.Parent = a
b.Part0 = character.Head
b.Part1 = a
end
script.Parent.Torso.Touched:connect(onTouched)
while true do
wait(.1)
target = findNearestTorso(script.Parent.Torso.Position)
if target ~= nil and not attacking then
script.Parent.vmp.Value = target.Parent
mag = (script.Parent.Torso.Position - target.Position).magnitude
script.Parent.Humanoid:MoveTo(target.Position+script.Parent.Torso.CFrame.lookVector*2, target)
e = script.Parent:children()
for i = 1,#e do
if e[i]:IsA("BasePart") and e[i].Name ~= "Head" then
e[i].Transparency = 0 + (mag/50)
end
if e[i]:IsA("Hat") then
e[i].Handle.Transparency = 0 + (mag/50)
end
end
else
script.Parent.Humanoid:MoveTo(script.Parent.Torso.Position, script.Parent.Torso)
end
end
If i messed up let me know im new to this forum. Please help me fix line 13

1 comment
It did cut some of it off but i dont know how to fix that. My Apologies.