public AufgaabeParamDestrukt( SictOverViewObjektZuusctand ZiilOverviewObjekt, SictTargetZuusctand ZiilTarget) { this.ZiilOverviewObjekt = ZiilOverviewObjekt; this.ZiilTarget = ZiilTarget; }
public SictIndikatorTargetReprOverviewRow( SictTargetZuusctand Target, SictOverViewObjektZuusctand OverviewRow) { this.Target = Target; this.OverviewRow = OverviewRow; }
public SictTargetZuusctand[] MengeTargetTailmengePasendZuOverviewObjektBerecne( SictOverViewObjektZuusctand OverviewObjekt) { if (null == OverviewObjekt) { return(null); } var MengeAnnaameZuOverviewRowTarget = this.MengeAnnaameZuOverviewRowTarget; if (null != MengeAnnaameZuOverviewRowTarget) { var AnnaameZuOverviewRowTarget = MengeAnnaameZuOverviewRowTarget.FirstOrDefault((Kandidaat) => Kandidaat.Key == OverviewObjekt); if (AnnaameZuOverviewRowTarget.Key == OverviewObjekt) { return(new SictTargetZuusctand[] { AnnaameZuOverviewRowTarget.Value }); } } var MengeTarget = this.MengeTargetNocSictbar; if (null == MengeTarget) { return(null); } return (MengeTarget .Where((KandidaatTarget) => OverViewObjektPastZuTarget(OverviewObjekt, KandidaatTarget)) .ToArrayNullable()); }
static public bool OverviewObjektBescriftungIstAsteroid( SictOverViewObjektZuusctand OverviewObjekt) { string OreTypSictString; OreTypSictEnum?OreTyp; return(OverviewObjektBescriftungIstAsteroid(OverviewObjekt, out OreTypSictString, out OreTyp)); }
/* * 2015.01.06 * * static public AufgaabeParamAndere AufgaabeWirkungDestrukt(SictOverViewObjektZuusctand InRaumObjekt) * { * if (null == InRaumObjekt) * { * return null; * } * * return new AufgaabeParamAndere(InRaumObjekt, null, null, null, null, null, null, null, null, null, true); * } * * static public AufgaabeParamAndere AufgaabeWirkungDestrukt(SictTargetZuusctand TargetZuBearbaite) * { * if (null == TargetZuBearbaite) * { * return null; * } * * return new AufgaabeParamAndere(null, TargetZuBearbaite, null, null, null, null, null, null, null, null, true); * } * */ static public AufgaabeParamAndere AufgaabeAktioonCargoDurcsuuce(SictOverViewObjektZuusctand InRaumObjekt) { if (null == InRaumObjekt) { return(null); } return(new AufgaabeParamAndere(OverViewObjektZuBearbeite: InRaumObjekt, AktioonCargoDurcsuuce: true)); }
static public string OverViewObjektSictZwekKomponente(SictOverViewObjektZuusctand OverviewObjekt) { if (null == OverviewObjekt) { return(null); } return(OverviewObjekt.Name); }
static public string FürNuzerObjektBescraibungBerecne(SictOverViewObjektZuusctand Objekt) { if (null == Objekt) { return(null); } return("OverviewObject[" + (Objekt.Name ?? "") + "]"); }
static public bool OverViewObjektTypeOderNaamePasendZuTargetBescriftung( SictOverViewObjektZuusctand OverviewObjekt, SictTargetZuusctand Target) { if (null == OverviewObjekt || null == Target) { return(false); } /* * 2014.04.27 * Baiscpiil aus: * \\rs211275.rs.hosteurope.de\Optimat.Demo 0 .Berict\Berict\Berict.Nuzer\[ZAK=2014.04.26.21.20.10,NB=6].Anwendung.Berict: * "Wifrerante Vaydaerer" Level2 * "The Blockade", "The_Blood_Raider_Covenant" * OverviewZaile.Type:"Starbase Stasis Tower" * OverviewZaile.Name:"Amarr Stasis Tower" * Target.OoberhalbDistanceListeZaile[0]:"Starbase Stasis Tower" * -> * OverviewZaile.Name nict enthalte in Target.OoberhalbDistanceListeZaile * * */ var TargetOoberhalbDistanceListeZaile = Target.OoberhalbDistanceListeZaile; if (null == TargetOoberhalbDistanceListeZaile) { return(false); } var OverviewObjektTypeAbbild = StringSictFürVerglaicZwisceTargetUndOverview(OverviewObjekt.Type); var OverviewObjektNameAbbild = StringSictFürVerglaicZwisceTargetUndOverview(OverviewObjekt.Name); var TargetBescriftungAbbild = StringSictFürVerglaicZwisceTargetUndOverview(string.Join("", TargetOoberhalbDistanceListeZaile)); if (null == TargetBescriftungAbbild) { return(false); } if (null != OverviewObjektTypeAbbild) { if (Regex.Match(TargetBescriftungAbbild, OverviewObjektTypeAbbild, RegexOptions.IgnoreCase).Success) { return(true); } } if (null != OverviewObjektNameAbbild) { if (Regex.Match(TargetBescriftungAbbild, OverviewObjektNameAbbild, RegexOptions.IgnoreCase).Success) { return(true); } } return(false); }
static public AufgaabeParamAndere AufgaabeAktioonMenu( SictOverViewObjektZuusctand InRaumObjekt, SictAnforderungMenuKaskaadeAstBedingung MenuAstBedingung, string[] ZwekListeKomponente = null) { return(AufgaabeAktioonMenu( InRaumObjekt, new SictAnforderungMenuKaskaadeAstBedingung[] { MenuAstBedingung }, ZwekListeKomponente)); }
static public AufgaabeParamAndere AufgaabeDistanceAinzusctele( SictOverViewObjektZuusctand InRaumObjekt, Int64?DistanceScrankeMin, Int64?DistanceScrankeMax) { if (null == InRaumObjekt) { return(null); } return(new AufgaabeParamAndere(OverViewObjektZuBearbeite: InRaumObjekt, DistanzAinzuscteleScrankeMin: DistanceScrankeMin, DistanzAinzuscteleScrankeMax: DistanceScrankeMax)); }
static public AufgaabeParamAndere AufgaabeInOverViewMaceSictbar( SictOverViewObjektZuusctand InRaumObjekt, string[] ZwekListeKomponente = null) { if (null == InRaumObjekt) { return(null); } var Aufgaabe = new AufgaabeParamAndere(OverViewObjektZuBearbeite: InRaumObjekt, AktioonInOverviewMaceSictbar: true, ZwekListeKomponenteZuusaz: ZwekListeKomponente); return(Aufgaabe); }
/* * static public AufgaabeParamAndere KonstruktGbsAstVerberge( * GbsElement GbsAstVerberge) * { * return new AufgaabeParamAndere(GbsAstVerberge: GbsAstVerberge); * } */ static public AufgaabeParamAndere KonstruktInRaumManööver( SictTargetZuusctand InRaumObjektReprTarget, SictOverViewObjektZuusctand InRaumObjektReprOverview, SictZuInRaumObjektManööverTypEnum?ManööverAuszufüüreTyp, Int64?DistanceScrankeMin = null, Int64?DistanceScrankeMax = null) { return(new AufgaabeParamAndere( TargetZuBearbeite: InRaumObjektReprTarget, OverViewObjektZuBearbeite: InRaumObjektReprOverview, ManööverAuszufüüreTyp: ManööverAuszufüüreTyp, DistanzAinzuscteleScrankeMin: DistanceScrankeMin, DistanzAinzuscteleScrankeMax: DistanceScrankeMax)); }
static public AufgaabeParamAndere AufgaabeAktioonMenu( SictOverViewObjektZuusctand InRaumObjektOverview, SictAnforderungMenuKaskaadeAstBedingung[] MenuListeAstBedingung, string[] ZwekListeKomponente = null) { if (null == InRaumObjektOverview) { return(null); } var Aufgaabe = new AufgaabeParamAndere(OverViewObjektZuBearbeite: InRaumObjektOverview, MenuListeAstBedingung: MenuListeAstBedingung, ZwekListeKomponenteZuusaz: ZwekListeKomponente); return(Aufgaabe); }
static public bool OverViewObjektPastZuTarget( SictOverViewObjektZuusctand OverviewObjekt, SictTargetZuusctand Target) { if (null == OverviewObjekt) { return(false); } if (null == Target) { return(false); } if (!OverViewObjektTypeOderNaamePasendZuTargetBescriftung(OverviewObjekt, Target)) { return(false); } var OverviewObjektSictungLezteDistanceScrankeMin = OverviewObjekt?.AingangUnglaicDefaultZuZaitLezte?.Wert.Key?.DistanceMin ?? OverviewObjekt.SictungLezteDistanceScrankeMinScpezOverview; var OverviewObjektSictungLezteDistanceScrankeMax = OverviewObjekt?.AingangUnglaicDefaultZuZaitLezte?.Wert.Key?.DistanceMax ?? OverviewObjekt.SictungLezteDistanceScrankeMaxScpezOverview; var TargetDistanceScrankeMin = Target.SictungLezteDistanceScrankeMinScpezTarget; var TargetDistanceScrankeMax = Target.SictungLezteDistanceScrankeMaxScpezTarget; if (OverviewObjekt.SaitSictbarkaitLezteListeScritAnzaal <= 0) { var ScnapshusLezteTarget = OverviewObjekt?.AingangUnglaicDefaultZuZaitLezte?.Wert.Key?.IconTargetedByMeSictbar ?? false; if (!(true == OverviewObjekt.TargetingOderTargeted || ScnapshusLezteTarget)) { return(false); } if (!(OverviewObjektSictungLezteDistanceScrankeMin - 1777 < TargetDistanceScrankeMax && TargetDistanceScrankeMin - 1777 < OverviewObjektSictungLezteDistanceScrankeMax)) { return(false); } } return(true); }
static public bool OverviewObjektBescriftungIstAsteroid( SictOverViewObjektZuusctand OverviewObjekt, out string OreTypSictString, out OreTypSictEnum?OreTyp) { OreTypSictString = null; OreTyp = null; if (null == OverviewObjekt) { return(false); } var OverviewObjektName = OverviewObjekt.Name; var OverviewObjektType = OverviewObjekt.Type; if (0 < OverviewObjektName.CountNullable()) { var NameMatch = Regex.Match( OverviewObjektName, OverviewObjektNameRegexPattern, RegexOptions.IgnoreCase); if (NameMatch.Success) { OreTypSictString = NameMatch.Groups[2].Value.Trim(); OreTyp = TempAuswertGbs.Extension.OreTypBerecneAusOreTypSictString(OreTypSictString); return(true); } } OreTyp = TempAuswertGbs.Extension.OreTypBerecneAusOreTypSictString(OverviewObjektType); if (OreTyp.HasValue) { OreTypSictString = OverviewObjektType; return(true); } return(false); }
public void MengeObjektCargoDurcsuuctFüügeAin(SictOverViewObjektZuusctand Objekt) { if (null == Objekt) { return; } var MengeObjektCargoDurcsuuct = this.MengeObjektCargoDurcsuuct; if (null == MengeObjektCargoDurcsuuct) { MengeObjektCargoDurcsuuct = new List <SictOverViewObjektZuusctand>(); } if (!MengeObjektCargoDurcsuuct.Contains(Objekt)) { MengeObjektCargoDurcsuuct.Add(Objekt); } this.MengeObjektCargoDurcsuuct = MengeObjektCargoDurcsuuct; }
static public SictAufgaabeParamZerleegungErgeebnis ZerleegeLockTarget( ISictAutomatZuusctand AutomaatZuusctand, SictOverViewObjektZuusctand OverviewObjekt) { var AufgaabeParamZerleegungErgeebnis = new SictAufgaabeParamZerleegungErgeebnis(null, true); if (null == OverviewObjekt) { return(AufgaabeParamZerleegungErgeebnis); } if (true == OverviewObjekt.TargetingOderTargeted) { return(AufgaabeParamZerleegungErgeebnis); } AufgaabeParamZerleegungErgeebnis.ZerleegungVolsctändigSezeAus(); if (null == AutomaatZuusctand) { return(AufgaabeParamZerleegungErgeebnis); } var FittingUndShipZuusctand = AutomaatZuusctand.FittingUndShipZuusctand; var OverviewUndTarget = AutomaatZuusctand.OverviewUndTarget; var MengeTargetNocSictbar = (null == OverviewUndTarget) ? null : OverviewUndTarget.MengeTargetNocSictbar; var MengeTargetAnzaalScrankeMax = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.MengeTargetAnzaalScrankeMax; var ScritNääxteJammed = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.ScritNääxteJammed; var ScritÜüberNääxteJammed = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.ScritÜüberNääxteJammed; if (ScritÜüberNääxteJammed ?? false) { return(AufgaabeParamZerleegungErgeebnis); } if (MengeTargetAnzaalScrankeMax.HasValue) { if (MengeTargetAnzaalScrankeMax <= MengeTargetNocSictbar.CountNullable()) { return(AufgaabeParamZerleegungErgeebnis); } } var MenuKaskaadeLezte = AutomaatZuusctand.GbsMenuLezteInAst(OverviewObjekt); var MenuAstBedingung = new SictAnforderungMenuKaskaadeAstBedingung(SictShipZuusctandMitFitting.MenuEntryLockTargetRegexPattern, true); if (null != MenuKaskaadeLezte) { var MenuKaskaadeLezteAlter = AutomaatZuusctand.NuzerZaitMili - MenuKaskaadeLezte.BeginZait; var Menu0ListeEntry = MenuKaskaadeLezte.AusMenu0ListeEntryBerecne(); if (!Menu0ListeEntry.IsNullOrEmpty()) { var MenuEntryLock = MenuAstBedingung.AusMengeMenuEntryGibUntermengePasendFürFrüühestePasendePrio(Menu0ListeEntry); if (null == MenuEntryLock && !(8888 < MenuKaskaadeLezteAlter)) { // Kain Entry "Lock" vorhande. Daher Vermuutung das Objekt zu wait entfernt für Lock. AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.AufgaabeDistanceAinzusctele(OverviewObjekt, null, 4444)); } } if (!MenuKaskaadeLezte.EndeZait.HasValue) { // Menu zu OverviewObjekt isc noc geöfnet. if (ScritNääxteJammed ?? false) { return(AufgaabeParamZerleegungErgeebnis); } } } AufgaabeParamZerleegungErgeebnis.ZerleegungVolsctändigSezeAin(); AufgaabeParamZerleegungErgeebnis.FüügeAn( AufgaabeParamAndere.AufgaabeAktioonMenu(OverviewObjekt, MenuAstBedingung)); return(AufgaabeParamZerleegungErgeebnis); }
public AufgaabeParamLockTarget( SictOverViewObjektZuusctand OverviewObjekt) { this.OverviewObjekt = OverviewObjekt; }
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; }
public AufgaabeParamDestrukt( SictOverViewObjektZuusctand ZiilOverviewObjekt) : this(ZiilOverviewObjekt, null) { }
static public SictAufgaabeParamZerleegungErgeebnis ZerleegeDestrukt( ISictAutomatZuusctand AutomaatZuusctand, SictAufgaabeKombiZuusctand KombiZuusctand, SictOverViewObjektZuusctand ZiilOverviewObjekt, SictTargetZuusctand ZiilTarget) { var AufgaabeParamZerleegungErgeebnis = new SictAufgaabeParamZerleegungErgeebnis(null, false); if (null == AutomaatZuusctand) { return(AufgaabeParamZerleegungErgeebnis); } var NuzerZaitMili = AutomaatZuusctand.NuzerZaitMili; var ZiilOverviewObjektSictungLezteAlterMili = NuzerZaitMili - ((null == ZiilOverviewObjekt) ? null : ZiilOverviewObjekt.SictungLezteZait); var Gbs = AutomaatZuusctand.Gbs; var OverviewUndTarget = AutomaatZuusctand.OverviewUndTarget; var FittingUndShipZuusctand = AutomaatZuusctand.FittingUndShipZuusctand; var InRaumAktioonUndGefect = AutomaatZuusctand.InRaumAktioonUndGefect; var AusScnapscusAuswertungZuusctand = AutomaatZuusctand.ListeScnapscusLezteAuswertungErgeebnisNaacSimu; var FürWirkungDestruktAufgaabeDroneEngageTarget = (null == InRaumAktioonUndGefect) ? null : InRaumAktioonUndGefect.FürWirkungDestruktAufgaabeDroneEngageTarget; var ScnapscusWindowDroneView = (null == AusScnapscusAuswertungZuusctand) ? null : AusScnapscusAuswertungZuusctand.WindowDroneView; var AnforderungDroneReturnLezte = (null == InRaumAktioonUndGefect) ? null : InRaumAktioonUndGefect.AnforderungDroneReturnLezte; var AnnaameDroneControlCountScrankeMaxNulbar = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.AnnaameDroneControlCountScrankeMax; var MengeModuleRepr = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.MengeModuleRepr; var MengeModuleUmscaltFraigaabe = AutomaatZuusctand.MengeModuleUmscaltFraigaabe .WhereNullable((KandidaatModule) => (null == KombiZuusctand) ? true : KombiZuusctand.ModuleVerwendungFraigaabe(KandidaatModule)) .ToArrayNullable(); var AnnaameTargetingDistanceScrankeMax = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.AnnaameTargetingDistanceScrankeMax; var AnnaameModuleDestruktRangeMax = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.AnnaameModuleDestruktRangeMax; var AnnaameModuleDestruktRangeOptimumNulbar = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.AnnaameModuleDestruktRangeOptimum; var AnnaameGefectDistanzOptimum = Bib3.Glob.Min(AnnaameModuleDestruktRangeOptimumNulbar, AnnaameTargetingDistanceScrankeMax); var ScritNääxteJammed = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.ScritNääxteJammed; var ScritÜüberNääxteJammed = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.ScritÜüberNääxteJammed; var ListeAbovemainMessageDronesLezteAlter = (null == Gbs) ? null : Gbs.ListeAbovemainMessageDronesLezteAlter; var MengeTargetNocSictbar = (null == OverviewUndTarget) ? null : OverviewUndTarget.MengeTargetNocSictbar; bool DroneLaunchVolsctändig = false; if (ListeAbovemainMessageDronesLezteAlter < 3e+4) { DroneLaunchVolsctändig = true; } if (!DroneLaunchVolsctändig && 0 < ExtractFromOldAssembly.Bib3.Extension.CountNullable(MengeTargetNocSictbar) || (ScritNääxteJammed ?? false)) { // Drones Launch if (false == AnforderungDroneReturnLezte && null != ScnapscusWindowDroneView) { // Drones Launch if (0 < ScnapscusWindowDroneView.DronesInBayAnzaal) { /* * 2013.09.24 * Anforderung vorerst nur für Scpeziaalfal das nur fünf drones in space sain köne. * Scpääter sol Anzaal nuzbaarer drones berüksictigt were. * */ if ((AnnaameDroneControlCountScrankeMaxNulbar ?? 5) <= ScnapscusWindowDroneView.DronesInLocalSpaceAnzaal) { DroneLaunchVolsctändig = true; } else { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.AufgaabeAktioonDroneLaunch()); } } else { DroneLaunchVolsctändig = true; } } } var MengeModuleAinSol = MengeModuleUmscaltFraigaabe.IntersectNullable( MengeModuleRepr.WhereNullable((KandidaatModule) => (((true == KandidaatModule.IstWirkmitelDestrukt) && (true == KandidaatModule.ChargeLoaded)) || (true == KandidaatModule.IstTargetPainter)) && !(true == KandidaatModule.AktiivBerecne(1)))) .ToArrayNullable(); if (null == ZiilTarget) { var MengeTargetPasend = OverviewUndTarget.MengeTargetTailmengePasendZuOverviewObjektBerecne(ZiilOverviewObjekt); if (null != MengeTargetPasend) { ZiilTarget = MengeTargetPasend.OrderBy((KandidaatTarget) => KandidaatTarget.SictungLezteDistanceScrankeMaxScpezTarget ?? int.MaxValue).FirstOrDefault(); } } if (null == ZiilTarget) { if (null != ZiilOverviewObjekt) { if (!(GefectListeLockedTargetScranke <= ExtractFromOldAssembly.Bib3.Extension.CountNullable(MengeTargetNocSictbar))) { if (true == ZiilOverviewObjekt.TargetingOderTargeted && 7777 < ZiilOverviewObjektSictungLezteAlterMili) { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.AufgaabeInOverViewMaceSictbar(ZiilOverviewObjekt)); } else { var DistanceHinraicendGeringFürLock = true; if (0 < ExtractFromOldAssembly.Bib3.Extension.CountNullable(MengeTargetNocSictbar)) { if (ZiilOverviewObjekt.SaitSictbarkaitLezteListeScritAnzaal < 1) { if (AnnaameTargetingDistanceScrankeMax < ZiilOverviewObjekt.SictungLezteDistanceScrankeMaxScpezOverview && NuzerZaitMili - 4444 < ZiilOverviewObjekt.SictungLezteZait) { DistanceHinraicendGeringFürLock = false; } if (AnnaameGefectDistanzOptimum < ZiilOverviewObjekt.SictungLezteDistanceScrankeMaxScpezOverview) { DistanceHinraicendGeringFürLock = false; } } } if (DistanceHinraicendGeringFürLock) { AufgaabeParamZerleegungErgeebnis.FüügeAn(new AufgaabeParamLockTarget(ZiilOverviewObjekt)); } else { AufgaabeParamZerleegungErgeebnis.ZerleegungVolsctändigSezeAus(); } } } if (!(ZiilOverviewObjekt.SictungLezteDistanceScrankeMaxScpezOverview < AnnaameGefectDistanzOptimum)) { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.AufgaabeDistanceAinzusctele(ZiilOverviewObjekt, null, AnnaameGefectDistanzOptimum)); } } } else { var AnnaameDroneCommandRange = (null == FittingUndShipZuusctand) ? null : FittingUndShipZuusctand.AnnaameDroneCommandRange; var TargetDistancePasendFürModule = false; var TargetDistancePasendFürDrone = false; // !!!! zu ergänze: Berecnung soldistance für Turret // !!!! zu ergänze: Berecnung TargetMengeModuleAinSol: untermenge von MengeModuleAinSol da Module untersciidlice optimaale Distance haabe (TargetPainter) if (ZiilTarget.SictungLezteDistanceScrankeMaxScpezTarget < AnnaameGefectDistanzOptimum) { TargetDistancePasendFürModule = true; } { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.AufgaabeDistanceAinzusctele(ZiilTarget, null, AnnaameGefectDistanzOptimum)); } if (ZiilTarget.SictungLezteDistanceScrankeMaxScpezTarget < AnnaameDroneCommandRange) { TargetDistancePasendFürDrone = true; } var DroneEngage = DroneLaunchVolsctändig && TargetDistancePasendFürDrone && true == FürWirkungDestruktAufgaabeDroneEngageTarget; if (DroneEngage || !MengeModuleAinSol.IsNullOrEmpty()) { { if (TargetDistancePasendFürModule) { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.KonstruktTargetInputFookusSeze(ZiilTarget)); } } } if (!MengeModuleAinSol.IsNullOrEmpty()) { // Hiir werd nuur waitergemact wen noc mindesctens ain Module noc aigescaltet werde sol. if (true == ZiilTarget.InputFookusTransitioonLezteZiilWert) { if (TargetDistancePasendFürModule) { AufgaabeParamZerleegungErgeebnis.FüügeAn( MengeModuleAinSol.Select((ModuleAinSol) => AufgaabeParamAndere.KonstruktModuleScalteAin(ModuleAinSol))); } } } if (DroneEngage) { if (true == ZiilTarget.InputFookusTransitioonLezteZiilWert) { AufgaabeParamZerleegungErgeebnis.FüügeAn(AufgaabeParamAndere.KonstruktDronesEngage(ZiilTarget)); } } } return(AufgaabeParamZerleegungErgeebnis); }
static public AufgaabeParamAndere AufgaabeAktioonInRaumObjektActivate( SictOverViewObjektZuusctand InRaumObjekt, string ZwekKomponente) { return(AufgaabeAktioonInRaumObjektActivate(InRaumObjekt, new string[] { ZwekKomponente })); }
abstract public SictAufgaabeZuusctand ManööverAusgefüürtLezteAufgaabeBerecne(SictOverViewObjektZuusctand OverviewObjekt, SictTargetZuusctand Target, SictZuInRaumObjektManööverTypEnum ManööverTyp, long?DistanceScrankeMin = null, long?DistanceScrankeMax = null, bool BedingungNocAktiiv = false);
static public AufgaabeParamAndere AufgaabeInOverViewMaceSictbar( SictOverViewObjektZuusctand InRaumObjekt, string ZwekKomponente) { return(AufgaabeInOverViewMaceSictbar(InRaumObjekt, new string[] { ZwekKomponente })); }