static bool Prefix(ref MeatSourceCategory __result, ThingDef source) { if (source == PackedMeat.MysteriousPackDef) { __result = MeatSourceCategory.Humanlike; return(false); } if (source == PackedMeat.OddPackDef) { __result = MeatSourceCategory.Insect; return(false); } // return(true); }
public static bool GetMeatSourceCategory(ref MeatSourceCategory __result, ThingDef source) { IngestibleProperties ingestible = source.ingestible; if (ingestible == null) { __result = MeatSourceCategory.Undefined; return(false); } if ((ingestible.foodType & FoodTypeFlags.Meat) != FoodTypeFlags.Meat) { __result = MeatSourceCategory.NotMeat; return(false); } if (ingestible.sourceDef != null && ingestible.sourceDef.race != null && ingestible.sourceDef.race.Humanlike) { __result = MeatSourceCategory.Humanlike; return(false); } __result = ingestible.sourceDef != null && ingestible.sourceDef.race.FleshType != null && ingestible.sourceDef.race.FleshType == FleshTypeDefOf.Insectoid ? MeatSourceCategory.Insect : MeatSourceCategory.Undefined; return(false); }