Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

NPC attacks everything except players?

Asked by 3 years ago
Edited 3 years ago

I asked for help yesterday and I got pointed in the right direction but I for the life of me (2 hours now of breaking and breaking and having to reset) can not get the function to work. I am sorry, this is just for some reason proving to be a big issue. It's just a silly freddy krueger npc my fiance loves so I am trying to get it to work. It works GREAT except it doesn't attack her.

What I was directed to do was in the target mode section I need to add

local player = game.Players:GetPlayerFromCharacter(TargetModel)
2   if player then
3       --attack
4   else
5   end

This is the code section it assumably goes into (not written by me). I can not figure out where to put it. I have tried multiple areas. Its killing me. >.<

    local NoticeDistance=100;
    local TargetMain;
        for _,TargetModel in pairs(game:GetService("Workspace"):GetChildren())do
        if JeffTheKillerScript and JeffTheKiller and JeffTheKillerHumanoid and JeffTheKillerHumanoid.Health~=0 and TargetModel.className=="Model"and TargetModel~=JeffTheKiller and TargetModel.Name~=JeffTheKiller.Name and TargetModel:FindFirstChild("Torso")and TargetModel:FindFirstChild("Head")then
        local TargetPart=TargetModel:FindFirstChild("Torso");
        local FoundHumanoid;
    for _,Child in pairs(TargetModel:GetChildren())do
        if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
        FoundHumanoid=Child;
        end;
    end;
    if TargetModel and TargetPart and FoundHumanoid and FoundHumanoid.Health~=0 and(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<NoticeDistance then
    TargetMain=TargetPart;
    NoticeDistance=(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude;
    local hit,pos=raycast(JeffTheKillerHumanoidRootPart.Position,(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).unit,500)
    if hit and hit.Parent and hit.Parent.ClassName=="Model"and hit.Parent:FindFirstChild("Torso")and hit.Parent:FindFirstChild("Head")then
    if TargetModel and TargetPart and FoundHumanoid and FoundHumanoid.Health~=0 and(TargetPart.Position-JeffTheKillerHumanoidRootPart.Position).magnitude<9 and not AttackDebounce then

Answer this question