vector 3 to unity.transform
using UnityEngine; using System.Collections;
public class PatrolUpstairs : MonoBehaviour {
public Transform[] points;
private int destPoint = 1;
private UnityEngine.AI.NavMeshAgent agent;
public float range = 10f;
public float stop = 2f;
public float move_speed = 3f;
public float turn_speed = 4f;
public Transform player;
Transform myTransform;
void Start () {
player = GameObject.FindWithTag ("Player").transform;
agent = GetComponent<UnityEngine.AI.NavMeshAgent>();
myTransform = transform;
// Disabling auto-braking allows for continuous movement
// between points (ie, the agent doesn't slow down as it
// approaches a destination point).
agent.autoBraking = false;
GotoNextPoint();
}
void GotoNextPoint() {
// Returns if no points have been set up
if (points.Length == 0)
return;
// Set the agent to go to the currently selected destination.
agent.destination = points[destPoint].position;
// Choose the next point in the array as the destination,
// cycling to the start if necessary.
destPoint = (destPoint + Random.Range(1,(10))) % points.Length;
}
void Update () {
// Choose the next destination point when the agent gets
// close to the current one.
float distance = (myTransform.position - player.position).magnitude ;
if (distance <= range)
myTransform.rotation = Quaternion.Slerp (myTransform.rotation,
Quaternion.LookRotation (player.position - myTransform.position), turn_speed * Time.deltaTime);
if (distance > stop)
agent.destination = player;
if (agent.remainingDistance < 1f)
GotoNextPoint();
}
}
My error is: Cannot implicitly convert type UnityEngine.Transform' to
UnityEngine.Vector3'
How can I measure the distance between two gameobjects without using vector 3?
Answer by FortisVenaliter · Apr 13, 2017 at 07:03 PM
Because the transform is more than just a position. It's a Transform object, not a Vector3 object.
What you want instead is transform.position, which is a Vector3.
Your answer
Follow this Question
Related Questions
How limit the movement using distance 2 Answers
Looking for the optimal smooth incremental movement method. 0 Answers
Main Camera automatically increment by 0.75 on Y axis 0 Answers
can't use Vector3.Distance with object at origin(0,0,0) 0 Answers
Ingame Object placing - Place objects like Unturned or Ark Survival 1 Answer