public void DeregisterFromTickManager(ThingWithComps thing) { if (thing.def.tickerType != TickerType.Never) { return; // already done or complained about } // [Reflection] TickManager.tickListRare.DeregisterThing(thing) FieldInfo tickListRareField = AccessTools.Field(typeof(TickManager), "tickListRare"); TickList tickListRare = (TickList)tickListRareField.GetValue(Find.TickManager); tickListRare.DeregisterThing(thing); }