using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class Enemy : MonoBehaviour
{
public NavMeshAgent Ninja;
public GameObject Player;
public float NinjaDistanceRun = 30.0f;
void Start()
{
Ninja = GetComponent<NavMeshAgent>();
}
void Update()
{
float distance = Vector3.Distance(transform.position, Player.transform.position);
//Run towards player
if(distance < NinjaDistanceRun)
{
Vector3 dirToPlayer = transform.position - Player.transform.position;
Vector3 newPos = transform.position - dirToPlayer;
Ninja.SetDestination(newPos);
}
}
}
上图所示的代码就是我用来让敌人在范围内时跟着玩家走的。我可以让我的敌人走得更快,而不把这整个脚本捣毁,并制作一个有不同思路的新脚本吗?
设置忍者的最大速度(NavMeshAgent.speed)。这里是文档中的更多信息。https:/docs.unity3d.comScriptReferenceAI.NavMeshAgent-speed.html。
在START方法中,你可以给你的Navmesh代理设置一个新的速度,这个角色就会朝着玩家的方向走或跑。