void ComputeSwipeDirection(Vector2 initialPosition, Vector2 currentPosition) { InfoOnTouch infoOnTouch = new InfoOnTouch(); Vector2 helperVector = currentPosition - initialPosition; if (Mathf.Abs(helperVector.x) > Mathf.Abs(helperVector.y)) { if (Math.Sign(helperVector.x) == -1) { infoOnTouch.Swipe = SwipeDirection.LEFT; } else { infoOnTouch.Swipe = SwipeDirection.RIGHT; } infoOnTouch.DistanceSwiped = helperVector.x; } else { if (Math.Sign(helperVector.y) == -1) { infoOnTouch.Swipe = SwipeDirection.DOWN; } else { infoOnTouch.Swipe = SwipeDirection.UP; } infoOnTouch.DistanceSwiped = helperVector.y; } OnTouchEvent?.Invoke(this, infoOnTouch); }
public bool RegisterTouchEvent(OnTouchEvent newTouchEvent) { if (!TouchEvents.Contains(newTouchEvent)) { TouchEvents.Add(newTouchEvent); return(true); } return(false); }
public void DisableTouchController(bool t_ResetTouchEvents = false) { enabled = false; if (t_ResetTouchEvents) { OnTouchDown = null; OnTouch = null; OnTouchUp = null; } }
void FixedUpdate() { if (Input.touchCount > 0) { touch = Input.GetTouch(0); if (lastTouchPositionX.Equals(0f)) { lastTouchPositionX = touch.position.x; } else { ratio = (touch.position.x - lastTouchPositionX) / Screen.width; lastTouchPositionX = touch.position.x; OnTouchEvent?.Invoke(ratio); } } else { lastTouchPositionX = 0f; } }
public override void HandShank_SetTouchEventCallback(OnTouchEvent _event) { ScHandShank_SetTouchEventCallback(_event); }
public static extern void ScHandShank_SetTouchEventCallback(OnTouchEvent _event);
public void OnTouchAction(Element element, TouchActionEventArgs args) { OnTouchEvent?.Invoke(element, args); }
public void SubscribeTouchBegin(OnTouchEvent newDelegate) { onTouchBegin += newDelegate; }
void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) => OnTouchEvent?.Invoke(new TouchEvent(TouchState.Enter, Stone));
void IPointerUpHandler.OnPointerUp(PointerEventData eventData) => OnTouchEvent?.Invoke(new TouchEvent(TouchState.Up, Stone));
void IPointerDownHandler.OnPointerDown(PointerEventData eventData) => OnTouchEvent?.Invoke(new TouchEvent(TouchState.Down, Stone));
protected virtual void OnTouchElement(IElement element, SKTouchEventArgs e) { OnTouchEvent?.Invoke(element, e); }
public void UnsubscribeTouchBegin(OnTouchEvent leaveEvent) { onTouchBegin -= leaveEvent; }
public void Unsubscribe(OnTouchEvent leaveEvent) { onTouchComplete -= leaveEvent; }
public virtual void HandShank_SetTouchEventCallback(OnTouchEvent _event) { }
public bool RemoveTouchEvent(OnTouchEvent touchEvent) { return(TouchEvents.Remove(touchEvent)); }
public void Subscribe(OnTouchEvent newDelegate) { onTouchComplete += newDelegate; }