This commit is contained in:
Matt Decker 2022-07-04 14:53:30 -05:00
commit 58c311de63
2 changed files with 35 additions and 0 deletions

View File

@ -0,0 +1 @@

View File

@ -8,6 +8,10 @@ class GildedRose {
public static final String CONJURED = "Conjured Mana Cake";
private Item[] items;
private Item[] items;
public GildedRose(Item... items) {
@ -22,6 +26,7 @@ class GildedRose {
private void updateItemQuality(Item item) {
boolean isExpired = item.sellIn < 1;
int degradeRate = determineDegradeRate(item, isExpired);
boolean doesDegrade = !item.name.equals(AGED_BRIE) && !item.name.equals(BACKSTAGE) && !item.name.equals(SULFURAS);
@ -31,6 +36,18 @@ class GildedRose {
adjustQuality(item, degradeRate);
}
int degradeRate = item.name.equals(CONJURED) ? -2 : -1;
if (!item.name.equals(AGED_BRIE)
&& !item.name.equals(BACKSTAGE)) {
if (item.quality > 0) {
if (!item.name.equals(SULFURAS)) {
adjustQuality(item, degradeRate);
}
}
} else {
adjustQuality(item, 1);
if (item.name.equals(AGED_BRIE)) {
int adjustment = isExpired ? 2 : 1;
adjustQuality(item, adjustment);
@ -45,10 +62,27 @@ class GildedRose {
}
}
private void updateBackStagePass(Item item, boolean isExpired) {
adjustQuality(item, 1);
if (item.sellIn < 11) {
adjustQuality(item, 1);
if (item.sellIn < 0) {
if (!item.name.equals(AGED_BRIE)) {
if (!item.name.equals(BACKSTAGE)) {
if (!item.name.equals(SULFURAS)) {
adjustQuality(item, degradeRate);
}
} else {
item.quality = item.quality - item.quality;
}
} else {
int adjustment = 1;
adjustQuality(item, adjustment);
}
}
}
if (item.sellIn < 6) {