public IQualityUpdatingStrategy Create(ItemWrapper item)
 {
     if (strategies.ContainsKey(item.Name))
     {
         return strategies[item.Name]();
     }
     return new DefaultQualityUpdatingStrategy();
 }
 public ItemWrapper UpdateQuality(ItemWrapper item)
 {
     item.Quality = item.Quality + 1;
     item.SellIn -= 1;
     if (item.SellIn < 0)
     {
         item.Quality = item.Quality + 1;
     }
     return item;
 }
Example #3
0
        public void UpdateQuality()
        {
            foreach (var item in Items)
            {
                var itemWrapper = new ItemWrapper(item);
                itemWrapper.ReduceSellin();
                itemWrapper.UpdateQuality();

                if (item.SellIn < 0)
                {
                    if (item.Name != "Aged Brie")
                    {
                        if (item.Name != "Backstage passes to a TAFKAL80ETC concert")
                        {
                            if (item.Quality > 0)
                            {
                                if (item.Name != "Sulfuras, Hand of Ragnaros")
                                {
                                    item.Quality = item.Quality - 1;
                                }
                            }
                        }
                        else
                        {
                            item.Quality = item.Quality - item.Quality;
                        }
                    }
                    else
                    {
                        if (item.Quality < 50)
                        {
                            item.Quality = item.Quality + 1;
                        }
                    }
                }
            }
        }
 public ItemWrapper UpdateQuality(ItemWrapper item)
 {
     return item;
 }