Inventory.java 2.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  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("Backstage passes to a TAFKAL80ETC concert")){
  10. updateQualityForBackstagePasses(i);
  11. }else if(items[i].getName().equals("Aged Brie")){
  12. increaseQualityByOne(i);
  13. }else if((items[i].getQuality() > 0)&&(!items[i].getName().equals("Sulfuras, Hand of Ragnaros"))){
  14. decreaseQualityByOne(i);
  15. }
  16. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  17. decreaseSellInByOne(i);
  18. }
  19. if (items[i].getSellIn() < 0) {
  20. if (!items[i].getName().equals("Aged Brie")) {
  21. if (items[i].getQuality() > 0) {
  22. if (!items[i].getName().equals("Sulfuras, Hand of Ragnaros")) {
  23. decreaseQualityByOne(i);
  24. }
  25. }
  26. } else {
  27. increaseQualityByOne(i);
  28. }
  29. }
  30. }
  31. }
  32. public void increaseQualityByOne(int i){
  33. if(items[i].getQuality() < 50){
  34. items[i].setQuality(items[i].getQuality() + 1);
  35. }
  36. }
  37. public void decreaseQualityByOne(int i){
  38. items[i].setQuality(items[i].getQuality() - 1);
  39. }
  40. public void decreaseSellInByOne(int i){
  41. items[i].setSellIn(items[i].getSellIn() - 1);
  42. }
  43. public void updateQualityForBackstagePasses(int i){
  44. if (items[i].getSellIn() < 0){
  45. items[i].setQuality(0);
  46. }else{
  47. increaseQualityByOne(i);
  48. if(items[i].getSellIn() < 11) {
  49. increaseQualityByOne(i);
  50. }
  51. if(items[i].getSellIn() < 6){
  52. increaseQualityByOne(i);
  53. }
  54. }
  55. }
  56. public void updateQualityForBrie(int i){
  57. }
  58. }