Beispiel #1
0
        private void OnTriggerStay2D(Collider2D other)
        {
            if (_attemptGrab == false)
            {
                return;
            }
            if (other.GetComponent <Segment>() != null)
            {
                return;
            }

            if (other.gameObject.CompareTag("UnGrabbable"))
            {
                return;
            }

            var rbOther = other.GetComponent <Rigidbody2D>();

            if (rbOther != null)
            {
                _spriteRenderer.color    = CLOSED_COLOR;
                _grabJoint.enabled       = true;
                _grabJoint.connectedBody = rbOther;
                ChangedGrabbedStateEvent?.Invoke(true);
            }
        }
Beispiel #2
0
 public void CeaseToGrab()
 {
     _attemptGrab          = false;
     _spriteRenderer.color = OpenColor;
     if (_grabJoint.connectedBody != null)
     {
         _grabJoint.connectedBody = null;
         _grabJoint.enabled       = false;
         ChangedGrabbedStateEvent?.Invoke(false);
     }
 }