diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java index 55cbb7195..51f86cda9 100644 --- a/src/main/java/noppes/npcs/NoppesUtilServer.java +++ b/src/main/java/noppes/npcs/NoppesUtilServer.java @@ -45,31 +45,8 @@ import noppes.npcs.constants.EnumPlayerData; import noppes.npcs.constants.EnumRoleType; import noppes.npcs.containers.ContainerManageBanks; import noppes.npcs.containers.ContainerManageRecipes; -import noppes.npcs.controllers.data.Bank; -import noppes.npcs.controllers.BankController; -import noppes.npcs.controllers.data.Dialog; -import noppes.npcs.controllers.data.DialogCategory; -import noppes.npcs.controllers.DialogController; -import noppes.npcs.controllers.data.DialogOption; -import noppes.npcs.controllers.data.Faction; -import noppes.npcs.controllers.FactionController; -import noppes.npcs.controllers.data.PlayerBankData; -import noppes.npcs.controllers.data.PlayerData; -import noppes.npcs.controllers.PlayerDataController; -import noppes.npcs.controllers.data.PlayerDialogData; -import noppes.npcs.controllers.data.PlayerFactionData; -import noppes.npcs.controllers.PlayerQuestController; -import noppes.npcs.controllers.data.PlayerQuestData; -import noppes.npcs.controllers.data.PlayerTransportData; -import noppes.npcs.controllers.data.Quest; -import noppes.npcs.controllers.data.QuestCategory; -import noppes.npcs.controllers.QuestController; -import noppes.npcs.controllers.data.RecipeCarpentry; -import noppes.npcs.controllers.RecipeController; -import noppes.npcs.controllers.ServerCloneController; -import noppes.npcs.controllers.data.TransportCategory; -import noppes.npcs.controllers.TransportController; -import noppes.npcs.controllers.data.TransportLocation; +import noppes.npcs.controllers.*; +import noppes.npcs.controllers.data.*; import noppes.npcs.entity.EntityDialogNpc; import noppes.npcs.entity.EntityNPCInterface; import noppes.npcs.roles.RoleTransporter; @@ -116,6 +93,14 @@ public class NoppesUtilServer { } sendScrollData(player, map); } + + public static void sendTagDataAll(EntityPlayerMP player) { + Map map = new HashMap(); + for(Tag tag : TagController.getInstance().tags.values()){ + map.put(tag.name, tag.id); + } + sendScrollData(player, map); + } public static void sendBankDataAll(EntityPlayerMP player) { Map map = new HashMap(); diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java index b3ffef2bf..bf12bed85 100644 --- a/src/main/java/noppes/npcs/PacketHandlerServer.java +++ b/src/main/java/noppes/npcs/PacketHandlerServer.java @@ -347,6 +347,9 @@ public class PacketHandlerServer{ else if(type == EnumPacketServer.FactionsGet){ NoppesUtilServer.sendFactionDataAll(player); } + else if(type == EnumPacketServer.TagsGet){ + NoppesUtilServer.sendTagDataAll(player); + } else if(type == EnumPacketServer.DialogGet){ Dialog dialog = DialogController.instance.dialogs.get(buffer.readInt()); if(dialog != null){ @@ -372,6 +375,12 @@ public class PacketHandlerServer{ faction.writeNBT(compound); Server.sendData(player, EnumPacketClient.GUI_DATA, compound); } + else if(type == EnumPacketServer.TagGet){ + NBTTagCompound compound = new NBTTagCompound(); + Tag tag = TagController.getInstance().get(buffer.readInt()); + tag.writeNBT(compound); + Server.sendData(player, EnumPacketClient.GUI_DATA, compound); + } } private void wandPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player, EntityNPCInterface npc) throws IOException{ @@ -684,6 +693,25 @@ public class PacketHandlerServer{ (new Faction()).writeNBT(compound); Server.sendData(player, EnumPacketClient.GUI_DATA, compound); } + else if(type == EnumPacketServer.TagSet){ + // npc.setFaction(buffer.readInt()); + } + else if(type == EnumPacketServer.TagSave){ + Tag tag = new Tag(); + tag.readNBT(Server.readNBT(buffer)); + TagController.getInstance().saveTag(tag); + NoppesUtilServer.sendTagDataAll(player); + NBTTagCompound compound = new NBTTagCompound(); + tag.writeNBT(compound); + Server.sendData(player, EnumPacketClient.GUI_DATA, compound); + } + else if(type == EnumPacketServer.TagRemove){ + TagController.getInstance().delete(buffer.readInt()); + NoppesUtilServer.sendTagDataAll(player); + NBTTagCompound compound = new NBTTagCompound(); + (new Tag()).writeNBT(compound); + Server.sendData(player, EnumPacketClient.GUI_DATA, compound); + } else if(type == EnumPacketServer.PlayerDataGet){ int id = buffer.readInt(); if(EnumPlayerData.values().length <= id)