0
所以我是Unity的新手,但是創建了一個簡單的2D遊戲。我需要讓兩個精靈在點擊時互相移動。我想使用附加到主相機的腳本,但打開其他建議。謝謝朋友! 這裏是我的腳本:Unity C#使兩個Sprites彼此移動
public class MoveTo : MonoBehaviour {
\t GameObject objectA = null;
\t GameObject objectB = null;
\t // Use this for initialization
\t void Start() {
\t \t
\t }
\t
\t // Update is called once per frame
\t void Update() {
\t \t
\t \t
\t \t if(Input.GetMouseButtonDown(0))
\t \t {
\t \t \t Ray rayOrigin = Camera.main.ScreenPointToRay(Input.mousePosition);
\t \t \t RaycastHit hitInfo;
\t \t \t
\t \t \t if(Physics.Raycast(rayOrigin, out hitInfo))
\t \t \t {
\t \t \t \t //Destroy (hitInfo.collider.gameObject);
\t \t \t \t if(objectA == null)
\t \t \t \t {
\t \t \t \t \t objectA = hitInfo.collider.gameObject;
\t \t \t \t }
\t \t \t \t else{
\t \t \t \t \t objectB = hitInfo.collider.gameObject;
\t \t \t \t }
\t \t \t \t if(objectA != null && objectB != null)
\t \t \t \t {
\t \t \t \t \t //Need something to make them move towards each other here???
\t \t \t \t \t objectA = null;
\t \t \t \t \t objectB = null;
\t \t
\t \t \t \t }
\t \t \t \t
\t \t \t }
\t \t }
\t }
}
感謝您的幫助,現在我正在努力的其他事情是讓它們在碰觸時被破壞。我已經使用Boxed collider 2D,但是如果我現在添加它,現在我的精靈不會移動,因爲一個腳本使用了矢量3.您對我有什麼建議嗎? – user2685757 2014-09-29 09:31:19
碰撞組件處有「is trigger」複選框。如果你檢查一個,你可以編寫你自己的[衝突代碼](http://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html)。在你的情況下,它將只是'Destroy(gameObject);' – maZZZu 2014-09-29 10:37:22
如果你因爲Vector3而遇到問題,你可以將它們全部更改爲vector2。 – maZZZu 2014-09-29 10:44:38