Я хочу сделать так, чтобы мой персонаж мог двигать объекты при определённых условиях, иначе объект, который надо двигать не будет сдвинут с места, но у меня не получается правильно написать код.
Код
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);
}
}