using System.Collections.Generic; namespace GildedRoseKata { public class GildedRose { IList Items; public GildedRose(IList items) { Items = items; } public void UpdateQuality() { for (var i = 0; i < Items.Count; i++) { if (Items[i].Name != "Aged Brie" && Items[i].Name != "Backstage passes to a TAFKAL80ETC concert") { if (Items[i].Quality > 0) { if (Items[i].Name != "Sulfuras, Hand of Ragnaros") { Items[i].Quality = Items[i].Quality - 1; } } } else { if (Items[i].Quality < 50 || Items[i].Quality >= 0) { Items[i].Quality = Items[i].Quality + 1; if (Items[i].Name == "Backstage passes to a TAFKAL80ETC concert" || Items[i].Name == "Aged Brie") { if (Items[i].SellIn <= 10) { if (Items[i].Quality < 50) { Items[i].Quality = Items[i].Quality + 2; } } if (Items[i].SellIn <= 5) { if (Items[i].Quality < 50) { Items[i].Quality = Items[i].Quality + 3; } } } } } if (Items[i].Name != "Sulfuras, Hand of Ragnaros") { Items[i].SellIn = Items[i].SellIn - 1; } if (Items[i].SellIn < 0) { if (Items[i].Name != "Aged Brie") { if (Items[i].Name != "Backstage passes to a TAFKAL80ETC concert") { if (Items[i].Quality > 0) { if (Items[i].Name != "Sulfuras, Hand of Ragnaros") { Items[i].Quality = Items[i].Quality - 2; } } } else { Items[i].Quality = Items[i].Quality - Items[i].Quality; } } else { if (Items[i].Quality > 50) { Items[i].Quality = 50; } if (Items[i].Quality < 50) { Items[i].Quality = Items[i].Quality + 1; } } } if (Items[i].Name == "Conjured") { Items[i].Quality = Items[i].Quality - 2; } } } } }