- Home /
Error Vector3 does not contain MoveTowards
Hey guys, im trying to make my tank move 1 unit or space at a time. this is what i have atm
public float speed;
private Vector3 pos;
private Transform tr;
void Start ()
{
pos = transform.position;
tr = transform;
}
void Update ()
{
if (game.running && Network.player == owner)
{
playerActive = true;
bool shootButton;
if(Input.GetKey(KeyCode.LeftArrow) && tr.position == pos)
{
pos += Vector3.left;
}
else if(Input.GetKey(KeyCode.RightArrow) && tr.position == pos)
{
pos += Vector3.right;
}
transform.position = Vector3.MoveTowards(transform.position,pos,Time.deltaTime * speed);
but i get an error saying vector3 does not contain MoveTowards. I am using unity 2 because of regulations at university. how do i go around this
If you look at the docs included with your version of Unity 2.x does Vector3
have a $$anonymous$$oveTowards
member?
that would have been helpfull if the uni supplied the documentation for it.
Answer by whydoidoit · Apr 02, 2014 at 01:54 PM
Here's a version of MoveTowards:
Vector3 MoveTowards(Vector3 current, Vector3 target, float maxDistance) {
Vector3 difference = (target - current);
float distanceToMove = Mathf.Min(difference.magnitude, maxDistance);
return current + difference.normalized * distanceToMove;
}
Answer by patrik-org · Apr 02, 2014 at 02:57 PM
If MoveTowards isn't available, you should be able to do something like this:
Vector3 movementVector = pos - transform.position;
movementVector.Normalize();
transform.position += movementVector * speed * Time.deltaTime;
Answer by Mint92 · Apr 04, 2014 at 11:29 AM
thanks for the response guys, I got it to work in the end
if(Input.GetButtonDown("Right"))
{
transform.position = new Vector3(transform.position.x + 1.0f, transform.position.y,transform.position.z);
}
else if(Input.GetButtonDown("Left"))
{
transform.position = new Vector3(transform.position.x -1.0f, transform.position.y,transform.position.z);
}
Your answer
Follow this Question
Related Questions
3D Character Controller slowing down the higher the slope angle (both up and down) 1 Answer
EnemyHover Script Error? 0 Answers
Player isn't affected by AddForce(), Lerp() etc. 1 Answer
Making a bubble level (not a game but work tool) 1 Answer
How to get our character controller script to make our player move? 1 Answer