public class InputHelper
{
public TouchOperation OnTouchDown;
public TouchOperation OnTouchMove;
public TouchOperation OnTouchUp;
public TouchOperation OnClick;
public long TouchDownTime;
public long TouchUpTime;
[HideInInspector]
public float Pressure = 1;
private bool FixMouseBegan = false;
public void MouseInput()
{
UnityEngine.EventSystems.EventSystem eventSystem = UnityEngine.EventSystems.EventSystem.current;
if (eventSystem != null && eventSystem.IsPointerOverGameObject())
{
if (!FixMouseBegan) return;
}
if (Input.GetMouseButton(0) && FixMouseBegan)
{
Vector3 mousePositon = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -Camera.main.transform.position.z));
OnUserTouchMove(Input.mousePosition);
}
if (Input.GetMouseButtonDown(0))
{
Vector3 mousePositon = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -Camera.main.transform.position.z));
OnUserTouchDown(Input.mousePosition);
FixMouseBegan = true;
}
if (Input.GetMouseButtonUp(0) && FixMouseBegan)
{
Vector3 mousePositon = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mous
unity 控制上下左右移动代码,记录初次点击位置
最新推荐文章于 2024-07-20 00:22:56 发布
本文详细介绍了Unity中控制角色在2D场景中上下左右移动的代码实现过程,包括如何记录玩家的初次点击位置,并通过触摸或键盘输入来更新角色的位置,适合Unity初学者学习。
摘要由CSDN通过智能技术生成