public static bool AvailableAnimalCart(Vehicle_Cart cart) { Pawn Driver = (cart.TryGetComp <CompMountable>().IsMounted) ? cart.TryGetComp <CompMountable>().Driver : null; if (Driver == null) { return(false); } return(Driver.RaceProps.Animal && PawnUtility.CasualInterruptibleNow(Driver) && Driver.needs.food.CurCategory < HungerCategory.Starving && Driver.needs.rest.CurCategory < RestCategory.VeryTired && !Driver.health.ShouldBeTendedNow); }