private static void CheckFoodItem(SkillsManager skillsManager, SkillType skillType, int numPoints, SkillsManager.PointAssignmentMode mode, CookingPotItem pot) { GearItem itemBeingCooked = Traverse.Create(pot).Field("m_GearItemBeingCooked").GetValue <GearItem>(); if (itemBeingCooked && itemBeingCooked.IsWornOut()) { return; // No skill points for cooking ruined items } else if (itemBeingCooked && itemBeingCooked.m_FoodItem) { FoodItem food = itemBeingCooked.m_FoodItem; if (food.m_IsMeat && food.m_IsRawMeat && food.m_CaloriesRemaining < MIN_SIZE * food.m_CaloriesTotal) { return; // No skill points if the piece of meat being cooked is too small } } skillsManager.IncrementPointsAndNotify(skillType, numPoints, mode); }