public bool HasConnectionToControl(Vessel vessel)
        {
            if (!IsEnabled)
                return true;

            // IsConnected is only set to true on the active vessel, so we have to manually
            // call the FindHome method to evaluate the home connection.

            // WARNING: In stock this will only work for vessels with a relay antenna installed.
            // This is a limitation put in place to improve performance in the stock game, and
            // there isn't a very good way around it.
            if (!vessel.isActiveVessel)
            {
                var net = CommNetNetwork.Instance.CommNet;
                tempPath = new CommPath();
                net.FindClosestControlSource(vessel.Connection.Comm, tempPath);
                return tempPath.signalStrength > 0 || vessel.CurrentControlLevel >= Vessel.ControlLevel.PARTIAL_MANNED;
            }
            return vessel.Connection.IsConnected || vessel.CurrentControlLevel >= Vessel.ControlLevel.PARTIAL_MANNED;
        }
        public bool HasConnection(Vessel vessel1, Vessel vessel2)
        {
            if (!IsEnabled)
                return true;

            // We next need to query the network to find a connection between the two vessels.
            // I found no exposed method for accessing chached paths directly, other than the
            // control path.

            // WARNING: In stock this will only work for vessels with a relay antenna installed.
            // This is a limitation put in place to improve performance in the stock game, and
            // there isn't a very good way around it.
            var net = CommNetNetwork.Instance.CommNet;
            tempPath = new CommPath();
            return net.FindPath(vessel1.Connection.Comm, tempPath, vessel2.Connection.Comm) || net.FindPath(vessel2.Connection.Comm, tempPath, vessel1.Connection.Comm);
        }