public void LetGo(IReceptacle rec = null) { isGrabbed = false; rb.simulated = true; col.enabled = true; som.enabled = true; transform.SetParent(null); rec?.PlaceObject(transform); }
IReceptacle GetNearestReceptacle() { IReceptacle result = null; if (heldItem == null) { return(result); } hits = Physics2D.OverlapCircleAll(transform.position, 0.6f, receptacleLayers).OrderBy(GrabOrderFunc).ToArray(); foreach (Collider2D col in hits) { result = col.GetComponentInParent <IReceptacle>(); if (result != null) { break; } } return(result); }