Exemple #1
0
 //input processing
 protected void ProcessTap(InputController.GestureData gestureData)
 {
     touchText.text = $"Tap. ID: {gestureData.fingerId}, Position: {gestureData.endPosition}, Time: {gestureData.time}";
     if (_isCameraMoving)
     {
         _stopCamera = true;
     }
     else
     {
         LifeNode node = GridSystem.Instance.GetNode(GridSystem.Instance.GetTilemapCoordsFromScreen(gestureData.endPosition)) as LifeNode;
         if (node != null)
         {
             if (TapMode == ETapMode.Spawn)
             {
                 SpawnLife(node);
             }
             else if (TapMode == ETapMode.Remove)
             {
                 RemoveLife(node);
             }
             else
             {
                 NodeInfo.gameObject.SetActive(false);
                 NodeInfo.transform.position = gestureData.endPosition;
                 NodeInfo.SetNode(node);
                 NodeInfo.gameObject.SetActive(true);
             }
         }
     }
 }
Exemple #2
0
    protected void ProcessSwipe(InputController.GestureData gestureData)
    {
        touchText.text = $"Swipe. ID: {gestureData.fingerId}, Position: {gestureData.endPosition}, Time: {gestureData.time}";
        Vector3 direction = new Vector3(gestureData.startPosition.x - gestureData.endPosition.x, gestureData.startPosition.y - gestureData.endPosition.y, 0).normalized;

        _isCameraMoving = true;
        StartCoroutine(CameraSwipe(direction));
    }
Exemple #3
0
    protected void ProcessDrag(InputController.GestureData gestureData)
    {
        Vector3 lastPosition = MainCamera.ScreenToWorldPoint(new Vector3(gestureData.endPosition.x - gestureData.deltaPosition.x,
                                                                         gestureData.endPosition.y - gestureData.deltaPosition.y,
                                                                         MainCamera.nearClipPlane));
        Vector3 endPos = MainCamera.ScreenToWorldPoint(new Vector3(gestureData.endPosition.x, gestureData.endPosition.y, MainCamera.nearClipPlane));

        MainCamera.transform.position = CheckMapBounds(MainCamera.transform.position + (lastPosition - endPos));
        touchText.text = $"Drag. ID: {gestureData.fingerId}, Position: {gestureData.endPosition}, Time: {gestureData.time}\n" +
                         $"LastWorldPosition: {lastPosition}, EndWorldPosition: {endPos}, CameraPosition: {MainCamera.transform.position}";
    }