@@ -15,7 +15,8 @@ public class CeInventory {
1515 CeItem equippedArmorHead ;
1616 CeItem equippedWeapon ;
1717
18- CeSlot [] slots = new CeSlot [10 ];
18+ int maxItemSlots = 10 ;
19+ CeSlot [] slots = new CeSlot [maxItemSlots ];
1920
2021 public void loadSaveInventory (CeItem armorShoulder , CeItem armorShoes , CeItem armorLegs , CeItem armorChest , CeItem armorHead , CeItem weapon , CeSlot [] slots ) {
2122 this .slots = slots ;
@@ -27,32 +28,34 @@ public void loadSaveInventory(CeItem armorShoulder, CeItem armorShoes, CeItem ar
2728 this .equippedWeapon = weapon ;
2829 }
2930
30- public CeInventory (){
31- for (int i = 0 ; i < slots .length ; i ++){
31+ public CeInventory () {
32+ for (int i = 0 ; i < slots .length ; i ++) {
3233 slots [i ] = new CeSlot ();
3334 }
3435 }
3536
3637 public void addItemToInventory (CeItem item ) throws NoPlaceInInventoryException {
38+ if (item == null ) {
39+ throw new NullPointerException ();
40+ }
3741 boolean foundSlot = false ;
3842 boolean addedItem = false ;
3943 int firstEmptySlot = 0 ;
40- for (int i = 0 ; i < slots .length ; i ++ ) {
44+ for (int i = 0 ; i < slots .length ; i ++) {
4145 CeSlot slot = slots [i ];
4246 if (slot .getItem () != null && slot .getItem ().compareTo (item )) {
4347 slot .increaseAmount ();
4448 foundSlot = true ;
4549 addedItem = true ;
4650 break ;
47- }
48- else if (slot .getItem () == null && !foundSlot ) {
51+ } else if (slot .getItem () == null && !foundSlot ) {
4952 firstEmptySlot = i ;
5053 foundSlot = true ;
5154 break ;
5255 }
5356 }
54- if (!addedItem && foundSlot ) slots [firstEmptySlot ].setItem (item );
55- if (!foundSlot ) throw new NoPlaceInInventoryException ();
57+ if (!addedItem && foundSlot ) slots [firstEmptySlot ].setItem (item );
58+ if (!foundSlot ) throw new NoPlaceInInventoryException ();
5659
5760 }
5861
@@ -63,7 +66,7 @@ public void useItem(CeItem item) throws ItemNotInInventoryException {
6366
6467 for (CeSlot slot : slots ) {
6568 CeItem slotItem = slot .getItem ();
66- if (slotItem != null ){
69+ if (slotItem != null ) {
6770 if (slotItem .compareTo (item )) {
6871 matchingItem = true ;
6972 int remainingAmount = slot .decreaseAmount ();
@@ -74,7 +77,7 @@ public void useItem(CeItem item) throws ItemNotInInventoryException {
7477 }
7578 }
7679 }
77- if (!matchingItem ){
80+ if (!matchingItem ) {
7881 throw new ItemNotInInventoryException (item );
7982 }
8083 }
@@ -111,8 +114,7 @@ private void setEquippedArmorShoulder(CeItem equippedArmorShoulder) throws Wrong
111114 if (equippedArmorShoulder .getType () == armorShoulder ){
112115 this .equippedArmorShoulder = equippedArmorShoulder ;
113116 this .equippedArmorShoulder .equip ();
114- }
115- else throw new WrongItemException (equippedArmorShoulder , "Armor type shoulderArmor" );
117+ } else throw new WrongItemException (equippedArmorShoulder , "Armor type shoulderArmor" );
116118 }
117119
118120 private void setEquippedArmorShoes (CeItem equippedArmorShoes ) throws WrongItemException {
@@ -121,8 +123,7 @@ private void setEquippedArmorShoes(CeItem equippedArmorShoes) throws WrongItemEx
121123 if (equippedArmorShoes .getType () == armorShoes ){
122124 this .equippedArmorShoes = equippedArmorShoes ;
123125 this .equippedArmorShoes .equip ();
124- }
125- else throw new WrongItemException (equippedArmorShoes , "Armor type armorShoes" );
126+ } else throw new WrongItemException (equippedArmorShoes , "Armor type armorShoes" );
126127 }
127128
128129 private void setEquippedArmorLegs (CeItem equippedArmorLegs ) throws WrongItemException {
@@ -131,8 +132,7 @@ private void setEquippedArmorLegs(CeItem equippedArmorLegs) throws WrongItemExce
131132 if (equippedArmorLegs .getType () == armorLegs ){
132133 this .equippedArmorLegs = equippedArmorLegs ;
133134 this .equippedArmorLegs .equip ();
134- }
135- else throw new WrongItemException (equippedArmorLegs , "Armor type ArmorLegs" );
135+ } else throw new WrongItemException (equippedArmorLegs , "Armor type ArmorLegs" );
136136 }
137137
138138 private void setEquippedArmorChest (CeItem equippedArmorChest ) throws WrongItemException {
@@ -141,8 +141,7 @@ private void setEquippedArmorChest(CeItem equippedArmorChest) throws WrongItemEx
141141 if (equippedArmorChest .getType () == armorChest ){
142142 this .equippedArmorChest = equippedArmorChest ;
143143 this .equippedArmorChest .equip ();
144- }
145- else throw new WrongItemException (equippedArmorChest , "Armor type ArmorChest" );
144+ } else throw new WrongItemException (equippedArmorChest , "Armor type ArmorChest" );
146145 }
147146
148147 private void setEquippedArmorHead (CeItem equippedArmorHead ) throws WrongItemException {
@@ -151,8 +150,7 @@ private void setEquippedArmorHead(CeItem equippedArmorHead) throws WrongItemExce
151150 if (equippedArmorHead .getType () == armorHead ){
152151 this .equippedArmorHead = equippedArmorHead ;
153152 this .equippedArmorHead .equip ();
154- }
155- else throw new WrongItemException (equippedArmorHead , "Armor type armorHead" );
153+ } else throw new WrongItemException (equippedArmorHead , "Armor type armorHead" );
156154 }
157155
158156 private void setEquippedWeapon (CeItem equippedWeapon ) throws WrongItemException {
@@ -161,8 +159,7 @@ private void setEquippedWeapon(CeItem equippedWeapon) throws WrongItemException
161159 if (equippedWeapon .getType () == weapon ){
162160 this .equippedWeapon = equippedWeapon ;
163161 this .equippedWeapon .equip ();
164- }
165- else throw new WrongItemException (equippedWeapon , "Armor type weapon" );
162+ } else throw new WrongItemException (equippedWeapon , "Armor type weapon" );
166163 }
167164
168165 public CeItem getEquippedArmorShoulder () {
@@ -192,4 +189,8 @@ public CeItem getEquippedWeapon() {
192189 public CeSlot [] getSlots () {
193190 return slots ;
194191 }
192+
193+ public int getMaxItemSlots () {
194+ return maxItemSlots ;
195+ }
195196}
0 commit comments