如何在多人游戏中让NPC跟随玩家

时间:2021-05-21 01:54:04

标签: c# unity3d artificial-intelligence game-engine multiplayer

我按照教程 here 让 NPC 或敌人角色追逐玩家,但 NPC 无法检测到玩家在哪里。玩家是一个没有放置在场景中的预制件,它在游戏开始时调用。因此,当我尝试场景中的另一个对象并将其作为 NPC 跟随的对象时,NPC 可以跟随它。 请帮我修复它,我是游戏开发的新手。 而且因为是多人游戏,NPC可以选择追哪个玩家吗?

1 个答案:

答案 0 :(得分:1)

考虑不时检查玩家是否已生成。

您可以通过几种方式做到这一点。

This post 涵盖了很多不同的方式,我建议检查每一帧。

例如,您可以 find any object by it's tag, name, 或什至它上面的组件之类的东西。

例如,一种方法是check for tag

public GameObject PlayerPrefab;

private GameObject actualPlayer;

private void Update()
{
    if(actualPlayer != null)
    {
         FollowPlayer();
    }
    else
    {
        actualPlayer = GameObject.FindGameObjectsWithTag(PlayerPrefab.tag).FirstOrDefault();
    }
}
void FollowPlayer()
{
     // Follow Player Stuff Here
}