public void Craft(ICraftingContainer craftingContainer)
 {
     foreach (ItemAmount itemAmount in PureEssences)
     {
         for (int i = 0; i < itemAmount.Amount; i++)
         {
             craftingContainer.RemoveItems(itemAmount.item);
         }
     }
     foreach (ItemAmount itemAmount in Crystals)
     {
         for (int i = 0; i < itemAmount.Amount; i++)
         {
             craftingContainer.RemoveItems(itemAmount.item);
         }
     }
     foreach (ItemAmount itemAmount in Essences)
     {
         for (int i = 0; i < itemAmount.Amount; i++)
         {
             craftingContainer.RemoveItems(itemAmount.item);
         }
     }
     foreach (ItemAmount itemAmount in Results)
     {
         for (int i = 0; i < itemAmount.Amount; i++)
         {
             craftingContainer.AddItems(itemAmount.item);
         }
     }
 }
 public bool CanCraft(ICraftingContainer craftingContainer)
 {
     foreach (ItemAmount itemAmount in Crystals)
     {
         if(craftingContainer.ItemCounter(itemAmount.item) < itemAmount.Amount)
         {
             return false;
         }
     }
     foreach (ItemAmount itemAmount in Essences)
     {
         if (craftingContainer.ItemCounter(itemAmount.item) < itemAmount.Amount)
         {
             return false;
         }
     }
     foreach (ItemAmount itemAmount in PureEssences)
     {
         if (craftingContainer.ItemCounter(itemAmount.item) < itemAmount.Amount)
         {
             return false;
         }
     }
     return true;
 }