refactor: phase 5 transpiler docs, mod-compat helpers, and build quality gates

This commit is contained in:
2026-06-23 23:03:13 +08:00
parent cca8b8594d
commit c2016909ff
43 changed files with 2327 additions and 135 deletions
+6 -2
View File
@@ -202,7 +202,9 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
}
GameMain.data?.warningSystem?.UpdateCriticalWarningText();
}
// Harmony transpiler: WarningSystem_hasCriticalWarning_Transpiler
// Target: WarningSystem.hasCriticalWarning (getter)
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(WarningSystem), nameof(WarningSystem.hasCriticalWarning), MethodType.Getter)]
private static IEnumerable<CodeInstruction> WarningSystem_hasCriticalWarning_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -228,7 +230,9 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: WarningSystem_UpdateCriticalWarningText_Transpiler
// Target: WarningSystem.UpdateCriticalWarningText
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(WarningSystem), nameof(WarningSystem.UpdateCriticalWarningText))]
private static IEnumerable<CodeInstruction> WarningSystem_UpdateCriticalWarningText_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -124,7 +124,9 @@ internal class ImmediateBuild : PatchImpl<ImmediateBuild>
FactoryPatch.ArrivePlanet(factory);
}
}
// Harmony transpiler: Transpiler
// Target: BuildTool_Addon.CreatePrebuilds, BuildTool_BlueprintPaste.CreatePrebuilds, BuildTool_Click.CreatePrebuilds, BuildTool_Inserter.CreatePrebuilds, BuildTool_Path.CreatePrebuilds
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(BuildTool_Addon), nameof(BuildTool_Addon.CreatePrebuilds))]
[HarmonyPatch(typeof(BuildTool_BlueprintPaste), nameof(BuildTool_BlueprintPaste.CreatePrebuilds))]
@@ -7,6 +7,9 @@ namespace CheatEnabler.Patches.Factory;
internal class ControlPanelRemoteLogistics : PatchImpl<ControlPanelRemoteLogistics>
{
// Harmony transpiler: UIControlPanelDispenserInspector_OnItemIconMouseDown_Transpiler
// Target: UIControlPanelDispenserInspector.OnItemIconMouseDown, UIControlPanelDispenserInspector.OnHoldupItemClick, UIControlPanelDispenserInspector.OnCourierIconClick
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(UIControlPanelDispenserInspector), nameof(UIControlPanelDispenserInspector.OnItemIconMouseDown))]
[HarmonyPatch(typeof(UIControlPanelDispenserInspector), nameof(UIControlPanelDispenserInspector.OnHoldupItemClick))]
@@ -35,7 +38,9 @@ internal class ControlPanelRemoteLogistics : PatchImpl<ControlPanelRemoteLogisti
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: UIControlPanelStationInspector_OnShipIconClick_Transpiler
// Target: UIControlPanelStationInspector.OnShipIconClick, UIControlPanelStationInspector.OnWarperIconClick, UIControlPanelStationInspector.OnDroneIconClick
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(UIControlPanelStationInspector), nameof(UIControlPanelStationInspector.OnShipIconClick))]
[HarmonyPatch(typeof(UIControlPanelStationInspector), nameof(UIControlPanelStationInspector.OnWarperIconClick))]
@@ -64,7 +69,9 @@ internal class ControlPanelRemoteLogistics : PatchImpl<ControlPanelRemoteLogisti
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: UIControlPanelStationStorage_OnItemIconMouseDown_Transpiler
// Target: UIControlPanelStationStorage.OnItemIconMouseDown
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(UIControlPanelStationStorage), nameof(UIControlPanelStationStorage.OnItemIconMouseDown))]
private static IEnumerable<CodeInstruction> UIControlPanelStationStorage_OnItemIconMouseDown_Transpiler(IEnumerable<CodeInstruction> instructions)
@@ -91,7 +98,9 @@ internal class ControlPanelRemoteLogistics : PatchImpl<ControlPanelRemoteLogisti
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: UIControlPanelStationStorage_OnTakeBackButtonClick_Transpiler
// Target: UIControlPanelStationStorage.OnTakeBackButtonClick
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(UIControlPanelStationStorage), nameof(UIControlPanelStationStorage.OnTakeBackButtonClick))]
private static IEnumerable<CodeInstruction> UIControlPanelStationStorage_OnTakeBackButtonClick_Transpiler(IEnumerable<CodeInstruction> instructions)
@@ -110,7 +119,9 @@ internal class ControlPanelRemoteLogistics : PatchImpl<ControlPanelRemoteLogisti
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: UIControlPanelVeinCollectorPanel_OnProductIconClick_Transpiler
// Target: UIControlPanelVeinCollectorPanel.OnProductIconClick
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(UIControlPanelVeinCollectorPanel), nameof(UIControlPanelVeinCollectorPanel.OnProductIconClick))]
private static IEnumerable<CodeInstruction> UIControlPanelVeinCollectorPanel_OnProductIconClick_Transpiler(IEnumerable<CodeInstruction> instructions)
@@ -16,7 +16,9 @@ internal class NoConditionBuild : PatchImpl<NoConditionBuild>
{
GameMain.data?.warningSystem?.UpdateCriticalWarningText();
}
// Harmony transpiler: BuildTool_CheckBuildConditions_Transpiler
// Target: BuildTool_Addon.CheckBuildConditions, BuildTool_Inserter.CheckBuildConditions
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler, HarmonyPriority(Priority.Last)]
[HarmonyPatch(typeof(BuildTool_Addon), nameof(BuildTool_Addon.CheckBuildConditions))]
[HarmonyPatch(typeof(BuildTool_Inserter), nameof(BuildTool_Inserter.CheckBuildConditions))]
@@ -25,7 +27,9 @@ internal class NoConditionBuild : PatchImpl<NoConditionBuild>
yield return new CodeInstruction(OpCodes.Ldc_I4_1);
yield return new CodeInstruction(OpCodes.Ret);
}
// Harmony transpiler: BuildTool_Path_CheckBuildConditions_Transpiler
// Target: BuildTool_Path.CheckBuildConditions
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler, HarmonyPriority(Priority.First)]
[HarmonyPatch(typeof(BuildTool_Path), nameof(BuildTool_Path.CheckBuildConditions))]
private static IEnumerable<CodeInstruction> BuildTool_Path_CheckBuildConditions_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -60,7 +64,9 @@ internal class NoConditionBuild : PatchImpl<NoConditionBuild>
);
return matcher.InstructionEnumeration();
}
// Harmony transpiler: BuildTool_Click_CheckBuildConditions_Transpiler
// Target: BuildTool_BlueprintPaste.CheckBuildConditions, BuildTool_Click.CheckBuildConditions
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler, HarmonyPriority(Priority.Last)]
[HarmonyPatch(typeof(BuildTool_BlueprintPaste), nameof(BuildTool_BlueprintPaste.CheckBuildConditions))]
[HarmonyPatch(typeof(BuildTool_Click), nameof(BuildTool_Click.CheckBuildConditions))]
@@ -9,6 +9,9 @@ namespace CheatEnabler.Patches.Factory;
internal class RemovePowerSpaceLimit : PatchImpl<RemovePowerSpaceLimit>
{
// Harmony transpiler: BuildTool_CheckBuildConditions_Transpiler
// Target: BuildTool_Click.CheckBuildConditions, BuildTool_BlueprintPaste.CheckBuildConditions
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(BuildTool_Click), nameof(BuildTool_Click.CheckBuildConditions))]
[HarmonyPatch(typeof(BuildTool_BlueprintPaste), nameof(BuildTool_BlueprintPaste.CheckBuildConditions))]
@@ -39,6 +42,9 @@ internal class RemovePowerSpaceLimit : PatchImpl<RemovePowerSpaceLimit>
internal class BoostWindPower : PatchImpl<BoostWindPower>
{
// Harmony transpiler: PowerGeneratorComponent_EnergyCap_Wind_Transpiler
// Target: PowerGeneratorComponent.EnergyCap_Wind
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.EnergyCap_Wind))]
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_EnergyCap_Wind_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -64,6 +70,9 @@ internal class BoostWindPower : PatchImpl<BoostWindPower>
internal class BoostSolarPower : PatchImpl<BoostSolarPower>
{
// Harmony transpiler: PowerGeneratorComponent_EnergyCap_PV_Transpiler
// Target: PowerGeneratorComponent.EnergyCap_PV
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.EnergyCap_PV))]
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_EnergyCap_PV_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -88,6 +97,9 @@ internal class BoostSolarPower : PatchImpl<BoostSolarPower>
internal class BoostFuelPower : PatchImpl<BoostFuelPower>
{
// Harmony transpiler: PowerGeneratorComponent_EnergyCap_Fuel_Transpiler
// Target: PowerGeneratorComponent.EnergyCap_Fuel
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.EnergyCap_Fuel))]
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_EnergyCap_Fuel_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
@@ -129,6 +141,9 @@ internal class BoostFuelPower : PatchImpl<BoostFuelPower>
internal class BoostGeothermalPower : PatchImpl<BoostGeothermalPower>
{
// Harmony transpiler: PowerGeneratorComponent_EnergyCap_GTH_Transpiler
// Target: PowerGeneratorComponent.EnergyCap_GTH
// Fallback: None — patch will fail loudly if the target method body changes.
[HarmonyTranspiler]
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.EnergyCap_GTH))]
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_EnergyCap_GTH_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)