public bool IsRequirementsFulFilled(InventoryObject inventory) { List <bool> requirementsFulFilled = new List <bool>(new bool[requirements.Count]); int i = 0; foreach (var requirement in requirements) { if (requirement.amount <= inventory.GetItemAmount(requirement.itemType)) { requirementsFulFilled[i] = true; } i++; } return(requirementsFulFilled.Exists(x => x == false) ? false : true); }