// Token: 0x06000063 RID: 99 RVA: 0x0000650C File Offset: 0x0000470C
        public override void PostSpawnSetup(bool respawningAfterLoad)
        {
            base.PostSpawnSetup(respawningAfterLoad);
            if (respawningAfterLoad)
            {
                var pawn = Pawn;
                if (pawn?.apparel != null && Pawn.apparel.WornApparelCount > 0)
                {
                    foreach (var apparel in Pawn.apparel.WornApparel)
                    {
                        var compGearCamo = apparel.TryGetComp <CompGearCamo>();
                        if (compGearCamo == null || !(compGearCamo.Props.ActiveCamoEff > 0f) ||
                            !(compGearCamo.Props.CamoEnergyMax > 0f) ||
                            apparel.GetType() == typeof(ActiveCamoApparel) ||
                            apparel.def.thingClass != typeof(ActiveCamoApparel))
                        {
                            continue;
                        }

                        CorrectActiveApparel(apparel, Pawn);
                        break;
                    }
                }
            }

            CamoGearUtility.CalcAndSetCamoEff(Pawn);
        }
Exemple #2
0
 // Token: 0x06000063 RID: 99 RVA: 0x0000650C File Offset: 0x0000470C
 public override void PostSpawnSetup(bool respawningAfterLoad)
 {
     base.PostSpawnSetup(respawningAfterLoad);
     if (respawningAfterLoad)
     {
         Pawn pawn = this.Pawn;
         if ((pawn?.apparel) != null && this.Pawn.apparel.WornApparelCount > 0)
         {
             foreach (Apparel apparel in this.Pawn.apparel.WornApparel)
             {
                 CompGearCamo compGearCamo = ThingCompUtility.TryGetComp <CompGearCamo>(apparel);
                 if (compGearCamo != null && compGearCamo.Props.ActiveCamoEff > 0f && compGearCamo.Props.CamoEnergyMax > 0f && apparel.GetType() != typeof(ActiveCamoApparel) && apparel.def.thingClass == typeof(ActiveCamoApparel))
                 {
                     PawnCamoData.CorrectActiveApparel(apparel, this.Pawn);
                     break;
                 }
             }
         }
     }
     CamoGearUtility.CalcAndSetCamoEff(this.Pawn);
 }
 public static void PostFix(Pawn pawn, PawnGenerationRequest request)
 {
     CamoGearUtility.CalcAndSetCamoEff(pawn);
 }
 public static void PostFix(ref Pawn_ApparelTracker __instance)
 {
     CamoGearUtility.CalcAndSetCamoEff(__instance.pawn);
 }