I wouldn't use RFC(0), but instead would suggest just using the function's name instead. Also note that collider.GetComponent implies that TNObject is on the collider. Generally it's on the rigidbody instead, so it would be collider.GetComponentInChildren<TNObject>() instead.