public override void Notify_QuestSignalReceived(Signal signal)
        {
            base.Notify_QuestSignalReceived(signal);
            if (signal.tag != inSignal)
            {
                return;
            }

            // fix for early versions saving ship as reference which results in it not loading
            if (requester == null && Find.CurrentMap != null)
            {
                requester = IncidentWorkerTraderShip.MakeTraderShip(Find.CurrentMap);
            }

            CompShip comp = requester.TryGetComp <CompShip>();

            if (comp != null)
            {
                comp.tradeRequest = this;
            }

            IncidentWorkerTraderShip.LandShip(map, requester);

            requester = null;
        }
        public override void Cleanup()
        {
            base.Cleanup();

            CompShip comp = requester?.TryGetComp <CompShip>();

            if (comp != null)
            {
                comp.tradeRequest = null;
            }
        }
        public override void Notify_QuestSignalReceived(Signal signal)
        {
            base.Notify_QuestSignalReceived(signal);
            if (signal.tag != inSignal)
            {
                return;
            }

            CompShip comp = requester.TryGetComp <CompShip>();

            if (comp != null)
            {
                comp.tradeRequest = this;
            }

            IncidentWorkerTraderShip.LandShip(map, requester);
        }