【问题标题】:How do I use pathfinder to make the NPC chase a player如何使用探路者让NPC追逐玩家
【发布时间】:2021-07-24 05:18:00
【问题描述】:

我已经尝试在 Roblox 开发者论坛中查找多个解决方案,但我只发现了一些未完成的代码或一些不适用于我的代码。这张图片中的代码使我的装备找到了零件并追逐它直到它在那里。这非常有效,但我一直在尝试为装备寻找一种方法来追逐最近的玩家。我听说过幅度,但我不知道如何实现它,我什至不能让装备追逐玩家。

【问题讨论】:

    标签: lua roblox


    【解决方案1】:

    首先,.magnitude 是“向量的长度”。它主要用于查找从点 A 到点 B 的向量单位的距离。因此,与 2 个点的距离为(pointA.Position-pointB.Position).magnitudehttps://developer.roblox.com/en-us/articles/Magnitude

    现在为了追逐玩家,你可以循环遍历所有玩家并找到你的 NPC 将追逐的那个。

    您可以使用 for 循环并循环通过 game.Players:GetPlayers() 然后获取他们的角色:<v>.Character 然后他们的 HumanoidRootPart 有他们的位置。如果您想为您的 NPC 设置一个范围或“仇恨距离”,那么您可以在此处实施幅度。您将首先为您的距离创建一个变量。由于我们将处理向量单元,因此它应该是向量的长度。例如local aggroDistance = 30。当添加到代码中时,这意味着它只会跟踪在 30 个螺柱以内的玩家。然后,您将输入一个 if 语句,说 if (<NPC.HumanoidRootPart.Position-<players hrp position>).magnitude < aggroDistance then。现在您可以使用 Pathfinding Service 将 NPC 移动到玩家处,方法是使用 PathfindingService:ComputeAsync(<NPC HumanoidRootPart Position, <player HumanoidRootPart Position>) :ComputeAsync() 创建从起始位置(第一个参数)到结束位置(第二个参数)的路径。 <NPC Humanoid>:MoveTo(<player HumanoidRootPart Position>) 然后让 NPC 移动到玩家身边。为了监听 NPC 何时到达它在:ComputeAsync() 中创建的路径的末端,您可以在到达末端后执行 <NPC Humanoid>:MoveToFinished:Connect(function()) 来运行一个函数,或者在计算下一条路径之前执行 <NPC Humanoid>:MoveToFinished:Wait() 等待。

    提示:您可能还想检查玩家的生命值是否超过 0(如果他们还活着),这样 NPC 只会移动到活着的玩家身上。您可以通过在您拥有 aggroDistance 的 if 语句中添加 and <player>.Humanoid.Health > 0 来做到这一点。

    如果您有任何问题,请告诉我。

    代码构成:
    aggroDistance variable while loop
    if statement (can contain aggroDistance variable if you have one) and check player health :ComputeAsync()
    :MoveTo()
    :MoveToFinished
    if statement end
    while loop end

    【讨论】:

    • 它的工作和它现在真的在追我!!!谢谢您的帮助!!但是,我发现了另一个我似乎无法解决的问题。我会再发一个帖子
    • 很抱歉再打扰您一次,但我还有一个问题。这是关于我的钻机,由于您和其他一些人的知识,它运行良好,但它总是滞后。在我修复完这个哑哑延迟后,我打算让我们了解你的仇恨知识。 stackoverflow.com/questions/67342588/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 2013-12-02
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    相关资源
    最近更新 更多