jpsp91 8 yıl önce
ebeveyn
işleme
e9be1c73c3
3 değiştirilmiş dosya ile 52 ekleme ve 38 silme
  1. 40
    27
      Inventory.java
  2. 2
    1
      InventoryTest.java
  3. 10
    10
      package.bluej

+ 40
- 27
Inventory.java Dosyayı Görüntüle

@@ -1,39 +1,52 @@
1 1
 
2 2
 public class Inventory {
3 3
     private Item[] items;
4
-
4
+    
5 5
     public Inventory(Item[] items) {
6 6
         super();
7 7
         this.items = items;
8 8
     }
9
-
9
+    
10
+    public void updatedBrie(int i){
11
+        if(items[i].getSellIn() > 0 && items[i].getQuality() <= 49){
12
+            items[i].setQuality(items[i].getQuality() + 1);
13
+        } else if (items[i].getSellIn() < 0 && items[i].getQuality() <= 49){
14
+            items[i].setQuality(items[i].getQuality() + 2);
15
+        }
16
+    }
17
+    
18
+    public void updatedRegularItem(int i){
19
+        if(items[i].getSellIn() > 0 && items[i].getQuality() > 0){
20
+            items[i].setQuality(items[i].getQuality() - 1);
21
+        } else if (items[i].getSellIn() < 0 && items[i].getQuality() > 1){
22
+            items[i].setQuality(items[i].getQuality() - 2);
23
+        }
24
+    }
25
+    
26
+    public void updatedCounjuredItem(int i){
27
+        if(items[i].getSellIn() > 0 && items[i].getQuality() > 0){
28
+            items[i].setQuality(items[i].getQuality() - 2);
29
+        } else if(items[i].getSellIn() > 0 && items[i].getQuality() > 1){
30
+            items[i].setQuality(items[i].getQuality() - 4);
31
+        }
32
+    }
33
+    
10 34
     public void updateQuality() {
11 35
         for (int i = 0; i < items.length; i++) {
12
-            if (!items[i].getName().equals("Aged Brie")) {
13
-                if (items[i].getQuality() > 0) {
14
-                    if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
15
-                        items[i].setQuality(items[i].getQuality() - 1);
16
-                    }
17
-                }
18
-            } else {
19
-                if (items[i].getQuality() < 50) {
20
-                    items[i].setQuality(items[i].getQuality() + 1);
21
-                }
22
-            }
23
-
24
-            if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
25
-                items[i].setSellIn(items[i].getSellIn() - 1);
36
+            
37
+            if (items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
38
+                continue;
26 39
             }
27
-
28
-            if (items[i].getSellIn() < 0) {
29
-                if (!items[i].getName().equals("Aged Brie")) {
30
-                  items[i].setQuality(items[i].getQuality() - 1);
31
-                } else {
32
-                    if (items[i].getQuality() < 50) {
33
-                        items[i].setQuality(items[i].getQuality() + 1);
34
-                    }
35
-                }
40
+            
41
+            if (items[i].getName().equals("Aged Brie")) {
42
+                updatedBrie(i);
43
+            } else if (items[i].getName().equals("Conjured Mage Water")){
44
+                updatedCounjuredItem(i);
45
+            } else{updatedRegularItem(i);}
46
+            
47
+            if (items[i].getQuality() < 80){
48
+             items[i].setSellIn(items[i].getSellIn() - 1); 
36 49
             }
37 50
         }
38
-}
39
-}
51
+        }
52
+    }

+ 2
- 1
InventoryTest.java Dosyayı Görüntüle

@@ -8,7 +8,8 @@ public class InventoryTest {
8 8
     private static final String AGED_BRIE_NAME = "Aged Brie";
9 9
     private static final String BACKSTAGE_PASS_NAME = "Backstage passes to a TAFKAL80ETC concert";
10 10
     private static final String NORMAL_ITEM_NAME = "+5 Dexterity Vest";
11
-
11
+    private static final String CONJURED_ITEM_NAME = "Conjured Mage Water";
12
+    
12 13
     private Item sulfuras;
13 14
     private Item normalItem;
14 15
 

+ 10
- 10
package.bluej Dosyayı Görüntüle

@@ -5,18 +5,18 @@ dependency1.type=UsesDependency
5 5
 dependency2.from=InventoryTest
6 6
 dependency2.to=Inventory
7 7
 dependency2.type=UsesDependency
8
-editor.fx.0.height=722
8
+editor.fx.0.height=721
9 9
 editor.fx.0.width=800
10
-editor.fx.0.x=320
11
-editor.fx.0.y=50
10
+editor.fx.0.x=240
11
+editor.fx.0.y=23
12 12
 objectbench.height=164
13
-objectbench.width=776
13
+objectbench.width=461
14 14
 package.divider.horizontal=0.6
15 15
 package.divider.vertical=0.6845018450184502
16 16
 package.editor.height=364
17 17
 package.editor.width=674
18
-package.editor.x=577
19
-package.editor.y=61
18
+package.editor.x=100
19
+package.editor.y=100
20 20
 package.frame.height=600
21 21
 package.frame.width=800
22 22
 package.numDependencies=2
@@ -41,13 +41,13 @@ target2.name=InventoryTest
41 41
 target2.showInterface=false
42 42
 target2.type=UnitTestTargetJunit4
43 43
 target2.width=80
44
-target2.x=40
45
-target2.y=160
44
+target2.x=250
45
+target2.y=210
46 46
 target3.association=InventoryTest
47 47
 target3.height=50
48 48
 target3.name=Inventory
49 49
 target3.showInterface=false
50 50
 target3.type=ClassTarget
51 51
 target3.width=80
52
-target3.x=10
53
-target3.y=190
52
+target3.x=220
53
+target3.y=240