private void DPadTapped(FingersDPadScript script, FingersDPadItem item, TapGestureRecognizer gesture) { if (item == FingersDPadItem.Center) { Mover.transform.position = startPos; } }
private void DPadTapped(FingersDPadScript script, FingersDPadItem item, TapGestureRecognizer gesture) { if ((item & FingersDPadItem.Center) != FingersDPadItem.None) { GameObject mover = (script == DPadScript ? Mover : Mover2); mover.transform.position = (script == DPadScript ? startPos : startPos2); } }
private void CheckForOverlap <T>(Vector2 point, T gesture, System.Action <FingersDPadScript, FingersDPadItem, T> action) where T : DigitalRubyShared.GestureRecognizer { if (action == null) { return; } FingersDPadItem item = FingersDPadItem.None; int count = Physics2D.OverlapCircleNonAlloc(point, DeviceInfo.UnitsToPixels(TouchRadiusInUnits), overlap); float horizontal = 0.0f; float vertical = 0.0f; for (int i = 0; i < count; i++) { if (overlap[i].gameObject == DPadCenterImageSelected.gameObject) { DPadCenterImageSelected.enabled = true; item |= FingersDPadItem.Center; } if (overlap[i].gameObject == DPadRightImageSelected.gameObject) { DPadRightImageSelected.enabled = true; item |= FingersDPadItem.Right; horizontal = 1.0f; } if (overlap[i].gameObject == DPadDownImageSelected.gameObject) { DPadDownImageSelected.enabled = true; item |= FingersDPadItem.Down; vertical = -1.0f; } if (overlap[i].gameObject == DPadLeftImageSelected.gameObject) { DPadLeftImageSelected.enabled = true; item |= FingersDPadItem.Left; horizontal = -1.0f; } if (overlap[i].gameObject == DPadUpImageSelected.gameObject) { DPadUpImageSelected.enabled = true; item |= FingersDPadItem.Up; vertical = 1.0f; } } if (item != FingersDPadItem.None) { action(this, item, gesture); if (horizontal != 0.0f && crossPlatformInputHorizontalAxisObject != null) { FingersCrossPlatformInputReflectionScript.UpdateVirtualAxis(crossPlatformInputHorizontalAxisObject, horizontal); } if (vertical != 0.0f && crossPlatformInputVerticalAxisObject != null) { FingersCrossPlatformInputReflectionScript.UpdateVirtualAxis(crossPlatformInputVerticalAxisObject, vertical); } } }
private void CheckForOverlap <T>(Vector2 point, T gesture, System.Action <FingersDPadScript, FingersDPadItem, T> action) where T : DigitalRubyShared.GestureRecognizer { if (action == null) { return; } FingersDPadItem item = FingersDPadItem.None; int count = Physics2D.OverlapCircleNonAlloc(point, DeviceInfo.UnitsToPixels(TouchRadiusInUnits), overlap); for (int i = 0; i < count; i++) { if (overlap[i].gameObject == DPadCenterImageSelected.gameObject) { DPadCenterImageSelected.enabled = true; item |= FingersDPadItem.Center; } if (overlap[i].gameObject == DPadRightImageSelected.gameObject) { DPadRightImageSelected.enabled = true; item |= FingersDPadItem.Right; } if (overlap[i].gameObject == DPadDownImageSelected.gameObject) { DPadDownImageSelected.enabled = true; item |= FingersDPadItem.Down; } if (overlap[i].gameObject == DPadLeftImageSelected.gameObject) { DPadLeftImageSelected.enabled = true; item |= FingersDPadItem.Left; } if (overlap[i].gameObject == DPadUpImageSelected.gameObject) { DPadUpImageSelected.enabled = true; item |= FingersDPadItem.Up; } } if (item != FingersDPadItem.None) { action(this, item, gesture); } }
private void DPadPanned(FingersDPadScript script, FingersDPadItem item, PanGestureRecognizer gesture) { Vector3 pos = Mover.transform.position; float move = Speed * Time.deltaTime; if ((item & FingersDPadItem.Right) != FingersDPadItem.None) { pos.x += move; } if ((item & FingersDPadItem.Left) != FingersDPadItem.None) { pos.x -= move; } if ((item & FingersDPadItem.Up) != FingersDPadItem.None) { pos.y += move; } if ((item & FingersDPadItem.Down) != FingersDPadItem.None) { pos.y -= move; } Mover.transform.position = pos; }
private void DPadPanned(FingersDPadScript script, FingersDPadItem item, PanGestureRecognizer gesture) { Vector3 pos = Mover.transform.position; switch (item) { case FingersDPadItem.Up: pos.y += Speed * Time.deltaTime; break; case FingersDPadItem.Right: pos.x += Speed * Time.deltaTime; break; case FingersDPadItem.Down: pos.y -= Speed * Time.deltaTime; break; case FingersDPadItem.Left: pos.x -= Speed * Time.deltaTime; break; } Mover.transform.position = pos; }