diff --git a/TypeScript/app/gilded-rose.ts b/TypeScript/app/gilded-rose.ts index df7459a9..26d3936b 100644 --- a/TypeScript/app/gilded-rose.ts +++ b/TypeScript/app/gilded-rose.ts @@ -55,47 +55,12 @@ export class GildedRose { } private updateSulfurasItem(item: Item) { - if ( - item.name != ItemNames.AGED_BRIE && - item.name != ItemNames.BACKSTAGE_PASSES - ) { - if (item.quality > 0) { - if (item.name != ItemNames.SULFURAS) { - item.quality = item.quality - 1; - } - } - } else if (item.quality < MAX_ITEM_QUALITY) { + assert(item.name == ItemNames.SULFURAS); + if (item.quality > 0 && item.name != ItemNames.SULFURAS) { + item.quality = item.quality - 1; + } + if (item.sellIn < 0 && item.quality < MAX_ITEM_QUALITY) { item.quality = item.quality + 1; - if (item.name == ItemNames.BACKSTAGE_PASSES) { - if (item.sellIn < 11) { - if (item.quality < MAX_ITEM_QUALITY) { - item.quality = item.quality + 1; - } - } - if (item.sellIn < 6) { - if (item.quality < MAX_ITEM_QUALITY) { - item.quality = item.quality + 1; - } - } - } - } - if (item.name != ItemNames.SULFURAS) { - item.sellIn = item.sellIn - 1; - } - if (item.sellIn < 0) { - if (item.name != ItemNames.AGED_BRIE) { - if (item.name != ItemNames.BACKSTAGE_PASSES) { - if (item.quality > 0) { - if (item.name != ItemNames.SULFURAS) { - item.quality = item.quality - 1; - } - } - } else { - item.quality = 0; - } - } else if (item.quality < MAX_ITEM_QUALITY) { - item.quality = item.quality + 1; - } } }