Пример #1
0
 int FindMatchingStack(List <ItemSlot> items, ScriptableItemAndAmount ingredient)
 {
     for (int i = 0; i < items.Count; ++i)
     {
         if (items[i].amount >= ingredient.amount &&
             items[i].item.data == ingredient.item)
         {
             return(i);
         }
     }
     return(-1);
 }
Пример #2
0
 void OnValidate()
 {
     for (int i = ingredients.Count; i < recipeSize; ++i)
     {
         ingredients.Add(new ScriptableItemAndAmount());
     }
     for (int i = recipeSize; i < ingredients.Count; ++i)
     {
         ingredients.RemoveAt(i);
     }
     for (int i = 0; i < ingredients.Count; ++i)
     {
         ScriptableItemAndAmount ingredient = ingredients[i];
         if (ingredient.item != null)
         {
             ingredient.amount = Mathf.Clamp(ingredient.amount, 1, ingredient.item.maxStack);
             ingredients[i]    = ingredient;
         }
     }
 }