bool TryGetValue(TKey key, [MaybeNullWhen(false)] out TValue value)
static int nextRecipeGroupIndex
int CountUsableItems(Dictionary< int, int > itemStacksAvailable)
HashSet< int > ValidItems
static Dictionary< int, RecipeGroup > recipeGroups
static Dictionary< string, int > recipeGroupIDs
static int RegisterGroup(string name, RecipeGroup rec)
RecipeGroup(Func< string > getName, params int[] validItems)