using System.Collections; using System.Collections.Generic; using UnityEngine; namespace TFramework { public class DefaultInputDevice : InputDeviceBase { /// /// UpperLower轴线值 /// private float _upperLowerValue = 0; public override void OnRun() { if (Input.GetMouseButtonDown(0)) InputManager.SetV_KeyDown(InputKeyType.MouseLeft); else if (Input.GetMouseButtonUp(0)) InputManager.SetV_KeyUp(InputKeyType.MouseLeft); if (Input.GetMouseButtonDown(1)) InputManager.SetV_KeyDown(InputKeyType.MouseRight); else if (Input.GetMouseButtonUp(1)) InputManager.SetV_KeyUp(InputKeyType.MouseRight); if (Input.GetMouseButtonDown(2)) InputManager.SetV_KeyDown(InputKeyType.MouseMiddle); else if (Input.GetMouseButtonUp(2)) InputManager.SetV_KeyUp(InputKeyType.MouseMiddle); InputManager.SetV_Axis(InputAxisType.MouseX, Input.GetAxis("Mouse X")); InputManager.SetV_Axis(InputAxisType.MouseY, Input.GetAxis("Mouse Y")); InputManager.SetV_Axis(InputAxisType.MouseScrollWheel, Input.GetAxis("Mouse ScrollWheel")); InputManager.SetV_Axis(InputAxisType.Horizontal, Input.GetAxis("Horizontal")); InputManager.SetV_Axis(InputAxisType.Vertical, Input.GetAxis("Vertical")); if (Input.GetKey(KeyCode.Q)) _upperLowerValue -= Time.deltaTime; else if (Input.GetKey(KeyCode.E)) _upperLowerValue += Time.deltaTime; else _upperLowerValue = 0; InputManager.SetV_Axis(InputAxisType.UpperLower, Mathf.Clamp(_upperLowerValue, -1, 1)); InputManager.SetVirtualMousePosition(Input.mousePosition); } public override void OnShutdown() { InputManager.RemoveV_Key(InputKeyType.MouseLeft); InputManager.RemoveV_Key(InputKeyType.MouseRight); InputManager.RemoveV_Key(InputKeyType.MouseMiddle); InputManager.RemoveV_Axis(InputAxisType.MouseX); InputManager.RemoveV_Axis(InputAxisType.MouseY); InputManager.RemoveV_Axis(InputAxisType.MouseScrollWheel); InputManager.RemoveV_Axis(InputAxisType.Horizontal); InputManager.RemoveV_Axis(InputAxisType.Vertical); InputManager.RemoveV_Axis(InputAxisType.UpperLower); } public override void OnStartUp() { InputManager.AddV_Key(InputKeyType.MouseLeft); InputManager.AddV_Key(InputKeyType.MouseRight); InputManager.AddV_Key(InputKeyType.MouseMiddle); InputManager.AddV_Axis(InputAxisType.MouseX); InputManager.AddV_Axis(InputAxisType.MouseY); InputManager.AddV_Axis(InputAxisType.MouseScrollWheel); InputManager.AddV_Axis(InputAxisType.Horizontal); InputManager.AddV_Axis(InputAxisType.Vertical); InputManager.AddV_Axis(InputAxisType.UpperLower); } } /// /// 输入轴线类型 /// public static class InputAxisType { /// /// 鼠标X轴移动 /// public static string MouseX = "MouseX"; /// /// 鼠标Y轴移动 /// public static string MouseY = "MouseY"; /// /// 鼠标滚轮滚动 /// public static string MouseScrollWheel = "MouseScrollWheel"; /// /// 键盘水平输入 /// public static string Horizontal = "Horizontal"; /// /// 键盘垂直输入 /// public static string Vertical = "Vertical"; /// /// 键盘上下输入 /// public static string UpperLower = "UpperLower"; } /// /// 输入按键类型 /// public static class InputKeyType { /// /// 鼠标左键 /// public static string MouseLeft = "MouseLeft"; /// /// 鼠标右键 /// public static string MouseRight = "MouseRight"; /// /// 鼠标中键 /// public static string MouseMiddle = "MouseMiddle"; } }