RimWorld
Psychology (unofficial) v1.1-1.6
Cedaro 18 AGO 2023 a las 1:13
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();
Última edición por Cedaro; 18 AGO 2023 a las 1:15
< >
Mostrando 1-1 de 1 comentarios
che_lovek  [desarrollador] 8 FEB 2024 a las 8:21 
I've tested this and it does indeed seem to fix a couple of tab telated issues.
Thank you for the suggestion!
< >
Mostrando 1-1 de 1 comentarios
Por página: 1530 50