public static bool SubSystemEnabled(SubSystemType subSystem) { switch (subSystem) { //Loyalty case SubSystemType.EnsuredLoyalty: return(Settings.Instance !.UseEnsuredLoyalty); case SubSystemType.LoyaltyWithholding: return(Settings.Instance !.UseEnsuredLoyalty && Settings.Instance.UseRelationForEnsuredLoyalty && Settings.Instance.UseWithholdPrice); case SubSystemType.LoyaltyInConversations: return(Settings.Instance !.UseEnsuredLoyalty && Settings.Instance.UseLoyaltyInConversations); case SubSystemType.LoyaltyTooltips: return(Settings.Instance !.UseAdvancedHeroTooltips && Settings.Instance.UseEnsuredLoyalty); //Migration case SubSystemType.MigrationTweaks: return(Settings.Instance !.UseMigrationTweaks); case SubSystemType.AllowJoinRequests: return(Settings.Instance !.UseMigrationTweaks && Settings.Instance.AllowJoinRequests); case SubSystemType.AllowHireRequests: return(Settings.Instance !.UseMigrationTweaks && Settings.Instance.AllowHireRequests); case SubSystemType.UseDeterminedKingdomPick: return(Settings.Instance !.UseMigrationTweaks && Settings.Instance.UseDeterminedKingdomPick); //Politics case SubSystemType.ElectionRebalance: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance); case SubSystemType.DecisionSupportRebalance: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseDecisionSupportRebalance); case SubSystemType.MakePeaceSupportRebalance: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseDecisionSupportRebalance && Settings.Instance.PeaceSupportCalculationMethod.SelectedValue.EnumValue != PeaceAndWarConsideration.Native); case SubSystemType.DeclareWarSupportRebalance: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseDecisionSupportRebalance && Settings.Instance.WarSupportCalculationMethod.SelectedValue.EnumValue != PeaceAndWarConsideration.Native); /* * case SubSystemType.SettlementClaimantSupportRebalance: * return Settings.Instance!.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseDecisionSupportRebalance * && Settings.Instance.FiefOwnershipSupportCalculationMethod.SelectedValue.EnumValue != FiefOwnershipConsideration.Native; * case SubSystemType.AnnexationSupportRebalance: * return Settings.Instance!.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseDecisionSupportRebalance * && Settings.Instance.AnnexSupportCalculationMethod.SelectedValue.EnumValue != FiefOwnershipConsideration.Native; */ case SubSystemType.ElectionCooldowns: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseElectionCooldowns); case SubSystemType.ElectionCooldownsForPlayer: return(Settings.Instance !.UsePoliticsRebalance && Settings.Instance.UseElectionRebalance && Settings.Instance.UseElectionCooldowns && Settings.Instance.UseElectionCooldownsForPlayer); //General case SubSystemType.AdvancedHeroTooltips: return(Settings.Instance !.UseAdvancedHeroTooltips); //Testing case SubSystemType.FreeDecisionOverriding: return(Settings.Instance !.UseTestingSettings && Settings.Instance.FreeDecisionOverriding); case SubSystemType.DestabilizeJoinEvaluation: return(Settings.Instance !.UseTestingSettings && Settings.Instance.DestabilizeJoinEvaluation); case SubSystemType.DestabilizeLeaveEvaluation: return(Settings.Instance !.UseTestingSettings && Settings.Instance.DestabilizeLeaveEvaluation); default: return(false); } }
public static string LoadKDString(string description, string resourceID, SubSystemType systemType, params object[] args) { if (TryGetSlKDString(resourceID, description, systemType.ToString(), out description)) { return(description); } return(LoadKDString(description, resourceID, CultureInfoUtils.GetCurrentCulture().Name, systemType.ToString(), args)); }
private static DefaultDropdown <string> DetermineSubSystemScope(SubSystemType subSystem) { switch ((int)subSystem) { case int subSystemIdx when(subSystemIdx < 50): return(Settings.Instance.EnsuredLoyaltyScope); case int subSystemIdx when(subSystemIdx >= 50 && subSystemIdx < 100): return(Settings.Instance.PoliticsRebalanceScope); default: return(null); } }
public void SetErrorCode(SubSystemType s, SystemError?system, CardReaderError?cardReader, KeyPadError?keypad, SecuritymoduleError?scuritymodule) { this.CurrentSubSystemType = s; switch (s) { case SubSystemType.SPOT_SYS_MAIN: if (system.HasValue) { this.ErrorCode = (byte)(system.Value); } else { throw new ArgumentException("expecting SystemError enum!"); } break; case SubSystemType.SPOT_SYS_CARDREADER: if (cardReader.HasValue) { this.ErrorCode = (byte)(cardReader.Value); } else { throw new ArgumentException("expecting CardReaderError enum!"); } break; case SubSystemType.SPOT_SYS_KEYBOARD: if (keypad.HasValue) { this.ErrorCode = (byte)(keypad.Value); } else { throw new ArgumentException("expecting KeyPadError enum!"); } break; case SubSystemType.SPOT_SYS_SECURITYMODULE: if (scuritymodule.HasValue) { this.ErrorCode = (byte)(scuritymodule.Value); } else { throw new ArgumentException("expecting scuritymodule Error enum!"); } break; default: break; } }
public void SetStatus(SubSystemType s, SystemStatus?systemStutus, CardReaderSystemStatus?cardReaderStutus, KeyPadSystemStatus?keypadStutus, SecuritymoduleSystemStatus?scuritymodule) { this.CurrentSubSystemType = s; switch (s) { case SubSystemType.SPOT_SYS_MAIN: if (systemStutus.HasValue) { this.Status = (byte)(systemStutus.Value); } else { throw new ArgumentException("expecting systemStatus enum!"); } break; case SubSystemType.SPOT_SYS_CARDREADER: if (cardReaderStutus.HasValue) { this.Status = (byte)(cardReaderStutus.Value); } else { throw new ArgumentException("expecting cardReaderStatus enum!"); } break; case SubSystemType.SPOT_SYS_KEYBOARD: if (keypadStutus.HasValue) { this.Status = (byte)(keypadStutus.Value); } else { throw new ArgumentException("expecting keypadStatus enum!"); } break; case SubSystemType.SPOT_SYS_SECURITYMODULE: if (scuritymodule.HasValue) { this.Status = (byte)(scuritymodule.Value); } else { throw new ArgumentException("expecting scuritymodule Status enum!"); } break; default: break; } }
public static bool SubSystemEnabled(SubSystemType subSystem, List <IFaction> factionList) { if (!SubSystemEnabled(subSystem)) { return(false); } DropdownDefault <string>?scope = DetermineSubSystemScope(subSystem); foreach (IFaction faction in factionList) { if (FactionInScope(faction, scope)) { return(true); } } return(false); }
public static string LoadResFormat(string description, string resourceID, string sLanguage, SubSystemType systemType, params object[] args) { string str = LoadKDString(description, resourceID, sLanguage, systemType.ToString(), args); if (args != null) { int length = args.Length; for (int i = 1; i <= length; i++) { str = str.Replace("%" + i, args[i - 1].ToString()); } } return(str); }
public static string LoadResFormat(string description, string resourceID, SubSystemType systemType, params object[] args) { return(LoadResFormat(description, resourceID, systemType.ToString(), args)); }
public static bool SubSystemEnabled(SubSystemType subSystem, IFaction faction) { return(SubSystemEnabled(subSystem) && FactionInScope(faction, DetermineSubSystemScope(subSystem))); }