Я хочу сделать так, чтобы мой персонаж мог двигать объекты при определённых условиях, иначе объект, который надо двигать не будет сдвинут с места, но у меня не получается правильно написать код.
Код
public float pushForce = 10f; // сила толчка
        private bool canPush = false; // можно ли толкать объект
        private void OnCollisionStay(Collision collision)
        {
            if (collision.gameObject.CompareTag("Player") && PlayerTransform.FormEarth.activeInHierarchy)
            {
                canPush = true;
            }
        }
        private void OnCollisionExit(Collision collision)
        {
            if (collision.gameObject.CompareTag("Player") && PlayerTransform.FormEarth.activeInHierarchy)
            {
                canPush = false;
            }
        }
        private void FixedUpdate()
        {
            if (canPush)
            {
                GetComponent<Rigidbody>().AddForce(transform.forward * pushForce, ForceMode.Impulse);
            }
        }