-
Notifications
You must be signed in to change notification settings - Fork 2
/
gilded_rose.rb
63 lines (60 loc) · 2.01 KB
/
gilded_rose.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
require_relative 'item.rb'
class GildedRose
@items = []
def initialize
@items = []
@items << Item.new("+5 Dexterity Vest", 10, 20)
@items << Item.new("Aged Brie", 2, 0)
@items << Item.new("Elixir of the Mongoose", 5, 7)
@items << Item.new("Sulfuras, Hand of Ragnaros", 0, 80)
@items << Item.new("Backstage passes to a TAFKAL80ETC concert", 15, 20)
@items << Item.new("Conjured Mana Cake", 3, 6)
end
def update_quality
for i in 0..(@items.size-1)
if (@items[i].name != "Aged Brie" && @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
end
end
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].sell_in < 11)
if (@items[i].quality < 50)
@items[i].quality = @items[i].quality + 1
end
end
if (@items[i].sell_in < 6)
if (@items[i].quality < 50)
@items[i].quality = @items[i].quality + 1
end
end
end
end
end
if (@items[i].name != "Sulfuras, Hand of Ragnaros")
@items[i].sell_in = @items[i].sell_in - 1;
end
if (@items[i].sell_in < 0)
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
end
end
else
@items[i].quality = @items[i].quality - @items[i].quality
end
else
if (@items[i].quality < 50)
@items[i].quality = @items[i].quality + 1
end
end
end
end
end
end