예제 #1
0
 public SictWindowInventoryVerknüpfungMitOverview(
     VonSensor.WindowInventoryPrimary WindowInventory,
     KeyValuePair <VonSensor.TreeViewEntry, VonSensor.OverviewZaile[]>[] LinxTreeMengeZuEntryMengeKandidaatOverviewZaile,
     VonSensor.OverviewZaile[] ZuAuswaalReczMengeKandidaatOverviewZaile)
 {
     this.WindowInventory = WindowInventory;
     this.LinxTreeMengeZuEntryMengeKandidaatOverviewZaile = LinxTreeMengeZuEntryMengeKandidaatOverviewZaile;
     this.ZuAuswaalReczMengeKandidaatOverviewZaile        = ZuAuswaalReczMengeKandidaatOverviewZaile;
 }
예제 #2
0
        public SictAufgaabeParamZerleegungErgeebnis ZerleegeShipAktuelOpenCargoLeereTyp(
            ISictAutomatZuusctand AutomaatZuusctand,
            SictShipCargoTypSictEnum CargoTyp)
        {
            VonSensor.WindowInventoryPrimary ErgeebnisWindowShipInventory = null;
            VonSensor.Inventory ErgeebnisShipInventory = null;

            return(ZerleegeShipAktuelOpenCargoLeereTyp(
                       AutomaatZuusctand,
                       CargoTyp,
                       out ErgeebnisWindowShipInventory,
                       out ErgeebnisShipInventory));
        }
