Inventory.java 3.3KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. public class Inventory {
  2. private Item[] items;
  3. public Inventory(Item[] items) {
  4. super();
  5. this.items = items;
  6. }
  7. public void updateQuality() {//<---------------------------------------------------method to update an item's quality
  8. for (int i = 0; i < items.length; i++) {//<------------------------------------iterating over the "items" array
  9. if (!items[i].getName().equals("Aged Brie")
  10. && !items[i].getName().equals("Backstage passes to a TAFKAL80ETC concert")) {//<-if items[i] ISNT Aged Brie or BSP
  11. if (items[i].getQuality() > 0) {//<------------------------------------if items[i]'s current quality is greater than 0
  12. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {//<-if items[i] isn't Sulfuras
  13. items[i].setQuality(items[i].getQuality() - 1);//<-------------reduce the quality of items[i] by 1
  14. }
  15. }
  16. } else {//<---------------------------------------------------------------else
  17. if (items[i].getQuality() < 50) {//<----------------------------------if items[i] quality < 50(max)
  18. items[i].setQuality(items[i].getQuality() + 1);//<----------------increase quality of item[i] by 1
  19. if (items[i].getName() == "Backstage passes to a TAFKAL80ETC concert") {//<-if items[i]'s name is BSP
  20. if (items[i].getSellIn() < 11) {//<---------------------------if items[i]'s sell by date is less than 11 days from now
  21. if (items[i].getQuality() < 50) {//<----------------------if items[i]'s quality is less than 50
  22. items[i].setQuality(items[i].getQuality() + 1);//<----increase the quality of items[i] by 1
  23. }
  24. }
  25. if (items[i].getSellIn() < 6) {
  26. if (items[i].getQuality() < 50) {
  27. items[i].setQuality(items[i].getQuality() + 1);
  28. }
  29. }
  30. }
  31. }
  32. }//<-----------------------------------------------------------------------if items[i] ISNT Aged Brie, or BSP
  33. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  34. items[i].setSellIn(items[i].getSellIn() - 1);
  35. }
  36. if (items[i].getSellIn() < 0) {
  37. if (!items[i].getName().equals("Aged Brie")) {
  38. if (!items[i].getName().equals("Backstage passes to a TAFKAL80ETC concert")) {
  39. if (items[i].getQuality() > 0) {
  40. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  41. items[i].setQuality(items[i].getQuality() - 1);
  42. }
  43. }
  44. } else {
  45. items[i].setQuality(items[i].getQuality()
  46. - items[i].getQuality());
  47. }
  48. } else {
  49. if (items[i].getQuality() < 50) {
  50. items[i].setQuality(items[i].getQuality() + 1);
  51. }
  52. }
  53. }
  54. }
  55. }
  56. }