我将开发一个名为"废物收藏"的简单游戏。屏幕的位置。当我们单击角色的左侧时,动画左路需要播放。另一方面,当我们单击字符的右侧时,动画右步行需要播放。如何单击位置在此应用程序中采用以及角色如何使点击位置动画
public class mousepos : MonoBehaviour {
private Animator anim;
public float speed = 1.5f;
private Vector3 target;
void Start () {
anim = GetComponent<Animator>();
target = transform.position;
}
void Update () {
if (Input.GetMouseButtonDown (0)) {
if (**Input.mousePosition.x <= 500**) { //move skeleton on X axis to the left
target = Camera.main.ScreenToWorldPoint (Input.mousePosition);
target.z = transform.position.z;
transform.localScale = new Vector3(1, 1, 1);
anim.SetInteger ("Direction", 1);
} else if (Input.mousePosition.x >= 500) {
target = Camera.main.ScreenToWorldPoint (Input.mousePosition);
target.z = transform.position.z;
transform.localScale = new Vector3(-1, 1, 1);
anim.SetInteger ("Direction", 1);
}
}
transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);
}
}
不确定您要确切要求什么,但是类似这样的东西?
if (Input.GetMouseButtonDown (0)) {
target = Camera.main.ScreenToWorldPoint (Input.mousePosition);
target.z = transform.position.z;
if(target.x > transform.position.x) transform.localScale = new Vector3(1, 1, 1);
else if(target.x < transform.position.x) transform.localScale = new Vector3(-1, 1, 1);
anim.SetInteger ("Direction", 1);
}
transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);
我得到了.. :)
公共类Mousepos:Monobehaviour {
private Animator anim;
public float speed = 1.5f;
private Vector3 target;
private Vector3 MousePosition;
private Vector3 PlayerPosition;
void Start () {
anim = GetComponent<Animator>();
target = transform.position;
}
void Update () {
if (Input.GetMouseButtonDown (0)) {
target = Camera.main.ScreenToWorldPoint (Input.mousePosition);
target.z = transform.position.x;
Debug.Log ("traaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + target.z);
if (target.x <= target.z) {
transform.localScale = new Vector3 (1, 1, 1);
anim.SetInteger ("Direction", 1);
}
else if (target.x >= target.z) {
transform.localScale = new Vector3 (-1, 1, 1);
anim.SetInteger ("Direction", 1);
}
}
transform.position = Vector3.MoveTowards (transform.position, target, speed * Time.deltaTime);
}
}