From aa52c1be27d0d13e13b2edc5df2440a89432090b Mon Sep 17 00:00:00 2001 From: NewGarbo Date: Wed, 25 Nov 2015 00:14:34 +0000 Subject: [PATCH] custom item stuff --- .../game/clans/items/GearManager.java | 40 ++++++++++--------- .../game/clans/items/ui/GearPage.java | 1 + 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/GearManager.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/GearManager.java index 4398e3bfd..39811c80f 100644 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/GearManager.java +++ b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/GearManager.java @@ -64,6 +64,7 @@ import mineplex.game.clans.items.smelting.SmeltingListener; import mineplex.game.clans.items.ui.GearShop; import mineplex.serverdata.serialization.RuntimeTypeAdapterFactory; import net.minecraft.server.v1_8_R3.Packet; +import net.minecraft.server.v1_8_R3.PacketPlayOutChat; import net.minecraft.server.v1_8_R3.PacketPlayOutSetSlot; import net.minecraft.server.v1_8_R3.PacketPlayOutWindowItems; @@ -73,7 +74,7 @@ import net.minecraft.server.v1_8_R3.PacketPlayOutWindowItems; * {@link CustomItem}s. * * @author MrTwiggy - * + * */ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable { @@ -91,7 +92,7 @@ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable // selecting item type // (legendary/weapon/armor/bow) private Set _creativePlayers; // Set of names for all players - // currently in Creative gamemode + // currently in Creative gamemode // Legendary generation private WeightSet> _legendaryWeights; @@ -335,18 +336,14 @@ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable public static CustomItem parseItem(ItemStack item) { String serialization = getItemSerialization(item); - if (serialization!=null)System.out.println("<-GearManager-> serialization string: " + serialization); if (serialization != null) { - CustomItem customItem = null; try { customItem = deserialize(serialization); - - System.out.println("<-GearManager-> deserialized item successfully"); } catch (Exception exception) { @@ -459,14 +456,17 @@ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable return player.getGameMode() != GameMode.CREATIVE && !_creativePlayers.contains(player.getName()); } - @Override public void handle(PacketInfo packetInfo) { + System.out.println("handling packet..."); + // Don't mask custom gear lore for creative players, as this will break // them. if (!maskGearPacket(packetInfo.getPlayer())) return; - Packet packet = packetInfo.getPacket(); + Packet packet = packetInfo.getPacket(); + + System.out.println("<-GearManager-> Packet >> " + packetInfo.getPlayer().getName()); if (packet instanceof PacketPlayOutSetSlot) { @@ -489,20 +489,21 @@ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable private net.minecraft.server.v1_8_R3.ItemStack maskItem(net.minecraft.server.v1_8_R3.ItemStack item) { - if (item == null) return null; // Cannot mask a null item + System.out.println("<-GearManager-> attempting item mask..."); + // Cannot mask a null item + if (item == null) + { + return null; + } CraftItemStack originalItem = CraftItemStack.asCraftMirror(item); ItemMeta originalMeta = originalItem.getItemMeta(); - if (originalMeta == null || originalMeta.getLore() == null) return item; // No - // need - // to - // modify - // item - // packets - // with - // no - // lore + // No need to modify item packets with no lore + if (originalMeta == null || originalMeta.getLore() == null) + { + return item; + } List lore = new ArrayList(); @@ -514,6 +515,9 @@ public class GearManager extends MiniPlugin implements IPacketHandler, Runnable // out-going lore { lore.add(line); + System.out.println("<-GearManager-> regular lore allowed"); + }else{ + System.out.println("<-GearManager-> ser. tag ignored"); } } diff --git a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/ui/GearPage.java b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/ui/GearPage.java index 7cfb57c83..62d185b54 100644 --- a/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/ui/GearPage.java +++ b/Plugins/Mineplex.Game.Clans/src/mineplex/game/clans/items/ui/GearPage.java @@ -720,6 +720,7 @@ public class GearPage extends ShopPageBase public void onClick(Player player, ClickType clickType) { player.getInventory().addItem(item); + } }, new String[] { C.cWhite + "Click to get item" }); }