public class JudgeDirection : MonoBehaviour {
private Vector2 touchFirst = Vector2.zero;
private Vector2 touchSecond = Vector2.zero;
public float slidingDistance = 80f;
void OnGUI()
{
if (Event.current.type == EventType.MouseDown)
{
touchFirst = Event.current.mousePosition;//记录开始按下的位置
//Debug.Log ("touchFirst:" + Event.current.mousePosition);
}
if (Event.current.type == EventType.MouseUp)
{
touchSecond = Event.current.mousePosition; //记录结束的位置
Vector2 slideDirection = touchSecond - touchFirst;
float x = slideDirection.x;
float y = slideDirection.y;
if (Mathf.Abs(y) >= Mathf.Abs(x) && Mathf.Abs(y) > slidingDistance)
{
if (y > 0)
{
Debug.Log("Down");
}
else
{
Debug.Log("up");
}
}
else if (Mathf.Abs(x) > Mathf.Abs(y) && Mathf.Abs(x) > slidingDistance)
{
if (x > 0)
{
Debug.Log("right");
}
else
{
Debug.Log("left");
}
}
}
}
}