2026-03-28 인벤토리 90%
This commit is contained in:
90
Assets/HighlightPlus/Runtime/Scripts/InputProxy.cs
Normal file
90
Assets/HighlightPlus/Runtime/Scripts/InputProxy.cs
Normal file
@@ -0,0 +1,90 @@
|
||||
using UnityEngine;
|
||||
|
||||
#if ENABLE_INPUT_SYSTEM && !ENABLE_LEGACY_INPUT_MANAGER
|
||||
using UnityEngine.InputSystem;
|
||||
using UnityEngine.InputSystem.Controls;
|
||||
using EnhancedTouch = UnityEngine.InputSystem.EnhancedTouch;
|
||||
#endif
|
||||
|
||||
namespace HighlightPlus {
|
||||
|
||||
public static class InputProxy {
|
||||
|
||||
#if ENABLE_INPUT_SYSTEM && !ENABLE_LEGACY_INPUT_MANAGER
|
||||
|
||||
static Vector3 lastPointerPosition;
|
||||
|
||||
public static void Init() {
|
||||
if (!EnhancedTouch.EnhancedTouchSupport.enabled) {
|
||||
EnhancedTouch.EnhancedTouchSupport.Enable();
|
||||
}
|
||||
}
|
||||
|
||||
public static Vector3 mousePosition {
|
||||
get {
|
||||
if (touchCount > 0) {
|
||||
lastPointerPosition = EnhancedTouch.Touch.activeTouches[0].screenPosition;
|
||||
} else {
|
||||
Mouse m = Mouse.current;
|
||||
if (m != null) {
|
||||
lastPointerPosition = m.position.ReadValue();
|
||||
}
|
||||
}
|
||||
return lastPointerPosition;
|
||||
}
|
||||
}
|
||||
|
||||
public static bool GetMouseButtonDown(int buttonIndex) {
|
||||
if (touchCount > 0) {
|
||||
return EnhancedTouch.Touch.activeTouches[0].phase == UnityEngine.InputSystem.TouchPhase.Began;
|
||||
} else {
|
||||
Mouse m = Mouse.current;
|
||||
if (m == null) return false;
|
||||
switch (buttonIndex) {
|
||||
case 1: return m.rightButton.wasPressedThisFrame;
|
||||
case 2: return m.middleButton.wasPressedThisFrame;
|
||||
default: return m.leftButton.wasPressedThisFrame;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static int touchCount { get { return EnhancedTouch.Touch.activeTouches.Count; } }
|
||||
|
||||
public static int GetFingerIdFromTouch(int touchIndex) {
|
||||
EnhancedTouch.Touch touch = EnhancedTouch.Touch.activeTouches[touchIndex];
|
||||
return touch.finger.index;
|
||||
}
|
||||
|
||||
public static bool GetKeyDown(string name) {
|
||||
return ((KeyControl)Keyboard.current[name]).wasPressedThisFrame;
|
||||
}
|
||||
|
||||
#else
|
||||
public static void Init() {}
|
||||
|
||||
public static Vector3 mousePosition {
|
||||
get {
|
||||
return Input.mousePosition;
|
||||
}
|
||||
}
|
||||
|
||||
public static bool GetMouseButtonDown(int buttonIndex) {
|
||||
return Input.GetMouseButtonDown(buttonIndex);
|
||||
}
|
||||
|
||||
public static int touchCount {
|
||||
get { return Input.touchCount; }
|
||||
}
|
||||
|
||||
public static int GetFingerIdFromTouch(int touchIndex) {
|
||||
return Input.GetTouch(touchIndex).fingerId;
|
||||
}
|
||||
|
||||
public static bool GetKeyDown(string name) {
|
||||
return Input.GetKeyDown(name);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user