Example #1
0
    private void OnTriggerExit2D(Collider2D other)
    {
        IGraberable tempGrable = other.GetComponent <IGraberable>();

        if (tempGrable != null)
        {
            _graberable = null;
        }
    }
Example #2
0
    private void DropBody()
    {
        bool droped = _grabedBody.Drop(gameObject);

        if (!droped)
        {
            return;
        }

        _grabedBody.body.transform.SetParent(null);
        _grabedBody.body.bodyType = RigidbodyType2D.Dynamic;
        _grabedBody.body.velocity = playerRb.velocity;
        _grabedBody.body.GetComponent <Collider2D>().enabled = true;

        _grabedBody = null;
    }
Example #3
0
    private void GrabBody()
    {
        bool grabed = _graberable.Grab(gameObject);

        if (!grabed)
        {
            return;
        }

        _grabedBody = _graberable;
        _grabedBody.body.transform.SetParent(hand.transform);
        _grabedBody.body.transform.localPosition = Vector2.zero;
        _grabedBody.body.velocity        = Vector2.zero;
        _grabedBody.body.angularVelocity = 0;
        _grabedBody.body.bodyType        = RigidbodyType2D.Kinematic;

        _grabedBody.body.GetComponent <Collider2D>().enabled = false;
    }