using System; using System.Collections.Generic; using UnityEngine; // Token: 0x02000179 RID: 377 public class UnityInput : MonoBehaviour { // Token: 0x17000168 RID: 360 // (get) Token: 0x06000AB2 RID: 2738 RVA: 0x0002F0C4 File Offset: 0x0002D2C4 protected bool IsPush { get { return this.m_isPush; } } // Token: 0x17000169 RID: 361 // (get) Token: 0x06000AB3 RID: 2739 RVA: 0x0002F0CC File Offset: 0x0002D2CC protected Vector2 PushPosition { get { return this.m_posNow; } } // Token: 0x1700016A RID: 362 // (get) Token: 0x06000AB4 RID: 2740 RVA: 0x0002F0D4 File Offset: 0x0002D2D4 protected Vector2 StartPosition { get { return this.m_posStart; } } // Token: 0x1700016B RID: 363 // (get) Token: 0x06000AB5 RID: 2741 RVA: 0x0002F0DC File Offset: 0x0002D2DC protected Vector2 EndPosition { get { return this.m_posEnd; } } // Token: 0x1700016C RID: 364 // (get) Token: 0x06000AB6 RID: 2742 RVA: 0x0002F0E4 File Offset: 0x0002D2E4 protected Vector2 DeltaPosition { get { if (this.m_posOld.Count < 2) { return new Vector2(0f, 0f); } Queue queue = new Queue(); bool flag = true; Vector2 b = new Vector2(0f, 0f); foreach (Vector2 vector in this.m_posOld) { if (flag) { flag = false; } else { queue.Enqueue(vector - b); } b = vector; } Vector2 a = new Vector2(0f, 0f); foreach (Vector2 b2 in queue) { a += b2; } return a / (float)queue.Count; } } // Token: 0x1700016D RID: 365 // (get) Token: 0x06000AB7 RID: 2743 RVA: 0x0002F218 File Offset: 0x0002D418 protected Vector2 StartDeltaPosition { get { return this.m_posNow - this.m_posStart; } } // Token: 0x1700016E RID: 366 // (get) Token: 0x06000AB8 RID: 2744 RVA: 0x0002F22C File Offset: 0x0002D42C // (set) Token: 0x06000AB9 RID: 2745 RVA: 0x0002F234 File Offset: 0x0002D434 //private protected TOUCH_STATE State { //protected get { return this.m_eState; } //private set { this.m_eState = value; } } // Token: 0x1700016F RID: 367 // (get) Token: 0x06000ABA RID: 2746 RVA: 0x0002F240 File Offset: 0x0002D440 public int Width { get { return this.m_Width; } } // Token: 0x17000170 RID: 368 // (get) Token: 0x06000ABB RID: 2747 RVA: 0x0002F248 File Offset: 0x0002D448 public int Height { get { return this.m_Height; } } // Token: 0x17000171 RID: 369 // (get) Token: 0x06000ABC RID: 2748 RVA: 0x0002F250 File Offset: 0x0002D450 // (set) Token: 0x06000ABD RID: 2749 RVA: 0x0002F258 File Offset: 0x0002D458 public bool IsOnePushDelete { get; set; } // Token: 0x06000ABE RID: 2750 RVA: 0x0002F264 File Offset: 0x0002D464 public void Awake() { this.m_Width = Screen.width; this.m_Height = Screen.height; Input.simulateMouseWithTouches = true; this.IsOnePushDelete = false; } // Token: 0x06000ABF RID: 2751 RVA: 0x0002F28C File Offset: 0x0002D48C public void Update() { if (this.IsOnePushDelete) { this.m_isPush = false; this.State = TOUCH_STATE.NULL; if (!Input.GetMouseButton(0)) { this.IsOnePushDelete = false; } return; } Vector2 vector = new Vector2(Input.mousePosition.x, (float)this.m_Height - Input.mousePosition.y); if (Input.GetMouseButton(0)) { this.UpdateNowPos(vector); this.m_isPush = true; if (Input.GetMouseButtonDown(0)) { this.m_posStart = vector; this.ResetOld(); this.State = TOUCH_STATE.PUSH; this.m_fMax = 0f; } else { float magnitude = this.DeltaPosition.magnitude; if (magnitude > this.m_fMax) { this.m_fMax = magnitude; } if (magnitude > 0f) { if (this.State != TOUCH_STATE.DRAG) { this.State = TOUCH_STATE.DRAG; } } else if (this.State != TOUCH_STATE.DRAG) { this.State = TOUCH_STATE.PUSH; } } } else if (Input.GetMouseButtonUp(0)) { this.UpdateNowPos(vector); this.m_isPush = false; this.CalcEndState(); this.m_fMax = 0f; } else { this.Clear(); } } // Token: 0x06000AC0 RID: 2752 RVA: 0x0002F3D0 File Offset: 0x0002D5D0 private void UpdateNowPos(Vector2 now) { this.m_posNow = now; if (this.m_posOld.Count > 4) { this.m_posOld.Dequeue(); } this.m_posOld.Enqueue(now); } // Token: 0x06000AC1 RID: 2753 RVA: 0x0002F410 File Offset: 0x0002D610 private void ResetOld() { this.m_posOld.Clear(); } // Token: 0x06000AC2 RID: 2754 RVA: 0x0002F420 File Offset: 0x0002D620 public void Clear() { this.m_posStart = new Vector2(0f, 0f); this.m_posOld.Clear(); this.m_posNow = new Vector2(0f, 0f); this.m_posEnd = new Vector2(0f, 0f); this.m_isPush = false; this.m_eState = TOUCH_STATE.NULL; } // Token: 0x06000AC3 RID: 2755 RVA: 0x0002F488 File Offset: 0x0002D688 private void CalcEndState() { float magnitude = this.DeltaPosition.magnitude; float magnitude2 = this.StartDeltaPosition.magnitude; if (magnitude > 32f) { this.State = TOUCH_STATE.FLICK; this.m_posEnd = this.m_posNow; } else if (magnitude2 < 16f && this.m_fMax < 16f) { this.State = TOUCH_STATE.CLICK; this.m_posEnd = this.m_posNow; } else { this.State = TOUCH_STATE.DRAG_END; this.m_posEnd = this.m_posNow; } } // Token: 0x06000AC4 RID: 2756 RVA: 0x0002F51C File Offset: 0x0002D71C public void ResetStartPosition() { if (this.IsPush) { this.m_posStart = this.m_posNow; } } // Token: 0x06000AC5 RID: 2757 RVA: 0x0002F538 File Offset: 0x0002D738 private void SetLeaveEvent() { this.m_posEnd = this.m_posNow; this.State = TOUCH_STATE.NULL; } // Token: 0x040008A7 RID: 2215 private const int DEF_OLD_BUF = 4; // Token: 0x040008A8 RID: 2216 private const float DEF_FLICK_DELTA = 32f; // Token: 0x040008A9 RID: 2217 private const float DEF_CLICK_DELTA = 16f; // Token: 0x040008AA RID: 2218 private Vector2 m_posStart = default(Vector2); // Token: 0x040008AB RID: 2219 private Queue m_posOld = new Queue(); // Token: 0x040008AC RID: 2220 private Vector2 m_posNow = default(Vector2); // Token: 0x040008AD RID: 2221 private Vector2 m_posEnd = default(Vector2); // Token: 0x040008AE RID: 2222 private float m_fMax; // Token: 0x040008AF RID: 2223 private bool m_isPush; // Token: 0x040008B0 RID: 2224 private TOUCH_STATE m_eState; // Token: 0x040008B1 RID: 2225 private int m_Width; // Token: 0x040008B2 RID: 2226 private int m_Height; }