I was making an enemy, and all was going well until I found this bug. I don't know how exactly it works, but when I move a certain way for some reason it throws off the script and the enemy begins to move straight the direction about 90 degrees from the way I'm facing. I've been looking at it for quite a bit and I cant find what's going wrong. Thx in advance for any help.
local startingPos = script.Parent.HumanoidRootPart.Position function findNearestTorso(pos) local list = game.Workspace:children() local torso = nil local dist = 75 local temp = nil local human = nil local temp2 = nil for x = 1, #list do temp2 = list[x] if (temp2.className == "Model") then temp = temp2:findFirstChild("HumanoidRootPart") human = temp2:findFirstChild("Humanoid") if (temp ~= nil) and (human ~= nil) and (human.Parent.HealthPoints.Value > 0) then if (((temp.Position - pos) + (pos - startingPos))).magnitude < dist then dist = (((temp.Position - pos) + (pos - startingPos))).magnitude torso = temp end end end end return torso end while true do wait() local target = findNearestTorso(script.Parent.HumanoidRootPart.Position) if target ~= nil then script.Parent.Humanoid:MoveTo(target.Position, target) else script.Parent.Humanoid:MoveTo(startingPos) end end