diff --git a/SpigotCore_Main/src/de/steamwar/network/handlers/InventoryHandler.java b/SpigotCore_Main/src/de/steamwar/network/handlers/InventoryHandler.java index 0f3ee52..a8a378a 100644 --- a/SpigotCore_Main/src/de/steamwar/network/handlers/InventoryHandler.java +++ b/SpigotCore_Main/src/de/steamwar/network/handlers/InventoryHandler.java @@ -28,28 +28,28 @@ import de.steamwar.network.packets.client.InventoryCallbackPacket; import de.steamwar.network.packets.server.InventoryPacket; import de.steamwar.sql.SteamwarUser; import org.bukkit.Bukkit; +import org.bukkit.entity.Player; import org.bukkit.event.inventory.InventoryType; import java.util.HashMap; import java.util.Map; -import java.util.UUID; public class InventoryHandler extends PacketHandler { @Handler public static void handleInventoryPacket(InventoryPacket packet) { + Player player = Bukkit.getPlayer(SteamwarUser.get(packet.getPlayer()).getUUID()); Map items = new HashMap<>(); packet.getItems().forEach((i, item) -> { @SuppressWarnings("deprecation") SWItem it = SWItem.getItemFromJson(new JsonParser().parse(item).getAsJsonObject()); - it.setCallback(click -> NetworkSender.send(InventoryCallbackPacket.builder().owner(packet.getPlayer()).position(i).type(InventoryCallbackPacket.CallbackType.CLICK).clickType(InventoryCallbackPacket.ClickType.getByName(click.name())).build())); + it.setCallback(click -> NetworkSender.send(InventoryCallbackPacket.builder().owner(packet.getPlayer()).position(i).type(InventoryCallbackPacket.CallbackType.CLICK).clickType(InventoryCallbackPacket.ClickType.getByName(click.name())).build(), player)); items.put(i, it); }); - UUID player = SteamwarUser.get(packet.getPlayer()).getUUID(); - SWInventory inventory = new SWInventory(Bukkit.getPlayer(player), packet.getSize(), packet.getTitle(), items); + SWInventory inventory = new SWInventory(player, packet.getSize(), packet.getTitle(), items); inventory.addCloseCallback(click -> { - if(Bukkit.getPlayer(player).getOpenInventory().getType() != InventoryType.CHEST) - NetworkSender.send(InventoryCallbackPacket.builder().owner(packet.getPlayer()).type(InventoryCallbackPacket.CallbackType.CLOSE).build()); + if(player.getOpenInventory().getType() != InventoryType.CHEST) + NetworkSender.send(InventoryCallbackPacket.builder().owner(packet.getPlayer()).type(InventoryCallbackPacket.CallbackType.CLOSE).build(), player); }); inventory.open(); }