mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2025-12-11 20:02:09 +00:00
64 lines
1.9 KiB
Lua
64 lines
1.9 KiB
Lua
local GildedRose = {}
|
|
|
|
function GildedRose:new(items)
|
|
return {
|
|
items = items,
|
|
updateQuality = self.updateQuality,
|
|
}
|
|
end
|
|
|
|
function GildedRose:updateQuality()
|
|
for i, _ in pairs(self.items) do
|
|
if self.items[i].name ~= "Aged Brie" and
|
|
self.items[i].name ~= "Backstage passes to a TAFKAL80ETC concert" then
|
|
if self.items[i].quality > 0 then
|
|
if self.items[i].name ~= "Sulfuras, Hand of Ragnaros" then
|
|
self.items[i].quality = self.items[i].quality - 1
|
|
end
|
|
end
|
|
else
|
|
if self.items[i].quality < 50 then
|
|
self.items[i].quality = self.items[i].quality + 1
|
|
|
|
if self.items[i].name == "Backstage passes to a TAFKAL80ETC concert" then
|
|
if self.items[i].sell_in < 11 then
|
|
if self.items[i].quality < 50 then
|
|
self.items[i].quality = self.items[i].quality + 1
|
|
end
|
|
end
|
|
if self.items[i].sell_in < 6 then
|
|
if self.items[i].quality < 50 then
|
|
self.items[i].quality = self.items[i].quality + 1
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
if self.items[i].name ~= "Sulfuras, Hand of Ragnaros" then
|
|
self.items[i].sell_in = self.items[i].sell_in - 1
|
|
end
|
|
|
|
if self.items[i].sell_in < 0 then
|
|
if self.items[i].name ~= "Aged Brie" then
|
|
if self.items[i].name ~= "Backstage passes to a TAFKAL80ETC concert" then
|
|
if self.items[i].quality > 0 then
|
|
if self.items[i].name ~= "Sulfuras, Hand of Ragnaros" then
|
|
self.items[i].quality = self.items[i].quality - 1
|
|
end
|
|
end
|
|
else
|
|
self.items[i].quality = self.items[i].quality - self.items[i].quality
|
|
end
|
|
else
|
|
if self.items[i].quality < 50 then
|
|
self.items[i].quality = self.items[i].quality + 1
|
|
end
|
|
end
|
|
end
|
|
end
|
|
return self.items
|
|
end
|
|
|
|
return GildedRose
|