Inventory.java 3.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. public class Inventory {
  2. private Item[] items;
  3. public Inventory(Item[] items) {
  4. super();
  5. this.items = items;
  6. }
  7. public void updateQuality() {
  8. for (int i = 0; i < items.length; i++) {
  9. if (items[i].getName().equals("Aged Brie")
  10. || items[i].getName().equals("Backstage passes to a TAFKAL80ETC concert")) {
  11. //level 2 - quality
  12. if (items[i].getQuality() < 50) {
  13. updateQuality(items[i], 1);
  14. //level 3 - item type
  15. if (items[i].getName() == "Backstage passes to a TAFKAL80ETC concert") {
  16. //level 4 - sell in date
  17. if (items[i].getSellIn() < 11) {
  18. //level 5 - quality
  19. if (items[i].getQuality() < 50) {
  20. updateQuality(items[i], 1);
  21. }
  22. }
  23. //level 4 - sell in date
  24. if (items[i].getSellIn() < 6) {
  25. //level 5 - quality
  26. if (items[i].getQuality() < 50) {
  27. updateQuality(items[i], 1);
  28. }
  29. }
  30. }
  31. }
  32. //level 1 - item type
  33. } else {
  34. //level 2 - quality
  35. if (items[i].getQuality() > 0) {
  36. //level 3 - item type
  37. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  38. updateQuality(items[i], -1);
  39. }
  40. }
  41. }
  42. //level 1 - item type
  43. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  44. updateSellIn(items[i]);
  45. }
  46. //level 1 - sell in date
  47. if (items[i].getSellIn() < 0) {
  48. //level 2 - item type
  49. if (!items[i].getName().equals("Aged Brie")) {
  50. //level 3 - item type
  51. if (!items[i].getName().equals("Backstage passes to a TAFKAL80ETC concert")) {
  52. //level 4 - quality
  53. if (items[i].getQuality() > 0) {
  54. //level 5 - item type
  55. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  56. updateQuality(items[i], -1);
  57. }
  58. }
  59. //level 3 - item type
  60. } else {
  61. updateQuality(items[i], -items[i].getQuality());
  62. }
  63. //level 2 - item type
  64. } else {
  65. //level 3 - quality
  66. if (items[i].getQuality() < 50) {
  67. updateQuality(items[i], 1);
  68. }
  69. }
  70. }
  71. }
  72. }
  73. public void updateQuality(Item item, int amount){
  74. item.setQuality(item.getQuality() + amount);
  75. }
  76. public void updateSellIn(Item item){
  77. item.setSellIn(item.getSellIn() - 1);
  78. }
  79. }