mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
add standard quality update function
This commit is contained in:
parent
6de0629b44
commit
124578588e
@ -15,6 +15,16 @@ func min(x int, y int) int {
|
||||
return y
|
||||
}
|
||||
|
||||
func max(x int, y int) int {
|
||||
if x == y {
|
||||
return x
|
||||
}
|
||||
if x > y {
|
||||
return x
|
||||
}
|
||||
return y
|
||||
}
|
||||
|
||||
func UpdateQualityBrie(item *Item) {
|
||||
defer func() {
|
||||
item.sellIn--
|
||||
@ -57,6 +67,20 @@ func UpdateQualityBackstagePasses(item *Item) {
|
||||
|
||||
}
|
||||
|
||||
func UpdateQualityStandard(item *Item) {
|
||||
defer func() {
|
||||
item.sellIn--
|
||||
}()
|
||||
|
||||
if item.sellIn <= 0 {
|
||||
item.quality = max(item.quality-2, 0)
|
||||
return
|
||||
}
|
||||
|
||||
item.quality = max(item.quality-1, 0)
|
||||
|
||||
}
|
||||
|
||||
func UpdateQuality(items []*Item) {
|
||||
for i := 0; i < len(items); i++ {
|
||||
|
||||
@ -74,45 +98,8 @@ func UpdateQuality(items []*Item) {
|
||||
continue
|
||||
}
|
||||
|
||||
if items[i].name != "Backstage passes to a TAFKAL80ETC concert" {
|
||||
if items[i].quality > 0 {
|
||||
items[i].quality = items[i].quality - 1
|
||||
}
|
||||
} else {
|
||||
if items[i].quality < 50 {
|
||||
items[i].quality = items[i].quality + 1
|
||||
if items[i].name == "Backstage passes to a TAFKAL80ETC concert" {
|
||||
if items[i].sellIn < 11 {
|
||||
if items[i].quality < 50 {
|
||||
items[i].quality = items[i].quality + 1
|
||||
}
|
||||
}
|
||||
if items[i].sellIn < 6 {
|
||||
if items[i].quality < 50 {
|
||||
items[i].quality = items[i].quality + 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
UpdateQualityStandard(items[i])
|
||||
|
||||
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 {
|
||||
items[i].quality = items[i].quality - 1
|
||||
}
|
||||
} else {
|
||||
items[i].quality = items[i].quality - items[i].quality
|
||||
}
|
||||
} else {
|
||||
if items[i].quality < 50 {
|
||||
items[i].quality = items[i].quality + 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user