static int rankForPawn(DispenseMode mode, ThingDef def)
        {
            FoodCategory pref = def.DetermineFoodCategory();

            FoodCategory[] rank;

            if (mode == DispenseMode.Cannibal || mode == DispenseMode.CannibalClean)
            {
                rank = ranksForCannibals;
            }
            else
            {
                rank = ranksForOthers;
            }

            int num = Array.IndexOf(rank, pref);

            if (num == -1)
            {
                Log.Warning("Found unexpected food in hopper : " + def);
                num = rank.Count() - 1;
            }

            return(num);
        }
#pragma warning disable RECS0082 // Parameter has the same name as a member and hides it
        static int rankForPawn(DispenseMode mode, ThingDef def)
#pragma warning restore RECS0082 // Parameter has the same name as a member and hides it
        {
            FoodCategory pref = def.DetermineFoodCategory();

            FoodCategory[] rank;

            if (mode == DispenseMode.Cannibal || mode == DispenseMode.CannibalClean)
            {
                rank = ranksForCannibals;
            }
            else
            {
                rank = ranksForOthers;
            }

            int num = Array.IndexOf(rank, pref);

            if (num == -1)
            {
                Log.Warning("Found unexpected food in hopper : " + def);
                num = rank.Count() - 1;
            }

            return(num);
        }
Example #3
0
 public int GetFoodCategoryRankForPawn(Pawn pawn, ThingDef category)
 {
     return(GetFoodCategoryRankForPawn(pawn, category.DetermineFoodCategory()));
 }
Example #4
0
 internal bool PolicyAllows(Pawn pawn, ThingDef def)
 {
     return(PolicyAllows(pawn, def.DetermineFoodCategory()));
 }