Example #1
0
    public void ProccesHold(InputController.MouseData data)
    {
        if (_activeCard == null)
        {
            return;
        }
        //check availability
        Ray          ray     = Camera.main.ScreenPointToRay(data.StartPosition);
        RaycastHit2D hitInfo = Physics2D.Raycast(ray.origin, ray.direction, Camera.main.farClipPlane, LayerMask.GetMask("ActiveCard"));

        //Debug.Log($"ProcessHold Hit {hitInfo.collider != null}");
        if (hitInfo.collider != null)
        {
            Card card = hitInfo.collider.gameObject.GetComponent <Card>();
            card.SetProgressValue(Mathf.Clamp01(data.Time / _secsToTake));
            //Debug.Log($"On card click {card.gameObject.name}");
            if (data.Time > _secsToTake)
            {
                Debug.Log($"Hold ended {card.gameObject.name}");
                _players[_playerNoTurn].InsertCard(card);
                //card.Flip();
                _activeCard = null;
                EndTurn();
            }
        }
    }
Example #2
0
    public void ProcessClick(InputController.MouseData data)
    {
        Ray       ray = Camera.main.ScreenPointToRay(data.StartPosition);
        LayerMask layerMask;

        if (_activeCard == null)
        {
            layerMask = LayerMask.GetMask("Cards");
        }
        else
        {
            layerMask = LayerMask.GetMask("ActiveCard");
        }
        RaycastHit2D hitInfo = Physics2D.Raycast(ray.origin, ray.direction, Camera.main.farClipPlane, layerMask);

        //Debug.DrawLine(ray.origin, ray.origin + ray.direction * Camera.main.farClipPlane, Color.green, 10f);
        Debug.Log($"ProcessClick ActiveCard {_activeCard != null} Hit {hitInfo.collider != null}");
        if (hitInfo.collider != null)
        {
            Card card = hitInfo.collider.gameObject.GetComponent <Card>();
            Debug.Log($"On card click {card.gameObject.name}");
            card.Flip();
            if (_activeCard != null)
            {
                _activeCard = null;
                EndTurn();
            }
            else
            {
                _activeCard = card;
            }
        }
    }