我正在嘗試創建一個簡單的 EnemyAI,其中敵人跟隨玩家。我遇到了引擎無法將“UnityEngine.GameObject”轉換為“UnityEngine.Transform”的問題。這是代碼:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemyAI : MonoBehaviour
{
Transform TargetedPlayer;
public float EnemySpeed = 3f;
void FixedUpdate()
{
EnemyFollow();
}
void EnemyFollow()
{
TargetedPlayer = GameObject.Find("Pig"); //Issue
if (Vector3.Distance(transform.position,TargetedPlayer.position)>1f)
{
transform.Translate(new Vector3(EnemySpeed * Time.deltaTime,0,0) );
}
}
}
我理解這個問題,但我不知道如何在不破壞代碼的情況下更改代碼。提前感謝幫助的人:)
uj5u.com熱心網友回復:
我在這里做一個瘋狂的猜測,但讓
[SerializeField] Transform TargetedPlayer;
要么
public Transform TargetedPlayer;
并將播放器拖到那里
并洗掉
TargetedPlayer = GameObject.Find("Pig"); //Issue
以我的小經驗,如果可以的話,我會推薦你??,使用 NavMeshAgent 讓敵人跟隨玩家
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/438284.html
