66import org .bukkit .Material ;
77import org .bukkit .World ;
88import org .bukkit .advancement .AdvancementProgress ;
9+ import org .bukkit .inventory .Inventory ;
910import org .jetbrains .annotations .ApiStatus ;
1011import org .mvplugins .multiverse .core .economy .MVEconomist ;
1112import org .mvplugins .multiverse .core .teleportation .AsyncSafetyTeleporter ;
@@ -111,16 +112,21 @@ public void updateProfile(ProfileData profile, Player player) {
111112 @ Override
112113 public boolean updatePlayer (Player player , ProfileData profile ) {
113114 ItemStack [] value = profile .get (ENDER_CHEST );
115+ Inventory enderChest = player .getEnderChest ();
114116 if (value == null ) {
115- player . getEnderChest () .setContents (MinecraftTools .fillWithAir (
116- new ItemStack [PlayerStats . ENDER_CHEST_SIZE ]));
117+ enderChest .setContents (MinecraftTools .fillWithAir (
118+ new ItemStack [enderChest . getSize () ]));
117119 return false ;
118120 }
119- player .getEnderChest ().setContents (value );
121+ if (value .length != enderChest .getSize ()) {
122+ Logging .fine ("Mismatch ender chest size found in profile for player " + player .getName ()
123+ + ". Expected " + enderChest .getSize () + " but got " + value .length + "." );
124+ }
125+ enderChest .setContents (value );
120126 return true ;
121127 }
122128 }).serializer (new ProfileEntry (false , DataStrings .ENDER_CHEST_CONTENTS ),
123- new InventorySerializer ( PlayerStats . ENDER_CHEST_SIZE )).altName ("ender" ).build ();
129+ new InventorySerializer . EnderChestSerializer ( )).altName ("ender" ).build ();
124130
125131 /**
126132 * Sharing Inventory.
@@ -144,7 +150,7 @@ public boolean updatePlayer(Player player, ProfileData profile) {
144150 return true ;
145151 }
146152 }).serializer (new ProfileEntry (false , DataStrings .PLAYER_INVENTORY_CONTENTS ),
147- new InventorySerializer ( PlayerStats . INVENTORY_SIZE )).build ();
153+ new InventorySerializer . MainInventorySerializer ( )).build ();
148154
149155 /**
150156 * Sharing Armor.
@@ -168,7 +174,7 @@ public boolean updatePlayer(Player player, ProfileData profile) {
168174 return true ;
169175 }
170176 }).serializer (new ProfileEntry (false , DataStrings .PLAYER_ARMOR_CONTENTS ),
171- new InventorySerializer ( PlayerStats . ARMOR_SIZE )).altName ("armor" ).build ();
177+ new InventorySerializer . ArmorSerializer ( )).altName ("armor" ).build ();
172178
173179 /**
174180 * Sharing Offhand.
0 commit comments