RimWorld
Psychology (unofficial) v1.1-1.6
Inspector tab disappear
When changing pawn's backstory using Character Editor, the Psyche tab will disappear until reload the save.

This is because Psychology is using an unsafe approach to inject inspector tab dynamically.

The problem is at Psychology.SpeciesHelper:AddInspectorTabToDefAndCorpseDef, codes in this form:

if (t.inspectorTabsResolved == null) { t.inspectorTabsResolved = new List<InspectTabBase>(1); } t.inspectorTabsResolved.AddDistinct(InspectTabManager.GetSharedInstance(typeof(ITab_Pawn_Psyche)));

Directly touching inspectorTabsResolved is unsafe, changes will be overwrited at any time when others resolve it again.

Here's a better approach:

if (t.inspectorTabs == null) { t.inspectorTabs = new List<Type>(1); } t.inspectorTabs.Add(typeof(ITab_Pawn_Psyche)); t.ResolveReferences();
Laatst bewerkt door Cedaro; 18 aug 2023 om 1:15
< >
1-1 van 1 reacties weergegeven
che_lovek  [ontwikkelaar] 8 feb 2024 om 8:21 
I've tested this and it does indeed seem to fix a couple of tab telated issues.
Thank you for the suggestion!
< >
1-1 van 1 reacties weergegeven
Per pagina: 1530 50