Add the Policing settings toggle; re-vendor Core + Justice DLLs

A fourth checkbox (Policing, default on) drives colony crime independently, and
the re-vendored drop-in carries the flipped-on Core flag, the enrichments, and
prison riots.
This commit is contained in:
flan
2026-07-15 18:37:17 +00:00
parent 703317b507
commit bd96c2c516
4 changed files with 7 additions and 0 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
+7
View File
@@ -42,6 +42,10 @@ namespace InstitutionSuite
l.CheckboxLabeled("Gangs", l.CheckboxLabeled("Gangs",
ref settings.gangs, ref settings.gangs,
"Gangs as contraband economies: joining by disposition, smuggling networks, rivalry, and fights-as-crime. Leans on Contraband and Justice."); "Gangs as contraband economies: joining by disposition, smuggling networks, rivalry, and fights-as-crime. Leans on Contraband and Justice.");
l.Gap();
l.CheckboxLabeled("Policing (colony crime)",
ref settings.policing,
"The pre-arrest layer: your own colonists commit crimes on a spectrum (rarer in small, tight colonies), witnesses and a constable's work name the culprit, and a weighed arrest can end in a cell -- or a resisted breakout. A big behavioural change; turn it off to keep the rest of Justice without colony crime.");
l.End(); l.End();
settings.Apply(); // live: a toggle takes effect immediately for the gated behaviour settings.Apply(); // live: a toggle takes effect immediately for the gated behaviour
} }
@@ -52,6 +56,7 @@ namespace InstitutionSuite
public bool contraband = true; public bool contraband = true;
public bool justice = true; public bool justice = true;
public bool gangs = true; public bool gangs = true;
public bool policing = true;
/// <summary>Mirror the choices into Core's shared flags that every feature reads.</summary> /// <summary>Mirror the choices into Core's shared flags that every feature reads.</summary>
public void Apply() public void Apply()
@@ -59,6 +64,7 @@ namespace InstitutionSuite
Contraband.InstitutionSettings.contraband = contraband; Contraband.InstitutionSettings.contraband = contraband;
Contraband.InstitutionSettings.justice = justice; Contraband.InstitutionSettings.justice = justice;
Contraband.InstitutionSettings.gangs = gangs; Contraband.InstitutionSettings.gangs = gangs;
Contraband.InstitutionSettings.policing = policing;
} }
public override void ExposeData() public override void ExposeData()
@@ -66,6 +72,7 @@ namespace InstitutionSuite
Scribe_Values.Look(ref contraband, "contraband", true); Scribe_Values.Look(ref contraband, "contraband", true);
Scribe_Values.Look(ref justice, "justice", true); Scribe_Values.Look(ref justice, "justice", true);
Scribe_Values.Look(ref gangs, "gangs", true); Scribe_Values.Look(ref gangs, "gangs", true);
Scribe_Values.Look(ref policing, "policing", true);
base.ExposeData(); base.ExposeData();
} }
} }