团结中的碰撞和方向c#...



我正在使用此代码移动到正确的方向:

transform.Translate(1,0,0);

然后,我正在使用它移动到相反的方向,我需要更改x轴正/负。

void OnCollisionEnter2D(Collision2D col){
}

帮助我实现它。预先感谢。

这是给我像我这样的新手,对我来说是工作!

using UnityEngine;
using System.Collections;
public class CollisionAndtheMovement : MonoBehaviour {
    public float speed;
    public bool  toRight;`enter code here`
    // Use this for initialization
    void Start () {
        toRight = true;

    }
    // Update is called once per frame
    void Update (){
        if (toRight) {
            transform.Translate (Vector2.right*Time.deltaTime*speed, 0);
        }
        if (!toRight) {
            transform.Translate (Vector2.left*Time.deltaTime*speed, 0);
        }
    }
    void OnCollisionEnter2D(Collision2D col){
        if (col.gameObject.tag == "Crate" && toRight) {
            toRight = false;
        } else {
            toRight = true;
        }
    }
}

您可以将transform.Right用于目的和相反的方向 -transform.Right将做到这一点。

朝相反的方向前进,只需使数字负。

void OnCollisionEnter2D(Collision2D col){
  transform.Translate(-1,0,0);
}