예제 #3
0
        static public SictWindowInventoryVerknüpfungMitOverview Ersctele(
            VonSensor.WindowInventoryPrimary WindowInventory,
            VonSensor.OverviewZaile[] MengeOverviewZaile)
        {
            var LinxTreeMengeZuEntryMengeKandidaatOverviewZaile = new List <KeyValuePair <VonSensor.TreeViewEntry, VonSensor.OverviewZaile[]> >();

            var LinxTreeListeEntry = (null == WindowInventory) ? null : WindowInventory.LinxTreeListeEntry;

            if (null != LinxTreeListeEntry && null != MengeOverviewZaile)
            {
                foreach (var LinxTreeEntry in LinxTreeListeEntry)
                {
                    if (null == LinxTreeEntry)
                    {
                        continue;
                    }

                    var TreeEntryObjektName = LinxTreeEntry.LabelTextTailObjektName;
                    var TreeEntryObjektDistanceSictString = LinxTreeEntry.LabelTextTailObjektDistance;
                    var LinxTreeEntryTopContIconColor     = LinxTreeEntry.TopContIconColor;

                    if (null == TreeEntryObjektName)
                    {
                        continue;
                    }

                    Int64?TreeEntryObjektDistanceScrankeMin;
                    Int64?TreeEntryObjektDistanceScrankeMax;

                    TempAuswertGbs.Extension.AusDistanceSictStringAbbildGanzzaalDurcMeeter(
                        TreeEntryObjektDistanceSictString, out TreeEntryObjektDistanceScrankeMin, out TreeEntryObjektDistanceScrankeMax);

                    var FürEntryMengeOverviewZaile = MengeOverviewZaile.Take(0).ToList();

                    foreach (var OverviewZaile in MengeOverviewZaile)
                    {
                        if (null == OverviewZaile)
                        {
                            continue;
                        }

                        var OverviewZaileAusOverviewZaile = OverviewZaile;

                        if (null == OverviewZaileAusOverviewZaile)
                        {
                            continue;
                        }

                        /*
                         * 2014.04.28
                         * Beobactung Probleem in Test:
                         * \\rs211275.rs.hosteurope.de\Optimat.Demo 0 .Berict\Berict\Berict.Nuzer\[ZAK=2014.04.28.00.53.21,NB=1].Anwendung.Berict
                         * Agent.Name:"Rulie Isoryn"
                         * Agent.Level:1
                         * Mission.Titel:"Unauthorized Military Presence"
                         *
                         * OverviewZaile Type und Name geegenüüber bisherige Tests vertausct:
                         *
                         * TreeEntryObjektName="Caldari Personnel Transport Wreck"
                         * OverviewZaileAusOverviewZaile.AusZaileTypeWert="Caldari Personnel Transport Wreck"
                         * OverviewZaileAusOverviewZaile.AusZaileNameWert="Caldari Medium Wreck"
                         *
                         * if (!string.Equals(OverviewZaileAusOverviewZaile.AusZaileNameWert, TreeEntryObjektName))
                         * {
                         *      continue;
                         * }
                         * */

                        bool TreeEntryObjektNamePasend = false;

                        if (string.Equals(TreeEntryObjektName, OverviewZaileAusOverviewZaile.Type, StringComparison.InvariantCultureIgnoreCase))
                        {
                            TreeEntryObjektNamePasend = true;
                        }

                        if (string.Equals(TreeEntryObjektName, OverviewZaileAusOverviewZaile.Name, StringComparison.InvariantCultureIgnoreCase))
                        {
                            TreeEntryObjektNamePasend = true;
                        }

                        if (!TreeEntryObjektNamePasend)
                        {
                            continue;
                        }

                        if (!(OverviewZaile.DistanceMax < (TreeEntryObjektDistanceScrankeMin * 11) / 10 + 100) ||
                            !(OverviewZaile.DistanceMin > (TreeEntryObjektDistanceScrankeMax * 10) / 11 - 100))
                        {
                            continue;
                        }

                        var AusOverviewIconMainColor = OverviewZaileAusOverviewZaile.IconMainColor;

                        var HueDistanz = FarbeARGB.HueDistanzMiliBerecne(AusOverviewIconMainColor, LinxTreeEntryTopContIconColor);

                        if (!(Optimat.Glob.Betraag(HueDistanz) < 10))
                        {
                            /*
                             * 16.04.26
                             * Seems color in inventory does not anymore match color in overview.
                             *
                             * //	Farbtoon mus sco äänlic sain.
                             * continue;
                             */
                        }

                        FürEntryMengeOverviewZaile.Add(OverviewZaile);
                    }

                    LinxTreeMengeZuEntryMengeKandidaatOverviewZaile.Add(new KeyValuePair <VonSensor.TreeViewEntry, VonSensor.OverviewZaile[]>(
                                                                            LinxTreeEntry, FürEntryMengeOverviewZaile.ToArray()));
                }
            }

            VonSensor.OverviewZaile[] ZuAuswaalReczMengeKandidaatOverviewZaile = null;

            if (null != WindowInventory)
            {
                var ZuAuswaalReczMengeKandidaatLinxTreeEntry = WindowInventory.ZuAuswaalReczMengeKandidaatLinxTreeEntry;

                if (null != ZuAuswaalReczMengeKandidaatLinxTreeEntry)
                {
                    ZuAuswaalReczMengeKandidaatOverviewZaile =
                        Bib3.Glob.ArrayAusListeListeGeflact(
                            LinxTreeMengeZuEntryMengeKandidaatOverviewZaile
                            .Where((Kandidaat) => ZuAuswaalReczMengeKandidaatLinxTreeEntry.Contains(Kandidaat.Key))
                            .Select((Kandidaat) => Kandidaat.Value));
                }
            }

            return(new SictWindowInventoryVerknüpfungMitOverview(
                       WindowInventory,
                       LinxTreeMengeZuEntryMengeKandidaatOverviewZaile.ToArray(),
                       ZuAuswaalReczMengeKandidaatOverviewZaile));
        }
