using UnityEngine; public class PlayerGrabber : MonoBehaviour { public float grabDistance = 2f; private CartGrabAndHold heldCart; void Update() { if (Input.GetKeyDown(KeyCode.E)) { if (heldCart == null) { TryGrabCart(); } else { heldCart.ReleaseCart(); heldCart = null; } } if (heldCart != null) { heldCart.HoldCart(); } } void TryGrabCart() { Ray ray = new Ray(transform.position, transform.forward); RaycastHit hit; if (Physics.Raycast(ray, out hit, grabDistance)) { CartGrabAndHold cart = hit.collider.GetComponent(); if (cart != null) { heldCart = cart; cart.GrabCart(transform); } } } }