This commit is contained in:
CGFighter
2022-11-10 14:52:13 +03:00
parent 575b4a8440
commit e4eeed2157
3 changed files with 18 additions and 8 deletions

View File

Binary file not shown.

View File

@@ -43,7 +43,19 @@ namespace ResearchWhatever.Patches
return true;
}
public static void Prefix(Pawn pawn, Thing t, bool forced)
private static bool CanBePicked(this ResearchProjectDef research, Building_ResearchBench bench)
{
return Find.Storyteller.difficulty.AllowedBy(research.hideWhen)
&& !research.IsFinished
&& research.PrerequisitesCompleted
&& research.TechprintRequirementMet
&& research.PlayerMechanitorRequirementMet
&& research.StudiedThingsRequirementsMet
&& (research.requiredResearchBuilding == null || research.requiredResearchBuilding == bench.def && bench.hasFacilities(research.requiredResearchFacilities))
&& research.GetModExtension<ResearchWhateverExtansion>()?.ignore != true;
}
internal static void Prefix(Pawn pawn, Thing t, bool forced)
{
ResearchProjectDef currentProj = Find.ResearchManager.currentProj;
if (currentProj != null) return;
@@ -56,12 +68,7 @@ namespace ResearchWhatever.Patches
List<ResearchProjectDef> projects = new List<ResearchProjectDef>(
from x in DefDatabase<ResearchProjectDef>.AllDefsListForReading
where Find.Storyteller.difficulty.AllowedBy(x.hideWhen)
&& !x.IsFinished
&& x.TechprintRequirementMet
&& x.PrerequisitesCompleted
&& (x.requiredResearchBuilding == null || x.requiredResearchBuilding == bench.def && bench.hasFacilities(x.requiredResearchFacilities))
&& x.GetModExtension<ResearchWhateverExtansion>()?.ignore != true
where x.CanBePicked(bench)
select x);
if (projects.NullOrEmpty())

View File

@@ -1,4 +1,7 @@
1.0.5
1.0.6
- added checking for new prerequisites;
1.0.5
- 1.4 aye;
1.0.4