예제 #4
0
        public SictAufgaabeParamZerleegungErgeebnis ZerleegeShipAktuelOpenCargoLeereTyp(
            ISictAutomatZuusctand AutomaatZuusctand,
            SictShipCargoTypSictEnum CargoTyp,
            out VonSensor.WindowInventoryPrimary ErgeebnisWindowShipInventory,
            out VonSensor.Inventory ErgeebnisShipInventory)
        {
            ErgeebnisWindowShipInventory = null;
            ErgeebnisShipInventory       = null;

            var AufgaabeParamZerleegungErgeebnis = new SictAufgaabeParamZerleegungErgeebnis();

            if (null == AutomaatZuusctand)
            {
                return(AufgaabeParamZerleegungErgeebnis);
            }

            var NuzerZaitMili = AutomaatZuusctand.NuzerZaitMili;

            var TailInventoryAuswaalZerleegungErgeebnis =
                AufgaabeParamShipAktuelOpenInventoryCargoTyp.ZerleegeShipAktuelOpenInventoryCargoTyp(
                    AutomaatZuusctand,
                    CargoTyp,
                    out ErgeebnisWindowShipInventory,
                    out ErgeebnisShipInventory);

            AufgaabeParamZerleegungErgeebnis.FüügeAn(TailInventoryAuswaalZerleegungErgeebnis);

            if (null == ErgeebnisShipInventory)
            {
                AufgaabeParamZerleegungErgeebnis.ZerleegungVolsctändigSezeAus();

                return(AufgaabeParamZerleegungErgeebnis);
            }

            if (!(TailInventoryAuswaalZerleegungErgeebnis.ListeKomponenteAufgaabeParam).IsNullOrEmpty())
            {
                return(AufgaabeParamZerleegungErgeebnis);
            }

            if (true == ErgeebnisShipInventory.SictwaiseScaintGeseztAufListNict)
            {
                //	!!!!	Meldung Warnung

                AufgaabeParamZerleegungErgeebnis.FüügeAn(
                    AufgaabeParamAndere.KonstruktInventorySezeSictTypAufList(ErgeebnisWindowShipInventory),
                    false);
            }
            else
            {
                var InventoryLinxTreeListeEntry = ErgeebnisWindowShipInventory.LinxTreeListeEntry;

                if (null != InventoryLinxTreeListeEntry)
                {
                    var LinxEntryItemHangar =
                        InventoryLinxTreeListeEntry
                        .FirstOrDefault((Kandidaat) => Regex.Match(Kandidaat.LabelText ?? "", "item hangar", RegexOptions.IgnoreCase).Success);

                    var AuswaalReczListeItem = ErgeebnisShipInventory.ListeItem;

                    if (null != AuswaalReczListeItem &&
                        null != LinxEntryItemHangar)
                    {
                        var AuswaalReczListeItemFrühesteDrai = AuswaalReczListeItem.Take(3).ToArray();

                        if (0 < AuswaalReczListeItemFrühesteDrai.Length)
                        {
                            //	zu klikende Item mit etwas zuufal auswääle
                            var AuswaalItem =
                                AuswaalReczListeItemFrühesteDrai.ElementAtOrDefault((int)((NuzerZaitMili / 100) % AuswaalReczListeItemFrühesteDrai.Length));

                            /*
                             * 2014.03.28
                             *
                             * Tail select all vorersct sctilgeleegt
                             *
                             * if (null != WindowInventoryZuusctand)
                             * {
                             *      if ((!VersuucMenuEntryKlikLezteZait.HasValue ||
                             *              VersuucMenuEntryKlikLezteZait < WindowInventoryZuusctand.BeginZait) &&
                             *              3 < AuswaalReczListeItem.Length)
                             *      {
                             *              //	Saitdeem WindowInventory ersctelt wurde, wurde noc kain Versuuc unternome ain MenuEntry zu aktiviire.
                             *
                             *              //	Versuuce ale Item auszuwääle
                             *
                             *              var AnforderungGbsMenu =
                             *                      new SictAnforderungMenuBescraibung(
                             *                              AuswaalItem,
                             *                              AnforderungLeereCargoWindowInventory,
                             *                              true,
                             *                              new SictAnforderungMenuKaskaadeAstBedingung[]{
                             *                                      new	SictAnforderungMenuKaskaadeAstBedingung("select all"),});
                             *
                             *              return new SictWirkungNaacGbsUndShipSlot(new string[] { ZwekBeginKomponente, "select all items" }, AnforderungGbsMenu);
                             *      }
                             * }
                             * *
                             * */

                            AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.KonstruktInventoryItemTransport(
                                                                         new SictInventoryItemTransport(
                                                                             ErgeebnisWindowShipInventory,
                                                                             LinxEntryItemHangar,
                                                                             new VonSensor.InventoryItem[] { AuswaalItem })));

                            if (AuswaalReczListeItem.Length <= 1)
                            {
                                AufgaabeParamZerleegungErgeebnis.ZerleegungVolsctändigSezeAin();
                            }
                        }
                    }
                }
            }

            return(AufgaabeParamZerleegungErgeebnis);
        }
