public void DoWindowContents(Rect canvas) { Listing_Standard list = new Listing_Standard { ColumnWidth = canvas.width }; list.Begin(canvas); list.Gap(); Settings_FactionOptions.DrawSlider(list, "RFC.factionDensity".Translate() + " " + GetFactionDensityLabel(factionDensity), ref factionDensity, ref strFacDen, 0.01f, 8f); list.Gap(24); list.Label("RFC.factionGrouping".Translate() + " " + GetFactionGroupingLabel(factionGrouping));// + "(" + factionGrouping.ToString("n2") + ")"); factionGrouping = list.Slider(factionGrouping, 0.5f, 5f); list.Gap(24); list.CheckboxLabeled("RFC.AllowMechanoids".Translate(), ref allowMechanoids, "RFC.AllowMechanoidsTip".Translate()); list.Gap(24); list.CheckboxLabeled("RFC.EnableFactionRandomGoodwill".Translate(), ref randomGoodwill, "RFC.EnableFactionRandomGoodwillToolTip".Translate()); list.Gap(24); list.CheckboxLabeled("RFC.EnableFactionDynamicColors".Translate(), ref dynamicColors, "RFC.EnableFactionDynamicColorsTip".Translate()); list.Gap(24); list.CheckboxLabeled("RFC.SpreadPirates".Translate(), ref spreadPirates); list.Gap(24); list.CheckboxLabeled("RFC.RelationChangesOverTime".Translate(), ref relationsChangeOverTime); list.End(); }
public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard list = new Listing_Standard(GameFont.Small) { ColumnWidth = inRect.width }; list.Begin(inRect); if (baseFilterSearchMod != null) { RSACoreMod.DoSettingsContents(list); } list.CheckboxLabeled(RSAKeys.RSA_ForOutfits.Translate(), ref Settings.EnableOutfitFilter, RSAKeys.RSA_ForOutfitsTip.Translate()); list.CheckboxLabeled(RSAKeys.RSA_ForCrafting.Translate(), ref Settings.EnableCraftingFilter, RSAKeys.RSA_ForCraftingTip.Translate()); if (RSACoreMod.Debug) { list.GapLine(); list.Label(RSACoreKeys.RSACore_Debug.Translate(typeof(RSACoreMod).Assembly.GetName().Version.ToString())); } if (baseFilterSearchMod != null) { RSACoreMod.DoPreview(list); } list.End(); }
public static void DoWindowContents(Rect rect) { var options = new Listing_Standard(); options.Begin(rect); var optionRect = options.GetRect(Text.LineHeight); var fieldRect = optionRect; var labelRect = optionRect; fieldRect.xMin = optionRect.xMax - optionRect.width * (1 / 8f); labelRect.xMax = fieldRect.xMin; TooltipHandler.TipRegion(optionRect, Resources.Strings.UpdateIntervalTooltip); Widgets.DrawHighlightIfMouseover(optionRect); Widgets.Label(labelRect, Resources.Strings.UpdateInterval); var updateFrequencyBuffer = UpdateFrequency.ToString(); Widgets.TextFieldNumeric(fieldRect, ref UpdateFrequency, ref updateFrequencyBuffer, 1, 120); options.Gap(options.verticalSpacing); options.CheckboxLabeled(Resources.Strings.AssignMultipleDoctors, ref AssignMultipleDoctors, Resources.Strings.AssignMultipleDoctorsTooltip); options.CheckboxLabeled(Resources.Strings.AssignAllWorkTypes, ref AssignAllWorkTypes, Resources.Strings.AssignAllWorkTypesTooltip); options.CheckboxLabeled(Resources.Strings.AllHaulers, ref AllHaulers, Resources.Strings.AllHaulersTooltip); options.CheckboxLabeled(Resources.Strings.AllCleaners, ref AllCleaners, Resources.Strings.AllCleanersTooltip); options.End(); }
public void DoWindowContents(Rect rect) { var options = new Listing_Standard(); options.Begin(rect); options.Label("All changes (except maint. station fuel consumption) require a restart to take effect."); options.Gap(24f); options.CheckboxLabeled("Hide peacekeeper robots from colonist bar", ref hidePeacekeepersFromColonistBar); options.CheckboxLabeled("Count peacekeeper robots towards colonist population", ref countPeacekeepersTowardsPopulation); options.CheckboxLabeled("Allow robots to wear clothes? (clothes may not completely fit but that won't be addressed)", ref allowClothing); options.Gap(24f); options.Label($"Maintenance station: Component fuel consumption rate per day: {Math.Round(fuelConsumptionRate, 2)}"); fuelConsumptionRate = options.Slider(fuelConsumptionRate, 0.01f, 2f); options.Label($"Interval of days between SRS trade ships (+2 days on which the event can happen): {Math.Round(daysPauseBetweenTradeShips, 1)}"); daysPauseBetweenTradeShips = options.Slider(daysPauseBetweenTradeShips, 1f, 60f); options.CheckboxLabeled("Remove ideology diversity impact", ref ModSettings.removeIdeologyImpact); options.Gap(24f); if (options.ButtonTextLabeled("Spawn random test robot at random colonist location", "Spawn")) { PeacekeeperUtility.SpawnRandomRobot(); } options.End(); }
public static void DoWindowContents(Rect canvas) { var list = new Listing_Standard { ColumnWidth = canvas.width }; list.Begin(canvas); list.Gap(); _ = list.Label("Path to dnSpy.exe"); GUILocator.Settings.dnSpyPath = list.TextEntry(GUILocator.Settings.dnSpyPath); if (ButtonText(list, "Download")) { _ = Process.Start("https://github.com/dnSpy/dnSpy/releases/latest"); } list.Gap(); _ = list.Label($"Number of methods to display: {GUILocator.Settings.numberOfMethodsToDisplay}"); GUILocator.Settings.numberOfMethodsToDisplay = (int)list.Slider(GUILocator.Settings.numberOfMethodsToDisplay, 1, 6); list.Gap(); list.CheckboxLabeled("Use full class name", ref GUILocator.Settings.useFullClassname); list.Gap(); list.CheckboxLabeled("Sort elements by order they are added", ref GUILocator.Settings.sortByAddedOrder); list.End(); }
public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard listingStandard = new Listing_Standard(); inRect.width /= 2; listingStandard.Begin(inRect); listingStandard.Label("RPG_Inventory_Width".Translate()); listingStandard.TextFieldNumeric(ref Sandy_RPG_Settings.rpgTabWidth, ref tabWidth); string s; if (Sandy_Detailed_RPG_GearTab.minRecommendedWidth == Sandy_RPG_Settings.rpgTabWidth) { s = "RPG_AutoFitWidth_Wide_Button_Label".Translate(); } else if (Sandy_Detailed_RPG_GearTab.maxRecommendedWidth == Sandy_RPG_Settings.rpgTabWidth) { s = "RPG_AutoFitWidth_Tight_Button_Label".Translate(); } else { s = "RPG_AutoFitWidth_Button_Label".Translate(); } if (listingStandard.ButtonText(s)) { DoFit(Sandy_RPG_Settings.displayAllSlots); } listingStandard.Gap(); listingStandard.Label("RPG_Inventory_Height".Translate()); listingStandard.TextFieldNumeric(ref Sandy_RPG_Settings.rpgTabHeight, ref tabHeight); // if (Sandy_Utility.CustomCheckboxLabeled(listingStandard, "RPG_Display_All_Slots_Label".Translate(), ref Sandy_RPG_Settings.displayAllSlots, "RPG_Display_All_Slots_Note".Translate())) { DoFit(Sandy_RPG_Settings.displayAllSlots, true); } if (!Sandy_RPG_Settings.displayAllSlots) { listingStandard.CheckboxLabeled("RPG_Display_Background_Label".Translate(), ref Sandy_RPG_Settings.displayBG, "RPG_Display_Background_Note".Translate()); if (!Sandy_RPG_Settings.displayBG) { listingStandard.CheckboxLabeled("RPG_Display_Static_Slot_Background_Label".Translate(), ref Sandy_RPG_Settings.displayStaticSlotBG, "RPG_Display_Static_Slot_Background_Note".Translate()); } } listingStandard.CheckboxLabeled("RPG_Dispaly_Temp_On_The_Same_Line_Label".Translate(), ref Sandy_RPG_Settings.displayTempOnTheSameLine, "RPG_Dispaly_Temp_On_The_Same_Line_Note".Translate()); listingStandard.CheckboxLabeled("RPG_Display_Apparel_Healthbar_Label".Translate(), ref Sandy_RPG_Settings.apparelHealthbar, "RPG_Display_Apparel_Healthbar_Note".Translate()); listingStandard.CheckboxLabeled("RPG_Color_Codes_Label".Translate(), ref Sandy_RPG_Settings.useColorCoding, "RPG_Color_Codes_Note".Translate()); if (Sandy_RPG_Settings.useColorCoding) { listingStandard.ColorSelector("QualityCategory_Legendary".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colLegendary, c => Sandy_RPG_Settings.colLegendary = c); listingStandard.ColorSelector("QualityCategory_Masterwork".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colMasterwork, c => Sandy_RPG_Settings.colMasterwork = c); listingStandard.ColorSelector("QualityCategory_Excellent".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colExcellent, c => Sandy_RPG_Settings.colExcellent = c); listingStandard.ColorSelector("QualityCategory_Good".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colGood, c => Sandy_RPG_Settings.colGood = c); listingStandard.ColorSelector("QualityCategory_Normal".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colNormal, c => Sandy_RPG_Settings.colNormal = c); listingStandard.ColorSelector("QualityCategory_Poor".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colPoor, c => Sandy_RPG_Settings.colPoor = c); listingStandard.ColorSelector("QualityCategory_Awful".Translate().CapitalizeFirst(), Sandy_RPG_Settings.colAwful, c => Sandy_RPG_Settings.colAwful = c); } listingStandard.End(); base.DoSettingsWindowContents(inRect); }
public static void DoSettingsWindowContents(Rect inRect) { Listing_Standard listing_Standard = new Listing_Standard(); listing_Standard.Begin(inRect); listing_Standard.CheckboxLabeled("ALConfigCuriosityEatingLabel".Translate(), ref prevent_eating_stuff, "ALConfigCuriosityEatingTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigHostilePredatorsLabel".Translate(), ref hostile_predators, "ALConfigHostilePredatorsTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigEggConversionLabel".Translate(), ref convert_ruined_eggs, "ALConfigEggConversionTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigMeatConversionLabel".Translate(), ref tastes_like_chicken, "ALConfigMeatConversionTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigMedicalAlertsLabel".Translate(), ref medical_alerts, "ALConfigMedicalAlertsTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigTradeHintsLabel".Translate(), ref trade_tags, "ALConfigTradeHintsTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigAnimalsCanUseFoodDispenserLabel".Translate(), ref use_dispenser, "ALConfigAnimalsCanUseFoodDispenserTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigShowExtraDisplayStatsLabel".Translate(), ref extra_display_stats, "ALConfigShowExtraDisplayStatsTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigAlwaysShowRelationsLabel".Translate(), ref always_show_relations, "ALConfigAlwaysShowRelationsTooltip".Translate()); listing_Standard.CheckboxLabeled("ALConfigTamingAgeFactorLabel".Translate(), ref taming_age_factor, "ALConfigTamingAgeFactorTooltip".Translate()); listing_Standard.Label("ALConfigTamenessDecayThresholdLabel".Translate(((float)Math.Round(wildness_threshold_for_tameness_decay, 3) * 100).ToString()), tooltip: "ALConfigTamenessDecayThresholdTooltip".Translate()); wildness_threshold_for_tameness_decay = listing_Standard.Slider(wildness_threshold_for_tameness_decay, 0f, 1f); listing_Standard.Label("ALConfigTrainingDecaySpeedFactorLabel".Translate(((float)Math.Round(training_decay_factor, 3)).ToStringPercent()), tooltip: "ALConfigTrainingDecaySpeedFactorTooltip".Translate()); training_decay_factor = listing_Standard.Slider(training_decay_factor, 0.01f, 2f); listing_Standard.Label("ALConfigHaulingMTBLabel".Translate(((float)Math.Round(Math.Round(haul_mtb * 4) / 4f, 2))), tooltip: "ALConfigHaulingMTBTooltip".Translate()); haul_mtb = listing_Standard.Slider(haul_mtb, 0.0f, 3f); listing_Standard.Label("ALConfigToxicBuildupRotLabel".Translate(((float)Math.Round(toxic_buildup_rot, 3)).ToStringPercent()), tooltip: "ALConfigToxicBuildupRotTooltip".Translate()); toxic_buildup_rot = listing_Standard.Slider(toxic_buildup_rot, 0.00f, 1f); listing_Standard.End(); }
public void DoWindowContents(Rect wrect) { var options = new Listing_Standard(); options.Begin(wrect); options.SliderLabeled("TD.SettingTradeBonus".Translate(), ref tradeBonus, "{0:P0}", .02f, .50f); options.Label("TD.SettingBonusAlso".Translate()); options.CheckboxLabeled("TD.SettingBestPrice".Translate(), ref bestPrice, "TD.SettingBestPriceDesc".Translate()); fairPrice &= !bestPrice; options.CheckboxLabeled("TD.SettingFairPrice".Translate(), ref fairPrice, "TD.SettingFairPriceDesc".Translate()); options.Label("TD.SettingOtherwisePrice".Translate()); bestPrice &= !fairPrice; options.Gap(); options.CheckboxLabeled("TD.SettingMoodBonus".Translate(), ref moodBonus); if (moodBonus) { options.SliderLabeled("TD.SettingMoodBonusNoBeds".Translate(), ref moodBonus0, "+{0:0}", 0, 50); options.SliderLabeled("TD.SettingMoodBonusBeds".Translate(), ref moodBonus1, "+{0:0}", 0, 50); ThoughtDefOf.Traveling.stages[0].baseMoodEffect = moodBonus0; ThoughtDefOf.Traveling.stages[1].baseMoodEffect = moodBonus1; } options.End(); }
public void DoWindowContents(Rect inRect) { List <string> keys = pawnSpawnStates.Keys.ToList().OrderByDescending(x => x).ToList(); Listing_Standard ls = new Listing_Standard(); Rect rect = new Rect(inRect.x, inRect.y, inRect.width, inRect.height); Rect rect2 = new Rect(0f, 0f, inRect.width - 30f, ((keys.Count / 2) + 2) * 24); Widgets.BeginScrollView(rect, ref scrollPosition, rect2, true); ls.ColumnWidth = rect2.width / 2.2f; ls.Begin(rect2); ls.CheckboxLabeled("allowVanillaAnimals".Translate(), ref flagVanillaAnimals, null); for (int num = keys.Count - 1; num >= 0; num--) { if (num == keys.Count / 2) { ls.NewColumn(); } bool test = pawnSpawnStates[keys[num]]; if (DefDatabase <PawnKindDef> .GetNamedSilentFail(keys[num]) == null) { pawnSpawnStates.Remove(keys[num]); } else { ls.CheckboxLabeled("AA_DisableAnimal".Translate(PawnKindDef.Named(keys[num]).LabelCap), ref test); pawnSpawnStates[keys[num]] = test; } } ls.End(); Widgets.EndScrollView(); base.Write(); }
public void DoWindowContents(Rect wrect) { Listing_Standard settings = new Listing_Standard(); settings.Begin(wrect); /* Experimental settings. */ settings.Label("WARNING: EXPERIMENTAL!"); /* Peek pawns anywhere. */ settings.CheckboxLabeled("Peek pawns anywhere", ref Peek.PawnsAnywhere, "If true, peek pawns anywhere. " + "If false, only peek pawns on the same map."); /* Peek and select. */ settings.CheckboxLabeled("Peek and select", ref Peek.AndSelect, "If true, select the pawn being peeked. " + "If false, do not select the pawn being peeked. " + "The peeked pawn remains selected even after peeking and it is impossible to select multiple pawns while peeking."); /* Peek selected. */ settings.CheckboxLabeled("Peek selected", ref Peek.Selected, "If true, peek the selected thing. " + "If false, do not peek the selected thing."); settings.End(); }
public override void DoSettingsWindowContents(Rect inRect) { var listing = new Listing_Standard(); Rect paneRect = inRect.ContractedBy(100); listing.Begin(paneRect); listing.Label("AS_Mod.MaxOverstackRatio.Label".Translate(settings.maxOverstackRatio.ToString())); settings.maxOverstackRatio = listing.Slider(settings.maxOverstackRatio, 0.25f, 20f, 0.1f); Rect overstackRect = new Rect(0, 0, paneRect.width, listing.CurHeight); Widgets.DrawHighlightIfMouseover(overstackRect); TooltipHandler.TipRegion(overstackRect, new TipSignal("AS_Mod.MaxOverstackRatio.Tooltip".Translate())); listing.Label("AS_Mod.MaxOverlayLimit.Label".Translate(settings.maxOverlayLimit.ToString())); settings.maxOverlayLimit = listing.Slider(settings.maxOverlayLimit, 1f, 20f, 1f); Rect overlayRect = new Rect(0, overstackRect.yMax, paneRect.width, listing.CurHeight - overstackRect.height); Widgets.DrawHighlightIfMouseover(overlayRect); TooltipHandler.TipRegion(overlayRect, new TipSignal("AS_Mod.MaxOverlayLimit.Tooltip".Translate())); listing.ColumnWidth = listing.ColumnWidth / 2; listing.CheckboxLabeled("AS_MOD.OverlaysReduceStacklimit.Label".Translate(), ref settings.overlaysReduceStacklimit , "AS_MOD.OverlaysReduceStacklimit.Tooltip".Translate()); if (settings.overlaysReduceStacklimit) { listing.CheckboxLabeled("AS_MOD.OverlaysReduceStacklimit.Partially.Label".Translate() , ref settings.overlaysReduceStacklimitPartially, "AS_MOD.OverlaysReduceStacklimit.Partially.Tooltip".Translate()); } listing.End(); }
// Token: 0x06000073 RID: 115 RVA: 0x00004EF4 File Offset: 0x000030F4 public void DoWindowContents(Rect canvas) { var listing_Standard = new Listing_Standard { ColumnWidth = canvas.width }; listing_Standard.Begin(canvas); listing_Standard.Gap(); if (!ModLister.HasActiveModWithName("Medical Supplements")) { listing_Standard.CheckboxLabeled("AY.RealismBandages".Translate(), ref RealismBandages); listing_Standard.Gap(); } listing_Standard.CheckboxLabeled("AY.WashLowersQual".Translate(), ref WashLowersQual); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("AY.AllowCollapseRocks".Translate(), ref AllowCollapseRocks); listing_Standard.Gap(36f); checked { listing_Standard.Label("AY.ResPct".Translate() + " " + (int)ResPct); ResPct = (int)listing_Standard.Slider((int)ResPct, 10f, 200f); listing_Standard.Gap(); Text.Font = GameFont.Tiny; listing_Standard.Label(" " + "AY.ResWarn".Translate()); listing_Standard.Gap(); listing_Standard.Label(" " + "AY.ResTip".Translate()); Text.Font = GameFont.Small; listing_Standard.Gap(); listing_Standard.End(); } }
public static void DoSettingsWindowContents(Rect rect) { var listing_Standard = new Listing_Standard(GameFont.Small) { ColumnWidth = rect.width }; listing_Standard.Begin(rect); listing_Standard.Label("ProjectileInversionSettingSpeedLabel".Translate() + ":" + speed.ToString("0.0"), -1f, "ProjectileInversionSettingSpeedDesc".Translate()); speed = (int)listing_Standard.Slider(speed, 1f, 999f); listing_Standard.CheckboxLabeled("ProjectileInversionSettingShowTextLabel".Translate(), ref showText, "ProjectileInversionSettingShowTextDesc".Translate()); listing_Standard.CheckboxLabeled("ProjectileInversionSettingNoReboundLabel".Translate(), ref noRebound, "ProjectileInversionSettingNoReboundDesc".Translate()); listing_Standard.CheckboxLabeled("ProjectileInversionSettingAutoTraitLabel".Translate(), ref addTrait, "ProjectileInversionSettingAutoTraitDesc".Translate()); listing_Standard.Gap(); listing_Standard.Label("ProjectileInversionSettingWeaponDamageLabel".Translate(weaponDamage)); listing_Standard.IntAdjuster(ref weaponDamage, 1); listing_Standard.Gap(); listing_Standard.Label("ProjectileInversionSettingBaseChanceLabel".Translate(baseChance * 100)); baseChance = (float)Math.Round(listing_Standard.Slider(baseChance, 0.01f, 1f), 2); if (currentVersion != null) { listing_Standard.Gap(); GUI.contentColor = Color.gray; listing_Standard.Label("ProjectileInversionSettingCurrentModVersionLabel".Translate(currentVersion)); GUI.contentColor = Color.white; } listing_Standard.End(); }
// Token: 0x060000AE RID: 174 RVA: 0x00006364 File Offset: 0x00004564 public void DoWindowContents(Rect canvas) { var listing_Standard = new Listing_Standard { ColumnWidth = canvas.width }; listing_Standard.Begin(canvas); listing_Standard.Gap(); checked { listing_Standard.Label("RimPlas.ResPct".Translate() + " " + (int)ResPct); ResPct = (int)listing_Standard.Slider((int)ResPct, 10f, 200f); listing_Standard.Gap(); Text.Font = GameFont.Tiny; listing_Standard.Label(" " + "RimPlas.ResWarn".Translate()); listing_Standard.Gap(); listing_Standard.Label(" " + "RimPlas.ResTip".Translate()); Text.Font = GameFont.Small; listing_Standard.Gap(); listing_Standard.Label("RimPlas.GVentMin".Translate() + " " + (int)GVentMin); GVentMin = (int)listing_Standard.Slider(GVentMin, -20f, 20f); listing_Standard.Gap(); listing_Standard.Label("RimPlas.GVentMax".Translate() + " " + (int)GVentMax); GVentMax = (int)listing_Standard.Slider(GVentMax, 25f, 50f); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("RimPlas.AllowPainCtrlHB".Translate(), ref AllowPainCtrlHB); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("RimPlas.AllowRecCtrlHB".Translate(), ref AllowRecCtrlHB); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("RimPlas.AllowMentalCtrlHB".Translate(), ref AllowMentalCtrlHB); listing_Standard.Gap(); listing_Standard.End(); } }
/// <summary> /// The (optional) GUI part to set your settings. /// </summary> /// <param name="inRect">A Unity Rect with the size of the settings window.</param> public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard listingStandard = new Listing_Standard(); listingStandard.Begin(inRect); listingStandard.Label("-=[ " + "ThroneRoomSettings".Translate() + " ]=-"); listingStandard.CheckboxLabeled("ThroneRoomRequiredByHighestCheckboxLabel".Translate(), ref settings.throneRoomTweaks, "ThroneRoomRequiredByHighestCheckboxTooltip".Translate()); if (settings.throneRoomTweaks) { listingStandard.CheckboxLabeled("SpouseOptionLabel".Translate(), ref settings.spouseWantsThroneroom, "SpouseOptionTooltip".Translate()); } listingStandard.Label(""); listingStandard.Label("-=[ " + "RoyalPassionSkillSettings".Translate() + " ]=-"); listingStandard.CheckboxLabeled("PassionSkillsCheckboxLabel".Translate(), ref settings.willWorkPassionSkills, "PassionSkillsCheckboxTooltip".Translate()); if (settings.willWorkPassionSkills) { if (listingStandard.RadioButton("MajorAndMinorLabel".Translate(), settings.willWorkOnlyMajorPassionSkills == false, 0f, "MajorAndMinorTooltip".Translate())) { settings.willWorkOnlyMajorPassionSkills = false; } if (listingStandard.RadioButton("OnlyMajorLabel".Translate(), settings.willWorkOnlyMajorPassionSkills == true, 0f, "OnlyMajorTooltip".Translate())) { settings.willWorkOnlyMajorPassionSkills = true; } } //listingStandard.Label("exampleFloatExplanation"); //settings.exampleFloat = listingStandard.Slider(settings.exampleFloat, 100f, 300f); listingStandard.End(); base.DoSettingsWindowContents(inRect); }
public void Draw(Rect canvas) { var listingStandard = new Listing_Standard(); listingStandard.Begin(canvas); // Do general settings Text.Font = GameFont.Medium; listingStandard.Label("Replimat_Settings_HeaderGeneral".Translate()); Text.Font = GameFont.Small; listingStandard.Gap(); listingStandard.CheckboxLabeled("Replimat_Settings_PrioritizeFoodQuality_Title".Translate(), ref PrioritizeFoodQuality, "Replimat_Settings_PrioritizeFoodQuality_Desc".Translate()); listingStandard.Label("Replimat_Settings_HopperRefillThresholdPercent_Title".Translate() + ": " + HopperRefillThresholdPercent.ToStringPercent("F0"), -1f, "Replimat_Settings_HopperRefillThresholdPercent_Desc".Translate()); HopperRefillThresholdPercent = (float)Math.Round((double)listingStandard.Slider(HopperRefillThresholdPercent, 0.05f, 1f), 2); // Do incident settings Text.Font = GameFont.Medium; listingStandard.Label("Replimat_Settings_HeaderIncidents".Translate()); Text.Font = GameFont.Small; listingStandard.Gap(); listingStandard.CheckboxLabeled("Replimat_Settings_EnableIncidentSpill_Title".Translate(), ref EnableIncidentSpill, "Replimat_Settings_EnableIncidentSpill_Desc".Translate()); listingStandard.CheckboxLabeled("Replimat_Settings_EnableIncidentKibble_Title".Translate(), ref EnableIncidentKibble, "Replimat_Settings_EnableIncidentKibble_Desc".Translate()); listingStandard.End(); }
public void DoWindowContents(Rect canvas) { Rect nifta = canvas.ContractedBy(40f); listing_Standard = new Listing_Standard(); listing_Standard.ColumnWidth = (nifta.width - 40f) / 2f; listing_Standard.Begin(canvas.ContractedBy(60f)); listing_Standard.CheckboxLabeled("Hide hats when sleeping", ref HatsSleeping); listing_Standard.CheckboxLabeled("Hide hats when indoors", ref HatsIndoors); listing_Standard.CheckboxLabeled("Hair visible under hats", ref HairUnderHats); listing_Standard.GapLine(); listing_Standard.Label("Apparel equip speed"); listing_Standard.CheckboxLabeled("Same speed for all apparel", ref FlatRate); if (FlatRate) { listing_Standard.LabelDouble("Equip speed Ticks", $"{EquipModTicks} ticks"); listing_Standard.IntEntry(ref EquipModTicks, ref buf); } else { listing_Standard.LabelDouble("Equip speed %", $"{EquipModPC.ToStringPercent()}"); EquipModPC = listing_Standard.Slider(EquipModPC, 0, 1f); } listing_Standard.End(); }
public void DoWindowContents(Rect inRect) { Listing_Standard ls = new Listing_Standard(); ls.Begin(inRect); ls.ColumnWidth = inRect.width / 2; ls.CheckboxLabeled("Show welcome message?", ref ShowWelcomeMessage); ls.Gap(); ls.Label("Amount of coins given per lootbox range"); ls.IntRange(ref RandomCoinRange, 1, 10000); ls.Gap(); string perDayBuffer = LootboxesPerDay.ToString(); ls.TextFieldNumericLabeled("Lootboxes per day:", ref LootboxesPerDay, ref perDayBuffer, 0, 20); ls.Gap(); ls.CheckboxLabeled("Force Viewers to Open all Lootboxes at Once", ref ForceOpenAllLootboxesAtOnce); ls.End(); }
/// <param name="inRect"> A Unity Rect with the size of the settings window. </param> public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard listingStandard = new Listing_Standard(); listingStandard.Begin(inRect); listingStandard.CheckboxLabeled("enableFalloutCheckboxLabel".Translate(), ref settings.enableFallout, "enableFalloutCheckboxTooltip".Translate()); listingStandard.CheckboxLabeled("enableMutagenCheckboxLabel".Translate(), ref settings.enableMutagenShipPart, "enableMutagenCheckboxTooltip".Translate()); listingStandard.CheckboxLabeled("enableMutagenDiseasesCheckboxLabel".Translate(), ref settings.enableMutagenDiseases, "enableMutagenDiseasesCheckboxTooltip".Translate()); listingStandard.CheckboxLabeled("enableMutagenMeteorCheckboxLabel".Translate(), ref settings.enableMutagenMeteor, "enableMutagenMeteorCheckboxTooltip".Translate()); listingStandard.CheckboxLabeled("enableWildFormersCheckboxLabel".Translate(), ref settings.enableWildFormers, "enableWildFormersCheckboxTooltip".Translate()); listingStandard.GapLine(); listingStandard.Label($"{"transformChanceSliderLabel".Translate()}: {settings.transformChance.ToString("F1")}%"); settings.transformChance = listingStandard.Slider(settings.transformChance, 0f, 100f); listingStandard.Label($"{"formerChanceSliderLabel".Translate()}: {settings.formerChance.ToString("F1")}%"); settings.formerChance = listingStandard.Slider(settings.formerChance, 0f, 100f); listingStandard.Label($"{"partialChanceSliderLabel".Translate()}: {settings.partialChance.ToString("F1")}%"); settings.partialChance = listingStandard.Slider(settings.partialChance, 0f, 100f); listingStandard.Label($"{"maxMutationThoughtsSliderLabel".Translate()}: {settings.maxMutationThoughts}"); settings.maxMutationThoughts = (int)listingStandard.Slider(settings.maxMutationThoughts, 1, 10); listingStandard.Label($"logging level:{settings.logLevel}"); float f = (float)((int)settings.logLevel); var maxLevel = (int)LogLevel.Pedantic; f = listingStandard.Slider(f, 0, maxLevel + 1); settings.logLevel = (LogLevel)Mathf.FloorToInt(Mathf.Clamp(f, 0, maxLevel)); listingStandard.End(); base.DoSettingsWindowContents(inRect); }
public override void DoSettingsWindowContents(Rect canvas) { base.DoSettingsWindowContents(canvas); var listing = new Listing_Standard(); listing.ColumnWidth = canvas.width; listing.Begin(canvas); listing.CheckboxLabeled(I18n.ShowPromotions, ref Settings.ShowPromotions, I18n.ShowPromotionsTip); if (!Settings.ShowPromotions) { GUI.color = Color.grey; } listing.CheckboxLabeled(I18n.ShowPromotions_NotSubscribed, ref Settings.ShowPromotions_NotSubscribed); listing.CheckboxLabeled(I18n.ShowPromotions_NotActive, ref Settings.ShowPromotions_NotActive); GUI.color = Color.white; listing.Gap(); listing.CheckboxLabeled(I18n.TrimTags, ref Settings.TrimTags, I18n.TrimTagsTip); if (!Settings.TrimTags) { GUI.color = Color.grey; } listing.CheckboxLabeled(I18n.TrimVersionStrings, ref Settings.TrimVersionStrings, I18n.TrimVersionStringsTip); GUI.color = Color.white; listing.End(); }
public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard ls = new Listing_Standard(); Rect rect2 = new Rect(0f, 0f, inRect.width / 2 - 16f, inRect.height + DefDatabase <TraitDef> .AllDefs.Count() * 27); Widgets.BeginScrollView(inRect, ref scrollPosition, rect2, true); ls.Begin(rect2); ls.CheckboxLabeled("Notify when surgery succeed", ref settings.notifyWhenSuccess); ls.Label("Keep Trait List", -1, "Check the trait to prevent being removed in midgame."); ls.GapLine(); foreach (TraitDef def in DefDatabase <TraitDef> .AllDefsListForReading) { foreach (TraitDegreeData i in def.degreeDatas) { string uniqueTrait = def.defName + "(" + i.degree + ")"; bool index = settings.disableDict.TryGetValue(uniqueTrait, false); ls.CheckboxLabeled(uniqueTrait, ref index); settings.disableDict[uniqueTrait] = index; } } settings.Write(); ls.End(); Widgets.EndScrollView(); }
public static void DoWindowContents(Rect rect, Listing_Standard optionsListing) { optionsListing.Label("All"); optionsListing.GapLine(); optionsListing.SliderLabeled("TwitchToolkitVoteTime".Translate(), ref ToolkitSettings.VoteTime, Math.Round((double)ToolkitSettings.VoteTime).ToString(), 1f, 15f); optionsListing.SliderLabeled("TwitchToolkitVoteOptions".Translate(), ref ToolkitSettings.VoteOptions, Math.Round((double)ToolkitSettings.VoteOptions).ToString(), 2f, 5f); optionsListing.CheckboxLabeled("TwitchToolkitVotingChatMsgs".Translate(), ref ToolkitSettings.VotingChatMsgs); optionsListing.CheckboxLabeled("TwitchToolkitVotingWindow".Translate(), ref ToolkitSettings.VotingWindow); optionsListing.CheckboxLabeled("TwitchToolkitLargeVotingWindow".Translate(), ref ToolkitSettings.LargeVotingWindow); optionsListing.Gap(); optionsListing.Label("Tory Talker"); optionsListing.GapLine(); string toryTalkerMTBDays = Math.Truncate(((double)ToolkitSettings.ToryTalkerMTBDays * 100) / 100).ToString(); optionsListing.TextFieldNumericLabeled <float>("Average Days Between Events", ref ToolkitSettings.ToryTalkerMTBDays, ref toryTalkerMTBDays, 0.5f, 10f); optionsListing.Gap(); optionsListing.Label("Hodlbot"); optionsListing.GapLine(); string hodlbotMTBDays = Math.Truncate(((double)ToolkitSettings.HodlBotMTBDays * 100) / 100).ToString(); optionsListing.TextFieldNumericLabeled <float>("Average Days Between Events", ref ToolkitSettings.HodlBotMTBDays, ref hodlbotMTBDays, 0.5f, 10f); optionsListing.CheckboxLabeled("Use ToryTalker Storyteller Alongside Hodlbot?", ref ToolkitSettings.UseToryTalkerWithHodlBot); }
public override void DoSettingsWindowContents(Rect inRect) { Listing_Standard listingStandard = new Listing_Standard(); listingStandard.Begin(inRect); listingStandard.Label("For Performance reasons: changing settings needs a reload from the game to take effect!"); listingStandard.Gap(listingStandard.verticalSpacing); listingStandard.Label("Indicator width"); Rect rect1 = listingStandard.GetRect(22f); weaponQualityIndicatorModSettings.xDrawSize = Widgets.HorizontalSlider(rect1, weaponQualityIndicatorModSettings.xDrawSize, 0f, 5f, false, (weaponQualityIndicatorModSettings.xDrawSize).ToString("") + "", "0", "5", 0.1f); listingStandard.Gap(listingStandard.verticalSpacing); listingStandard.Label("Indicator length"); Rect rect2 = listingStandard.GetRect(22f); weaponQualityIndicatorModSettings.yDrawSize = Widgets.HorizontalSlider(rect2, weaponQualityIndicatorModSettings.yDrawSize, 0f, 5f, false, (weaponQualityIndicatorModSettings.yDrawSize).ToString("") + "", "0", "5", 0.1f); listingStandard.Gap(listingStandard.verticalSpacing); listingStandard.CheckboxLabeled("Show graphic indicator", ref weaponQualityIndicatorModSettings.renderGraphicIndicator); listingStandard.Gap(listingStandard.verticalSpacing); listingStandard.CheckboxLabeled("Change quality color in description card", ref weaponQualityIndicatorModSettings.changeInspectorCardColor); listingStandard.Gap(listingStandard.verticalSpacing); listingStandard.CheckboxLabeled("Change label color on ground", ref weaponQualityIndicatorModSettings.changeShortLabelColor); listingStandard.End(); }
public static void DoWindowContents(Rect inRect) { Listing_Standard listing = new Listing_Standard(); listing.Begin(inRect); Heading(listing, "defaultheading".TranslateSimple()); listing.CheckboxLabeled("enablebeauty".TranslateSimple(), ref BeautyEnabled); listing.CheckboxLabeled("flickable".TranslateSimple(), ref Flickable); listing.CheckboxLabeled("shootthrough".TranslateSimple(), ref CanShootThrough); listing.CheckboxLabeled("temptransmit".TranslateSimple(), ref CanTransmitTemperature); Heading(listing, "focaltype".TranslateSimple()); if (Widgets.RadioButtonLabeled(listing.GetRect(30f), "custom".TranslateSimple(), focalType == WindowFocalType.Custom)) { focalType = WindowFocalType.Custom; WindowCache.WindowComponent.UpdateAllWindowCells(); } if (Widgets.RadioButtonLabeled(listing.GetRect(30f), "circular".TranslateSimple(), focalType == WindowFocalType.Circular)) { focalType = WindowFocalType.Circular; WindowCache.WindowComponent.UpdateAllWindowCells(); } if (Widgets.RadioButtonLabeled(listing.GetRect(30f), "rectangular".TranslateSimple(), focalType == WindowFocalType.Rectangular)) { focalType = WindowFocalType.Rectangular; WindowCache.WindowComponent.UpdateAllWindowCells(); } listing.End(); }
public static void DoWindowContents(Rect rect, Listing_Standard optionsListing) { optionsListing.CheckboxLabeled(Helper.ReplacePlaceholder("TwitchToolkitWhisperAllowed".Translate(), first: ToolkitSettings.Username), ref ToolkitSettings.WhisperCmdsAllowed); optionsListing.CheckboxLabeled(Helper.ReplacePlaceholder("TwitchToolkitWhisperOnly".Translate(), first: ToolkitSettings.Username), ref ToolkitSettings.WhisperCmdsOnly); optionsListing.CheckboxLabeled("TwitchToolkitPurchaseConfirmations".Translate(), ref ToolkitSettings.PurchaseConfirmations); optionsListing.CheckboxLabeled("TwitchToolkitRepeatViewerNames".Translate(), ref ToolkitSettings.RepeatViewerNames); optionsListing.CheckboxLabeled("TwitchToolkitMinifiableBuildings".Translate(), ref ToolkitSettings.MinifiableBuildings); optionsListing.GapLine(); optionsListing.Gap(); optionsListing.SliderLabeled("TwitchToolkitVoteTime".Translate(), ref ToolkitSettings.VoteTime, Math.Round((double)ToolkitSettings.VoteTime).ToString(), 1f, 15f); optionsListing.SliderLabeled("TwitchToolkitVoteOptions".Translate(), ref ToolkitSettings.VoteOptions, Math.Round((double)ToolkitSettings.VoteOptions).ToString(), 2f, 5f); optionsListing.CheckboxLabeled("TwitchToolkitTimedStorytelling".Translate(), ref ToolkitSettings.TimedStorytelling); optionsListing.SliderLabeled("TwitchToolkitTimeBetweenStorytellingEvents".Translate(), ref ToolkitSettings.TimeBetweenStorytellingEvents, Math.Round((double)ToolkitSettings.TimeBetweenStorytellingEvents).ToString(), 1f, 30f); optionsListing.CheckboxLabeled("TwitchToolkitVotingChatMsgs".Translate(), ref ToolkitSettings.VotingChatMsgs); optionsListing.CheckboxLabeled("TwitchToolkitVotingWindow".Translate(), ref ToolkitSettings.VotingWindow); optionsListing.CheckboxLabeled("TwitchToolkitLargeVotingWindow".Translate(), ref ToolkitSettings.LargeVotingWindow); optionsListing.GapLine(); optionsListing.Gap(); optionsListing.CheckboxLabeled("TwitchToolkitChatReqsForCoins".Translate(), ref ToolkitSettings.ChatReqsForCoins); optionsListing.SliderLabeled("TwitchToolkitTimeBeforeHalfCoins".Translate(), ref ToolkitSettings.TimeBeforeHalfCoins, Math.Round((double)ToolkitSettings.TimeBeforeHalfCoins).ToString(), 15f, 120f); optionsListing.SliderLabeled("TwitchToolkitTimeBeforeNoCoins".Translate(), ref ToolkitSettings.TimeBeforeNoCoins, Math.Round((double)ToolkitSettings.TimeBeforeNoCoins).ToString(), 30f, 240f); }
public static void DoSettingsWindowContents(Rect rect) { Listing_Standard list = new Listing_Standard(GameFont.Small); list.ColumnWidth = rect.width; list.Begin(rect); list.CheckboxLabeled(ResourceBank.String.ShowNotificationPopup, ref showNotification, ResourceBank.String.ShowNotificationPopupTip); list.CheckboxLabeled(ResourceBank.String.ShouldPauseOnOpen, ref shouldPause, ResourceBank.String.ShouldPauseOnOpenTip); list.CheckboxLabeled(ResourceBank.String.DebugResearch, ref debugResearch, ResourceBank.String.DebugResearchTip); list.CheckboxLabeled(ResourceBank.String.ShouldResetOnOpen, ref shouldReset, ResourceBank.String.ShouldResetOnOpenTip); list.CheckboxLabeled(ResourceBank.String.ShowFilteredLinks, ref showFilteredLinks, ResourceBank.String.ShowFilteredLinksTip); list.Label(ResourceBank.String.FilterOpacityDesc(0.2f, (float)Math.Round(FilterNonMatchAlpha, 2))); FilterNonMatchAlpha = (float)Math.Round(list.Slider(FilterNonMatchAlpha, 0, 1), 2); list.End(); }
// Token: 0x06000007 RID: 7 RVA: 0x00002344 File Offset: 0x00000544 public void DoWindowContents(Rect canvas) { var listing_Standard = new Listing_Standard { ColumnWidth = canvas.width }; listing_Standard.Begin(canvas); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("MSOpt.RealisticBandages".Translate(), ref RealisticBandages); listing_Standard.Gap(); listing_Standard.CheckboxLabeled("MSOpt.AllowCollapseRocks".Translate(), ref AllowCollapseRocks); listing_Standard.Gap(24f); checked { listing_Standard.Label("MSOpt.ResPct".Translate() + " " + (int)ResPct); ResPct = (int)listing_Standard.Slider((int)ResPct, 10f, 200f); listing_Standard.Gap(); Text.Font = GameFont.Tiny; listing_Standard.Label(" " + "MSOpt.ResWarn".Translate()); listing_Standard.Gap(); listing_Standard.Label(" " + "MSOpt.ResTip".Translate()); Text.Font = GameFont.Small; listing_Standard.Gap(); listing_Standard.End(); } }
public override void DoSettingsWindowContents(Rect inRect) { var listing = new Listing_Standard(); listing.Begin(inRect); listing.ColumnWidth = 220f; DoUsernameField(listing); listing.TextFieldNumericLabeled("MpAutosaveSlots".Translate() + ": ", ref settings.autosaveSlots, ref slotsBuffer, 1f, 99f); listing.CheckboxLabeled("MpShowPlayerCursors".Translate(), ref settings.showCursors); listing.CheckboxLabeled("MpAutoAcceptSteam".Translate(), ref settings.autoAcceptSteam, "MpAutoAcceptSteamDesc".Translate()); listing.CheckboxLabeled("MpTransparentChat".Translate(), ref settings.transparentChat); listing.CheckboxLabeled("MpAggressiveTicking".Translate(), ref settings.aggressiveTicking, "MpAggressiveTickingDesc".Translate()); listing.CheckboxLabeled("MpSyncModConfigs".Translate(), ref settings.syncModConfigs, "MpSyncModConfigsDesc".Translate()); var appendNameToAutosaveLabel = $"{"MpAppendNameToAutosave".Translate()}: "; var appendNameToAutosaveLabelWidth = Text.CalcSize(appendNameToAutosaveLabel).x; var appendNameToAutosaveCheckboxWidth = appendNameToAutosaveLabelWidth + 30f; listing.CheckboxLabeled(appendNameToAutosaveLabel, ref settings.appendNameToAutosave); listing.CheckboxLabeled("MpPauseAutosaveCounter".Translate(), ref settings.pauseAutosaveCounter, "MpPauseAutosaveCounterDesc".Translate()); listing.CheckboxLabeled("MpShowModCompatibility".Translate(), ref settings.showModCompatibility, "MpShowModCompatibilityDesc".Translate()); listing.CheckboxLabeled("MpAutosaveOnDesync".Translate(), ref settings.autosaveOnDesync, "MpAutosaveOnDesyncDesc".Translate()); if (Prefs.DevMode) { listing.CheckboxLabeled("Show debug info", ref settings.showDevInfo); listing.TextFieldNumericLabeled("Desync Radius: ", ref settings.desyncTracesRadius, ref desyncRadiusBuffer, 1f, 200f); } listing.End(); }
public static void DoSettingsWindowContents(Rect rect) { Listing_Standard options = new Listing_Standard(); options.Begin(rect); options.Gap(20f); options.Label("DND_UnlockOptionsGeneral".Translate()); options.Gap(10f); options.CheckboxLabeled("DND_KeepUnlockedForUrgentTending".Translate(), ref KeepUnlockedForUrgentTending, "DND_KeepUnlockedForUrgentTending_Tooltip".Translate()); options.Gap(10f); options.CheckboxLabeled("DND_KeepUnlockedForSurgery".Translate(), ref KeepUnlockedForSurgery, "DND_KeepUnlockedForSurgery_Tooltip".Translate()); options.Gap(10f); options.CheckboxLabeled("DND_KeepUnlockedForAnyTending".Translate(), ref KeepUnlockedForAnyTending, "DND_KeepUnlockedForAnyTending_Tooltip".Translate()); options.Gap(40f); options.Label("DND_LockOptionsGeneral".Translate()); options.Gap(10f); options.CheckboxLabeled("DND_KeepLockedForSoloRelaxation".Translate(), ref KeepLockedForSoloRelaxation, "DND_KeepLockedForSoloRelaxation_Tooltip".Translate()); options.End(); }
public static void DoSettingsWindowContents(Rect rect) { Listing_Standard l = new Listing_Standard(GameFont.Small) { ColumnWidth = System.Math.Min(400, rect.width / 2) }; l.Begin(rect); l.CheckboxLabeled("ChangeMirror.ShareHairStyles".Translate(), ref shareHairStyles); l.Gap(48); l.CheckboxLabeled("ChangeMirror.ShowBodyChange".Translate(), ref showBodyChange); if (showBodyChange) { l.Gap(4); l.CheckboxLabeled("ChangeMirror.ShowGenderAgeChange".Translate(), ref showGenderAgeChange); l.Gap(20); } else { l.Gap(48); } l.End(); VerifySupportedEditors(showBodyChange); }
protected override void FillTab() { var compPrisoner = this.SelPawn.TryGetComp<CompPrisoner>(); if( compPrisoner == null ) { throw new Exception( "ITab_Pawn_Prisoner on non-human!" ); } bool isSlave = this.SelPawn.IsSlaveOfColony(); bool isColonist = ( ( !this.SelPawn.IsPrisonerOfColony )&& ( compPrisoner.wasArrested ) ); ConceptDatabase.KnowledgeDemonstrated( ConceptDefOf.PrisonerTab, KnowledgeAmount.GuiFrame ); Text.Font = GameFont.Small; var iTabInnerRect = new Rect( 0.0f, 0.0f, this.size.x, 9999f ).ContractedBy( innerBorder ); var iTabListing = new Listing_Standard( iTabInnerRect ); { #region Debug // Window will automagically grow in height if needed if( Prefs.DevMode ) { var textFont = Text.Font; Text.Font = GameFont.Tiny; var devRect = iTabListing.GetRect( ( isColonist ? 4f : isSlave ? 5f : 6f ) * 16f ); devRect.height = 20f; Widgets.Label( devRect, "Debug Info:" ); devRect.y += 16f; if( !isColonist ) { Widgets.Label( devRect, string.Format( "MTB Prison break (days): {0}", (int) PrisonBreakUtility.InitiatePrisonBreakMtbDays( this.SelPawn ) ) ); devRect.y += 16f; Widgets.Label( devRect, string.Format( "Odds of escape attempt: {0}", (int) ( 100f * this.SelPawn.EscapeProbability() ) ) ); devRect.y += 16f; Widgets.Label( devRect, string.Format( "Mood: {0}", (int) ( 100f * this.SelPawn.needs.mood.CurLevel ) ) ); devRect.y += 16f; Widgets.Label( devRect, string.Format( "Sight (actual/thought): {0}/{1}", this.SelPawn.CanBeSeenByColony(), this.SelPawn.ThinksTheyCanBeSeenByColony() ) ); devRect.y += 16f; } else { Widgets.Label( devRect, string.Format( "wasArrested/Release: {0}", compPrisoner.wasArrested) ); devRect.y += 16f; Widgets.Label( devRect, string.Format( "Release/Current: {0}/{1}", compPrisoner.releaseAfterTick, Find.TickManager.TicksGame ) ); devRect.y += 16f; } #region Prisoner Recruitment Difficulty if( !isSlave ) { Widgets.Label( devRect, Data.Strings.RecruitmentDifficulty.Translate() + ": " + this.SelPawn.RecruitDifficulty( Faction.OfPlayer, false ).ToString( "##0" ) ); devRect.y += 16f; } #endregion Text.Font = textFont; Widgets.DrawLineHorizontal( 0f, iTabListing.CurHeight, iTabListing.ColumnWidth ); iTabListing.Gap( innerBorder ); } #endregion #region Original Slave Faction and Role if( isSlave ) { var textFont = Text.Font; Text.Font = GameFont.Tiny; iTabListing.Label( Data.Strings.FactionLabel.Translate( compPrisoner.originalFaction.Name ) ); iTabListing.Label( Data.Strings.PawnKindLabel.Translate( compPrisoner.originalPawnKind.LabelCap ) ); Text.Font = textFont; } #endregion #region Prisoner/Slave Interaction Options if( !isColonist ) { var interactionsRect = iTabListing.GetRect( innerBorder * 2f + 28f * ( isSlave ? 4 : 6 ) ); Widgets.DrawMenuSection( interactionsRect, true ); var interactionsInnerRect = interactionsRect.ContractedBy( innerBorder ); GUI.BeginGroup( interactionsInnerRect ); { var optionRect = new Rect( 0.0f, 0.0f, interactionsInnerRect.width, 30f ); #region Core Options foreach( PrisonerInteractionMode mode in Enum.GetValues( typeof( PrisonerInteractionMode ) ) ) { // Can't recruit slaves and they have their own release mechanism bool showThis = ( ( !isSlave ) || ( ( mode != PrisonerInteractionMode.AttemptRecruit ) && ( mode != PrisonerInteractionMode.Release ) ) ); if( showThis ) { if( Widgets.RadioButtonLabeled( optionRect, mode.GetLabel(), this.SelPawn.guest.interactionMode == mode ) ) { this.SelPawn.guest.interactionMode = mode; } optionRect.y += 28f; } } #endregion #region Prisoner Specific Options if( !isSlave ) { // Enslave prisoner if( Widgets.RadioButtonLabeled( optionRect, Data.Strings.Enslave.Translate(), this.SelPawn.guest.interactionMode == Data.PIM.EnslavePrisoner ) ) { this.SelPawn.guest.interactionMode = Data.PIM.EnslavePrisoner; } optionRect.y += 28f; } #endregion #region Slave Specific Options if( isSlave ) { // Free slave if( Widgets.RadioButtonLabeled( optionRect, Data.Strings.FreeSlave.Translate(), this.SelPawn.guest.interactionMode == Data.PIM.FreeSlave ) ) { this.SelPawn.guest.interactionMode = Data.PIM.FreeSlave; } optionRect.y += 28f; } #endregion } GUI.EndGroup(); iTabListing.Gap( innerBorder ); } #endregion #region Transer Pawn if( !isColonist ) { #region [Cancel] Transfer Button var transferOrCancelRect = iTabListing.GetRect( 30f ); #region Transfer to a valid Marker or Prison Cell if( !compPrisoner.ShouldBeTransfered ) { if( Widgets.ButtonText( transferOrCancelRect, Data.Strings.TransferPrisoner.Translate() ) ) { var floatMenuOptions = this.TransferTargetFloatMenuOptions(); if( ( floatMenuOptions.Count == 0 ) || ( ( floatMenuOptions.Count == 1 ) && ( floatMenuOptions[ 0 ].Label == Data.Strings.PrisonCell.Translate() ) && ( this.SelPawn.GetRoom() == this.SelPawn.ownership.OwnedBed.GetRoom() ) ) ) { floatMenuOptions.Add( new FloatMenuOption( Data.Strings.InstallMarker.Translate(), (Action) null ) ); } Find.WindowStack.Add( (Window) new FloatMenu( floatMenuOptions ) ); } else { this.cachedMarkers = null; } } #endregion #region Cancel Transfer if( compPrisoner.ShouldBeTransfered ) { if( Widgets.ButtonText( transferOrCancelRect, Data.Strings.CancelTransfer.Translate() ) ) { compPrisoner.haulTarget = null; } } #endregion iTabListing.Gap( innerBorder ); #endregion #region Transfer Target var transferTargetRect = iTabListing.GetRect( 30f ); var style = new GUIStyle( Text.CurTextFieldStyle ); style.alignment = TextAnchor.MiddleCenter; string label = string.Empty; if( compPrisoner.haulTarget != null ) { if( compPrisoner.haulTarget is Building_RoomMarker ) { label = ( (Building_RoomMarker) compPrisoner.haulTarget ).markerName; } else if( compPrisoner.haulTarget is Building_Bed ) { label = Data.Strings.PrisonCell.Translate(); } } GUI.Label( transferTargetRect, label, style ); iTabListing.Gap( innerBorder ); #endregion #region Restraints var restraintsRect = iTabListing.GetRect( innerBorder * 2f + 28f * 2f ); Widgets.DrawMenuSection( restraintsRect, true ); var restraintsInnerRect = restraintsRect.ContractedBy( innerBorder ); GUI.BeginGroup( restraintsInnerRect ); { var restrainRect = new Rect( 0.0f, 0.0f, restraintsInnerRect.width, 30f ); Widgets.CheckboxLabeled( restrainRect, Data.Strings.RestrainCuff.Translate(), ref compPrisoner.ShouldBeCuffed ); restrainRect.y += 28f; Widgets.CheckboxLabeled( restrainRect, Data.Strings.RestrainShackle.Translate(), ref compPrisoner.ShouldBeShackled ); restrainRect.y += 28f; } GUI.EndGroup(); #endregion } #endregion #region Food if( !isColonist ) { var getsFood = this.SelPawn.guest.GetsFood; iTabListing.CheckboxLabeled( Data.Strings.GetsFood.Translate(), ref getsFood, (string) null ); this.SelPawn.guest.GetsFood = getsFood; } #endregion #region Medicine if( !isColonist ) { var medicalCareRect = iTabListing.GetRect( 28f ); medicalCareRect.width = MedicalCareUtility.CareSetterWidth; MedicalCareUtility.MedicalCareSetter( medicalCareRect, ref this.SelPawn.playerSettings.medCare ); } #endregion } iTabListing.End(); tabHeight = iTabListing.CurHeight; }
/// <summary> /// Draws the mod configuration window contents. /// </summary> /// <returns>The final height of the window rect.</returns> /// <param name="rect">Rect</param> public override float DoWindowContents( Rect rect ) { var listing = new Listing_Standard( rect ); { listing.ColumnWidth = rect.width - 4f; #region Main Toggle var toggleLabel = "MiniMap.MCMToggleMain".Translate(); listing.CheckboxLabeled( toggleLabel, ref MiniMap.MiniMapController.visible ); listing.Gap(); #endregion #region Handle all MiniMaps and Overlays foreach( var minimap in Controller.Data.MiniMaps ) { if( minimap.IsOrHasIConfigurable ) { var iMinimap = minimap as IConfigurable; #region Minimap Header MinimapHeader( listing, minimap ); #endregion #region Handle MiniMap IConfigurable if( iMinimap != null ) { #region Minimap IConfigurable var iMinimapRect = new Rect( listing.Indentation(), listing.CurHeight, listing.ColumnWidth, 9999f ); GUI.BeginGroup( iMinimapRect ); var iMinimapHeight = iMinimap.DrawMCMRegion( iMinimapRect.AtZero() ); GUI.EndGroup(); listing.Gap( iMinimapHeight + 6f ); #endregion } #endregion #region Handle all MiniMap Overlays foreach( var overlay in minimap.overlayWorkers ) { var iOverlay = overlay as IConfigurable; #region Handle Overlay IConfigurable if( iOverlay != null ) { #region Overlay Header OverlayHeader( listing, overlay ); #endregion #region Overlay IConfigurable var iOverlayRect = new Rect( listing.Indentation(), listing.CurHeight, listing.ColumnWidth, 9999f ); GUI.BeginGroup( iOverlayRect ); var iOverlayHeight = iOverlay.DrawMCMRegion( iOverlayRect.AtZero() ); GUI.EndGroup(); listing.Gap( iOverlayHeight + 6f ); listing.Undent(); #endregion } #endregion } #endregion #region Final Undentation listing.Gap(); listing.Undent(); #endregion } } #endregion } listing.End(); return listing.CurHeight; }