private void CmdCheckAndUse() { RaycastHit hit; if (Physics.Raycast(cam.transform.position, cam.transform.forward, out hit, 2.0f)) { BaseUsable usable = hit.transform.GetComponent <BaseUsable>(); if (usable != null) { usable.SendMessage("CmdUse"); } VehicleController vehicleController = hit.transform.GetComponent <VehicleController>(); if (vehicleController != null) { vehicleController.CmdEnterVehicle(gameObject); } } }