mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
optimized updateQuality() on Scala
This commit is contained in:
parent
de2d37904a
commit
af0311e103
@ -4,55 +4,34 @@ class GildedRose(val items: Array[Item]) {
|
|||||||
|
|
||||||
|
|
||||||
def updateQuality() {
|
def updateQuality() {
|
||||||
for (i <- 0 until items.length) {
|
items.foreach(item => {
|
||||||
if (!items(i).name.equals("Aged Brie")
|
if(item.quality > 0 && item.quality < 50) {
|
||||||
&& !items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
item.name match {
|
||||||
if (items(i).quality > 0) {
|
case "Aged Brie" => item.quality += 1
|
||||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
|
||||||
items(i).quality = items(i).quality - 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (items(i).quality < 50) {
|
|
||||||
items(i).quality = items(i).quality + 1
|
|
||||||
|
|
||||||
if (items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
case "Sulfuras, Hand of Ragnaros" => _
|
||||||
if (items(i).sellIn < 11) {
|
|
||||||
if (items(i).quality < 50) {
|
case "Backstage passes to a TAFKAL80ETC concert" =>
|
||||||
items(i).quality = items(i).quality + 1
|
if(item.sellIn < 0) item.quality = 0
|
||||||
}
|
else {
|
||||||
|
item.quality += 1
|
||||||
|
if(item.sellIn <= 10) item.quality += 1
|
||||||
|
if(item.sellIn <= 5) item.quality += 1
|
||||||
}
|
}
|
||||||
|
|
||||||
if (items(i).sellIn < 6) {
|
case "Conjured" =>
|
||||||
if (items(i).quality < 50) {
|
item.quality -= 2
|
||||||
items(i).quality = items(i).quality + 1
|
if(item.sellIn < 0) item.quality -= 2
|
||||||
}
|
|
||||||
}
|
case _ =>
|
||||||
}
|
item.quality -= 1
|
||||||
|
if(item.sellIn < 0) item.quality -= 1
|
||||||
}
|
}
|
||||||
|
if(item.quality > 50) item.quality = 50
|
||||||
|
if(item.quality < 0) item.quality = 0
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
if(!item.name.equals("Sulfuras, Hand of Ragnaros")) item.sellIn -= 1
|
||||||
items(i).sellIn = items(i).sellIn - 1
|
})
|
||||||
}
|
|
||||||
|
|
||||||
if (items(i).sellIn < 0) {
|
|
||||||
if (!items(i).name.equals("Aged Brie")) {
|
|
||||||
if (!items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
|
|
||||||
if (items(i).quality > 0) {
|
|
||||||
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
|
|
||||||
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