public static void ThingWithCompsPostApplyDamage(ThingWithComps __instance, DamageInfo dinfo, float totalDamageDealt) { ThingPostApplyDamage(__instance, dinfo, totalDamageDealt); List <ThingComp> comps = __instance.comps; if (comps == null) { return; } for (int index = 0; index < comps.Count; ++index) { ThingComp thingComp = comps[index]; if (thingComp == null) { continue; } thingComp.PostPostApplyDamage(dinfo, totalDamageDealt); } }