public void PickUp(IGrabbable grabbable) { if (currentGrabbable != null) { // TODO - What should happen if the beam is told to pick something up when it is already holding something? grabbable.OnDropped(); return; } grabbable.OnPickedUp(); beamConnector.connectedBody = grabbable.GrabbableBody; currentGrabbable = grabbable; beamCollider.enabled = false; }