예제 #5
0
        public AufgaabeParamAndere(
            SictOverViewObjektZuusctand OverViewObjektZuBearbeite = null,
            SictTargetZuusctand TargetZuBearbeite  = null,
            bool?AktioonInOverviewMaceSictbar      = null,
            string AktioonInOverviewTabZuAktiviire = null,
            SictAnforderungMenuKaskaadeAstBedingung[] MenuListeAstBedingung = null,
            Int64?DistanzAinzuscteleScrankeMin = null,
            Int64?DistanzAinzuscteleScrankeMax = null,
            bool?AktioonInRaumObjektActivate   = null,
            bool?AktioonCargoDurcsuuce         = null,
            bool?AktioonLock                              = null,
            bool?AktioonWirkungTraktor                    = null,
            bool?AktioonDroneLaunch                       = null,
            bool?AktioonDroneEngage                       = null,
            bool?AktioonDroneReturn                       = null,
            bool?AktioonUnDock                            = null,
            SictAufgaabeParam AufgaabeParam               = null,
            SictAufgaabeParamMausPfaad MausPfaad          = null,
            SictShipUiModuleReprZuusctand ModuleScalteAin = null,
            SictShipUiModuleReprZuusctand ModuleScalteAus = null,
            SictShipUiModuleReprZuusctand ModuleScalteUm  = null,
            SictShipUiModuleReprZuusctand ModuleMesungModuleButtonHint = null,
            bool?AfterburnerScalteAin            = null,
            bool?AktioonMenuBegin                = null,
            bool?AktioonMenuEntferne             = null,
            bool?AktioonNeocomMenuEntferne       = null,
            GbsElement MenuWurzelGbsObjekt       = null,
            VonSensor.MenuEntry MenuEntry        = null,
            InfoPanelTypSictEnum?InfoPanelEnable = null,
            InfoPanelTypSictEnum?InfoPanelExpand = null,
            SictAufgaabeParamGbsAstOklusioonVermaidung GbsAstOklusioonVermaidung = null,
            SictGbsWindowZuusctand WindowMinimize       = null,
            SictGbsWindowZuusctand WindowHooleNaacVorne = null,
            //	GbsElement GbsAstVerberge = null,
            SictZuInRaumObjektManööverTypEnum?ManööverAuszufüüreTyp = null,
            SictVerlaufBeginUndEndeRef <ShipUiIndicationAuswert> ManööverUnterbreceNict = null,
            bool?VorrangVorManööverUnterbreceNict = null,
            bool?GridVerlase = null,
            VonSensor.ListColumnHeader ColumnHeaderSort                = null,
            GbsListGroupedEntryZuusctand ListEntryMaceSictbar          = null,
            GbsListGroupedEntryZuusctand ListEntryExpand               = null,
            GbsListGroupedEntryZuusctand ListEntryCollapse             = null,
            GbsListGroupedEntryZuusctand ListEntryToggleExpandCollapse = null,
            SictTargetZuusctand TargetUnLock          = null,
            SictTargetZuusctand TargetInputFookusSeze = null,
            VonSensor.LobbyAgentEntry LobbyAgentEntryStartConversation = null,
            SictMissionZuusctand MissionObjectiveMese     = null,
            SictMissionZuusctand MissionStartConversation = null,
            VonSensor.InfoPanelMissionsMission MissionButtonUtilmenuObjectiveZuMese   = null,
            VonSensor.WindowAgentDialogue WindowAgentDialogueMissionAcceptOderRequest = null,
            VonSensor.WindowAgentDialogue WindowAgentDialogueMissionDecline           = null,
            SictMissionZuusctand MissionAccept         = null,
            SictMissionZuusctand MissionDecline        = null,
            SictOptimatParamFitting FittingZuApliziire = null,
            SictNaacNuzerMeldungZuEveOnline NaacNuzerMeldungZuEveOnline = null,
            string[] ZwekListeKomponenteZuusaz                           = null,
            bool?InOverviewTabFolgeViewportDurcGrid                      = null,
            SictInventoryItemTransport InventoryItemTransport            = null,
            VonSensor.WindowInventoryPrimary InventorySezeSictTypAufList = null)
            :
            base(ZwekListeKomponenteZuusaz)
        {
            this.NaacNuzerMeldungZuEveOnline = NaacNuzerMeldungZuEveOnline;

            this.OverViewObjektZuBearbaite = OverViewObjektZuBearbeite;
            this.TargetZuBearbaite         = TargetZuBearbeite;

            this.AktioonInOverviewMaceSictbar = AktioonInOverviewMaceSictbar;

            this.AktioonInOverviewTabZuAktiviire    = AktioonInOverviewTabZuAktiviire;
            this.InOverviewTabFolgeViewportDurcGrid = InOverviewTabFolgeViewportDurcGrid;

            this.MenuListeAstBedingung = MenuListeAstBedingung;

            this.AktioonUnDock = AktioonUnDock;

            this.AktioonInRaumObjektActivate = AktioonInRaumObjektActivate;
            this.AktioonCargoDurcsuuce       = AktioonCargoDurcsuuce;

            this.AktioonWirkungTraktor = AktioonWirkungTraktor;

            this.AktioonDroneLaunch = AktioonDroneLaunch;
            this.AktioonDroneEngage = AktioonDroneEngage;
            this.AktioonDroneReturn = AktioonDroneReturn;

            this.MausPfaad = MausPfaad;

            this.AktioonMenuBegin    = AktioonMenuBegin;
            this.AktioonMenuEntferne = AktioonMenuEntferne;
            this.MenuWurzelGbsObjekt = MenuWurzelGbsObjekt;
            this.MenuEntry           = MenuEntry;

            this.AktioonNeocomMenuEntferne = AktioonNeocomMenuEntferne;

            this.InfoPanelEnable = InfoPanelEnable;
            this.InfoPanelExpand = InfoPanelExpand;

            this.WindowMinimize       = WindowMinimize;
            this.WindowHooleNaacVorne = WindowHooleNaacVorne;

            //	this.GbsAstVerberge = GbsAstVerberge;

            this.DistanzAinzuscteleScrankeMin     = DistanzAinzuscteleScrankeMin;
            this.DistanzAinzuscteleScrankeMax     = DistanzAinzuscteleScrankeMax;
            this.ManööverAuszufüüreTyp            = ManööverAuszufüüreTyp;
            this.ManööverUnterbreceNict           = ManööverUnterbreceNict;
            this.VorrangVorManööverUnterbreceNict = VorrangVorManööverUnterbreceNict;

            this.GbsAstOklusioonVermaidung = GbsAstOklusioonVermaidung;

            this.ModuleScalteAin = ModuleScalteAin;
            this.ModuleScalteAus = ModuleScalteAus;
            this.ModuleScalteUm  = ModuleScalteUm;
            this.ModuleMesungModuleButtonHint = ModuleMesungModuleButtonHint;

            this.AfterburnerScalteAin = AfterburnerScalteAin;

            this.ColumnHeaderSort              = ColumnHeaderSort;
            this.ListEntryMaceSictbar          = ListEntryMaceSictbar;
            this.ListEntryExpand               = ListEntryExpand;
            this.ListEntryCollapse             = ListEntryCollapse;
            this.ListEntryToggleExpandCollapse = ListEntryToggleExpandCollapse;

            this.GridVerlase = GridVerlase;

            this.TargetUnLock          = TargetUnLock;
            this.TargetInputFookusSeze = TargetInputFookusSeze;

            this.LobbyAgentEntryStartConversation = LobbyAgentEntryStartConversation;

            this.MissionObjectiveMese                        = MissionObjectiveMese;
            this.MissionStartConversation                    = MissionStartConversation;
            this.MissionButtonUtilmenuObjectiveZuMese        = MissionButtonUtilmenuObjectiveZuMese;
            this.WindowAgentDialogueMissionAcceptOderRequest = WindowAgentDialogueMissionAcceptOderRequest;
            this.WindowAgentDialogueMissionDecline           = WindowAgentDialogueMissionDecline;
            this.MissionAccept  = MissionAccept;
            this.MissionDecline = MissionDecline;

            this.FittingZuApliziire = FittingZuApliziire;

            this.InventoryItemTransport = InventoryItemTransport;

            this.InventorySezeSictTypAufList = InventorySezeSictTypAufList;
        }
