public void NewRecipe() { var sb = new StringBuilder(); var rnd = RandomRecipe.GetInstance(); rnd.GenerateRandomRecipe(); recipeHeader.text = rnd.randomRecipe.Name; foreach (var ingredient in rnd.randomRecipe.Ingredients) { sb.Append(ingredient.Number + " x " + ingredient.Name + "\n"); } recipeIngredients.text = sb.ToString(); }
private bool IsInventoryCorrect(GameObject[] inventory) { if (!IsInventoryFull(inventory)) { return(false); } var rnd = RandomRecipe.GetInstance(); Dictionary <string, int> inventoryIngreds = new Dictionary <string, int>(); foreach (var item in inventory) { if (!IsIngredientsContains(rnd.randomRecipe, item.GetComponent <SpriteRenderer>().sprite.name)) { return(false); } if (inventoryIngreds.ContainsKey(item.GetComponent <SpriteRenderer>().sprite.name)) { inventoryIngreds[item.GetComponent <SpriteRenderer>().sprite.name] += 1; } else { inventoryIngreds.Add(item.GetComponent <SpriteRenderer>().sprite.name, 1); } } foreach (var rndItem in rnd.randomRecipe.Ingredients) { if (inventoryIngreds[rndItem.Name] != rndItem.Number) { return(false); } } return(true); }
private void RemoveItemsFromInventory() { dumpAudio.Play(); var rnd = RandomRecipe.GetInstance(); foreach (var item in inventoryItems) { if (item.GetComponent <SpriteRenderer>().sprite != null) { var itemSpriteName = item.GetComponent <SpriteRenderer>().sprite.name; if (!IsIngredientsContains(rnd.randomRecipe, itemSpriteName)) { item.GetComponent <SpriteRenderer>().sprite = null; } else { var number = NumberOfIngredient(rnd.randomRecipe, itemSpriteName); var temp = 0; foreach (var item2 in inventoryItems) { if (item2.GetComponent <SpriteRenderer>().sprite != null) { if (item2.GetComponent <SpriteRenderer>().sprite.name == itemSpriteName) { temp++; if (temp > number) { item2.GetComponent <SpriteRenderer>().sprite = null; } } } } } } } }