Update GildedRose.cc

This commit is contained in:
Vova Gromozdin 2023-04-23 18:15:11 +03:00 committed by GitHub
parent deed3e91ba
commit d50ffd3770
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,79 +1,68 @@
#include "GildedRose.h"
GildedRose::GildedRose(vector<Item> & items) : items(items)
{}
void GildedRose::updateQuality()
{
}
void updateQuality(int q, int value)
{
if(0 < q && q < 50)
{
q += value;
}
}
void GildedRose::update()
{
for (int i = 0; i < items.size(); i++)
{
if (items[i].name != "Aged Brie" && items[i].name != "Backstage passes to a TAFKAL80ETC concert")
items[i].sellIn -= (items[i].name == "Sulfuras, Hand of Ragnaros") ? 0 : 1;
if (items[i].name == "Aged Brie")
{
if (items[i].quality > 0)
updateQuality(items[i].quality, 1);
}
else if (items[i].name == "Backstage passes to a TAFKAL80ETC concert")
{
if (items[i].sellIn < 5)
{
if (items[i].name != "Sulfuras, Hand of Ragnaros")
{
items[i].quality = items[i].quality - 1;
}
updateQuality(items[i].quality, 3);
}
else if (items[i].sellIn < 10)
{
updateQuality(items[i].quality, 2);
}
else
{
updateQuality(items[i].quality, 1);
}
}
else if (items[i].name == "Sulfuras, Hand of Ragnaros")
{
updateQuality(items[i].quality, 0);
}
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;
}
}
}
}
}
if (items[i].name != "Sulfuras, Hand of Ragnaros")
{
items[i].sellIn = items[i].sellIn - 1;
updateQuality(items[i].quality, -1);
}
if (items[i].sellIn < 0)
{
if (items[i].name != "Aged Brie")
if (items[i].name == "Aged Brie")
{
if (items[i].name != "Backstage passes to a TAFKAL80ETC concert")
{
if (items[i].quality > 0)
{
if (items[i].name != "Sulfuras, Hand of Ragnaros")
{
items[i].quality = items[i].quality - 1;
}
}
}
else
{
items[i].quality = items[i].quality - items[i].quality;
}
updateQuality(items[i].quality, 1);
}
else if (items[i].name == "Backstage passes to a TAFKAL80ETC concert")
{
updateQuality(items[i].quality, -items[i].quality);
}
else if (items[i].name == "Sulfuras, Hand of Ragnaros")
{
updateQuality(items[i].quality, 0);
}
else
{
if (items[i].quality < 50)
{
items[i].quality = items[i].quality + 1;
}
updateQuality(items[i].quality, -1);
}
}
}