예제 #6
0
        static public SictAufgaabeParamZerleegungErgeebnis ZerleegeShipAktuelOpenInventoryCargoTyp(
            SictAutomatZuusctand AutomaatZuusctand,
            SictShipCargoTypSictEnum CargoTyp,
            out VonSensor.WindowInventoryPrimary ErgeebnisWindowShipInventory,
            out VonSensor.Inventory ErgeebnisShipInventory)
        {
            bool ZerleegungVolsctändig = true;
            var  InternMengeAufgaabeKomponenteParam = new List <SictAufgaabeParam>();

            ErgeebnisWindowShipInventory = null;
            ErgeebnisShipInventory       = null;

            VonSensor.WindowInventoryPrimary ScnapscusShipWindowInventory = null;

            var Gbs = AutomaatZuusctand.Gbs();

            var AusScnapscusAuswertungZuusctand = AutomaatZuusctand.ListeScnapscusLezteAuswertungErgeebnisNaacSimu;

            var AusScnapcusMengeWindowInventory =
                (null == AusScnapscusAuswertungZuusctand) ? null : AusScnapscusAuswertungZuusctand.MengeWindowInventory;

            if (null != AusScnapcusMengeWindowInventory)
            {
                if (1 == AusScnapcusMengeWindowInventory.Length)
                {
                    var KandidaatAnforderungLeereCargoWindowInventory = AusScnapcusMengeWindowInventory.FirstOrDefault();

                    if (null != KandidaatAnforderungLeereCargoWindowInventory)
                    {
                        if (null != KandidaatAnforderungLeereCargoWindowInventory.LinxTreeEntryActiveShip)
                        {
                            ScnapscusShipWindowInventory = KandidaatAnforderungLeereCargoWindowInventory;
                        }
                    }
                }
            }

            var ScnapscusShipWindowInventoryLinxTreeEntryActiveShip =
                (null == ScnapscusShipWindowInventory) ? null : ScnapscusShipWindowInventory.LinxTreeEntryActiveShip;

            if (null == ScnapscusShipWindowInventory)
            {
                ZerleegungVolsctändig = false;

                var NeocomButtonInventory = AusScnapscusAuswertungZuusctand.NeocomButtonInventory;

                if (null == NeocomButtonInventory)
                {
                }
                else
                {
                    InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(NeocomButtonInventory)));
                }
            }
            else
            {
                var WindowInventoryZuusctand =
                    (null == Gbs) ? null :
                    Gbs.ZuHerkunftAdreseWindow(ScnapscusShipWindowInventory.Ident);

                if (null == ScnapscusShipWindowInventoryLinxTreeEntryActiveShip)
                {
                }
                else
                {
                    var ZuCargoTypTreeEntry =
                        ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.TreeEntryBerecneAusCargoTyp(CargoTyp);

                    var ZuAuswaalReczMengeKandidaatLinxTreeEntry = ScnapscusShipWindowInventory.ZuAuswaalReczMengeKandidaatLinxTreeEntry;

                    if (null == ZuCargoTypTreeEntry)
                    {
                        //	Sicersctele das AnforderungLeereCargoWindowInventoryLinxTreeEntryActiveShip expanded.

                        if (0 < ExtractFromOldAssembly.Bib3.Extension.CountNullable(ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.MengeChild))
                        {
                            //	ist beraits Expanded.
                        }
                        else
                        {
                            var ExpandCollapseToggleFläce = ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.ExpandCollapseToggleFläce;

                            if (null == ExpandCollapseToggleFläce)
                            {
                            }
                            else
                            {
                                InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                                           SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(ExpandCollapseToggleFläce)));
                            }
                        }
                    }
                    else
                    {
                        if (1 == ExtractFromOldAssembly.Bib3.Extension.CountNullable(ZuAuswaalReczMengeKandidaatLinxTreeEntry))
                        {
                            var ZuAuswaalReczLinxTreeEntry = ZuAuswaalReczMengeKandidaatLinxTreeEntry.FirstOrDefault();
                            var AuswaalReczInventory       = ScnapscusShipWindowInventory.AuswaalReczInventory;

                            if (ZuCargoTypTreeEntry == ZuAuswaalReczLinxTreeEntry &&
                                null != AuswaalReczInventory)
                            {
                                //	Erfolg.

                                ErgeebnisWindowShipInventory = ScnapscusShipWindowInventory;
                                ErgeebnisShipInventory       = AuswaalReczInventory;
                            }
                            else
                            {
                                InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                                           SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(ZuCargoTypTreeEntry.TopContLabel)));
                            }
                        }
                    }
                }
            }

            return(new SictAufgaabeParamZerleegungErgeebnis(InternMengeAufgaabeKomponenteParam, ZerleegungVolsctändig));
        }
        static public SictAufgaabeParamZerleegungErgeebnis ZerleegeShipAktuelOpenInventoryCargoTyp(
            ISictAutomatZuusctand AutomaatZuusctand,
            SictShipCargoTypSictEnum CargoTyp,
            out VonSensor.WindowInventoryPrimary ErgeebnisWindowShipInventory,
            out VonSensor.Inventory ErgeebnisShipInventory)
        {
            bool ZerleegungVolsctändig = true;
            var  InternMengeAufgaabeKomponenteParam = new List <SictAufgaabeParam>();

            ErgeebnisWindowShipInventory = null;
            ErgeebnisShipInventory       = null;

            VonSensor.WindowInventoryPrimary ScnapscusShipWindowInventory = null;

            var Gbs = AutomaatZuusctand.Gbs();

            var AusScnapscusAuswertungZuusctand = AutomaatZuusctand.ListeScnapscusLezteAuswertungErgeebnisNaacSimu;

            var AusScnapcusMengeWindowInventory =
                (null == AusScnapscusAuswertungZuusctand) ? null : AusScnapscusAuswertungZuusctand.MengeWindowInventory;

            if (null != AusScnapcusMengeWindowInventory)
            {
                if (1 == AusScnapcusMengeWindowInventory.Length)
                {
                    var KandidaatAnforderungLeereCargoWindowInventory = AusScnapcusMengeWindowInventory.FirstOrDefault();

                    if (null != KandidaatAnforderungLeereCargoWindowInventory)
                    {
                        if (null != KandidaatAnforderungLeereCargoWindowInventory.LinxTreeEntryActiveShip)
                        {
                            ScnapscusShipWindowInventory = KandidaatAnforderungLeereCargoWindowInventory;
                        }
                    }
                }
            }

            var ScnapscusShipWindowInventoryLinxTreeEntryActiveShip =
                (null == ScnapscusShipWindowInventory) ? null : ScnapscusShipWindowInventory.LinxTreeEntryActiveShip;

            if (null == ScnapscusShipWindowInventory)
            {
                ZerleegungVolsctändig = false;

                var NeocomButtonInventory = AusScnapscusAuswertungZuusctand.NeocomButtonInventory;

                if (null == NeocomButtonInventory)
                {
                }
                else
                {
                    InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                               SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(NeocomButtonInventory)));
                }
            }
            else
            {
                var WindowInventoryZuusctand =
                    (null == Gbs) ? null :
                    Gbs.ZuHerkunftAdreseWindow(ScnapscusShipWindowInventory.Ident);

                {
                    //	2015.09.02	Erwaiterung:

                    var ScnapscusWindowInventoryLinxTreeListeEntryNitBenöötigt =
                        ScnapscusShipWindowInventory?.LinxTreeListeEntry
                        ?.Where(Kandidaat => !(Kandidaat == ScnapscusShipWindowInventory.LinxTreeEntryActiveShip))
                        ?.ToArray();

                    foreach (var LinxTreeEntryNitBenöötigt in ScnapscusWindowInventoryLinxTreeListeEntryNitBenöötigt)
                    {
                        if (!(0 < LinxTreeEntryNitBenöötigt.MengeChild.CountNullable()))
                        {
                            continue;
                        }

                        var LinxTreeEntryNitBenöötigtExpandCollapseToggleFläce = LinxTreeEntryNitBenöötigt.ExpandCollapseToggleFläce;

                        if (null == LinxTreeEntryNitBenöötigtExpandCollapseToggleFläce)
                        {
                        }
                        else
                        {
                            InternMengeAufgaabeKomponenteParam.Add(
                                SictAufgaabeParam.KonstruktAufgaabeParam(
                                    AufgaabeParamAndere.KonstruktMausPfaad(SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(LinxTreeEntryNitBenöötigtExpandCollapseToggleFläce)),
                                    "In Inventory collapse unnecessary branch"));
                        }
                    }
                }

                if (null == ScnapscusShipWindowInventoryLinxTreeEntryActiveShip)
                {
                }
                else
                {
                    var ZuCargoTypTreeEntry =
                        Optimat.EveOnline.Extension.TreeEntryBerecneAusCargoTyp(
                            ScnapscusShipWindowInventoryLinxTreeEntryActiveShip,
                            CargoTyp);

                    var ZuAuswaalReczMengeKandidaatLinxTreeEntry = ScnapscusShipWindowInventory.ZuAuswaalReczMengeKandidaatLinxTreeEntry;

                    if (null == ZuCargoTypTreeEntry)
                    {
                        //	Sicersctele das AnforderungLeereCargoWindowInventoryLinxTreeEntryActiveShip expanded.

                        if (0 < ExtractFromOldAssembly.Bib3.Extension.CountNullable(ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.MengeChild))
                        {
                            //	ist beraits Expanded.

                            InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktNaacNuzerMeldungZuEveOnline(
                                                                       SictNaacNuzerMeldungZuEveOnline.ErrorGenerel(-1, new SictNaacNuzerMeldungZuEveOnlineCause(
                                                                                                                        ShipCargoMissingTyp: CargoTyp))));
                        }
                        else
                        {
                            var ExpandCollapseToggleFläce = ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.ExpandCollapseToggleFläce;

                            if (null == ExpandCollapseToggleFläce)
                            {
                            }
                            else
                            {
                                InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                                           SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(ExpandCollapseToggleFläce)));
                            }
                        }
                    }
                    else
                    {
                        var ZuAuswaalReczLinxTreeEntry = ZuAuswaalReczMengeKandidaatLinxTreeEntry.FirstOrDefaultNullable();
                        var AuswaalReczInventory       = ScnapscusShipWindowInventory.AuswaalReczInventory;

                        if (1 == ExtractFromOldAssembly.Bib3.Extension.CountNullable(ZuAuswaalReczMengeKandidaatLinxTreeEntry) &&
                            ZuCargoTypTreeEntry == ZuAuswaalReczLinxTreeEntry)
                        {
                            if (null == AuswaalReczInventory)
                            {
                                InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                                           SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(ScnapscusShipWindowInventoryLinxTreeEntryActiveShip.TopContLabel)));
                            }
                            else
                            {
                                //	Erfolg.

                                ErgeebnisWindowShipInventory = ScnapscusShipWindowInventory;
                                ErgeebnisShipInventory       = AuswaalReczInventory;
                            }
                        }
                        else
                        {
                            InternMengeAufgaabeKomponenteParam.Add(AufgaabeParamAndere.KonstruktMausPfaad(
                                                                       SictAufgaabeParamMausPfaad.KonstruktMausKlikLinx(ZuCargoTypTreeEntry.TopContLabel)));
                        }
                    }
                }
            }

            return(new SictAufgaabeParamZerleegungErgeebnis(InternMengeAufgaabeKomponenteParam, ZerleegungVolsctändig));
        }