diff --git a/build.gradle b/build.gradle index e1c581324..c34070dbc 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { id 'idea' } -version = "1.9.4-beta1" +version = "1.9.4-beta2.7" group= "kamkeel.customnpc-plus" archivesBaseName = "CustomNPC-Plus" diff --git a/src/main/java/foxz/command/CmdClone.java b/src/main/java/foxz/command/CmdClone.java index 75627a9f1..9a6cd1923 100644 --- a/src/main/java/foxz/command/CmdClone.java +++ b/src/main/java/foxz/command/CmdClone.java @@ -172,7 +172,7 @@ public class CmdClone extends ChMcLogger { entity.setPosition(posX + 0.5, posY + 1, posZ + 0.5); if(entity instanceof EntityNPCInterface){ EntityNPCInterface npc = (EntityNPCInterface) entity; - npc.ai.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; + npc.ais.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; if(newname != null && !newname.isEmpty()) npc.display.name = newname.replaceAll("%", " "); // like name, newname must use % in place of space to keep a logical way } @@ -274,7 +274,7 @@ public class CmdClone extends ChMcLogger { entity.setPosition(posX + 0.5 + x, yy + 1, posZ + 0.5 + z); if(entity instanceof EntityNPCInterface){ EntityNPCInterface npc = (EntityNPCInterface) entity; - npc.ai.startPos = new int[]{xx, yy, zz}; + npc.ais.startPos = new int[]{xx, yy, zz}; if(newname != null && !newname.isEmpty()) npc.display.name = newname.replaceAll("%", " "); // like name, newname must use % in place of space to keep a logical way } diff --git a/src/main/java/foxz/command/CmdConfig.java b/src/main/java/foxz/command/CmdConfig.java index d947513b0..597db83a1 100644 --- a/src/main/java/foxz/command/CmdConfig.java +++ b/src/main/java/foxz/command/CmdConfig.java @@ -5,15 +5,16 @@ import foxz.commandhelper.annotations.Command; import foxz.commandhelper.annotations.SubCommand; import foxz.commandhelper.permissions.OpOnly; import foxz.commandhelper.permissions.PlayerOnly; +import kamkeel.npcs.network.PacketHandler; +import kamkeel.npcs.network.enums.EnumConfigOperation; +import kamkeel.npcs.network.packets.data.ConfigCommandPacket; import net.minecraft.block.Block; import net.minecraft.block.BlockIce; import net.minecraft.block.BlockLeavesBase; import net.minecraft.block.BlockVine; import net.minecraft.entity.player.EntityPlayerMP; import noppes.npcs.CustomNpcs; -import noppes.npcs.Server; import noppes.npcs.config.ConfigMain; -import noppes.npcs.constants.EnumPacketClient; import noppes.npcs.controllers.ChunkController; import java.util.Arrays; @@ -207,6 +208,6 @@ public class CmdConfig extends ChMcLogger { for(int i = 0; i < args.length; i++){ font += " " + args[i]; } - Server.sendData((EntityPlayerMP)this.pcParam, EnumPacketClient.CONFIG, 0, font.trim(), size); + PacketHandler.Instance.sendToPlayer(new ConfigCommandPacket(EnumConfigOperation.FONT, font.trim(), size), (EntityPlayerMP)this.pcParam); } } diff --git a/src/main/java/foxz/command/CmdDialog.java b/src/main/java/foxz/command/CmdDialog.java index 250717dd4..3b6a3e857 100644 --- a/src/main/java/foxz/command/CmdDialog.java +++ b/src/main/java/foxz/command/CmdDialog.java @@ -5,12 +5,12 @@ import foxz.commandhelper.annotations.Command; import foxz.commandhelper.annotations.SubCommand; import foxz.commandhelper.permissions.OpOnly; import foxz.commandhelper.permissions.ParamCheck; +import kamkeel.npcs.controllers.SyncController; import net.minecraft.command.CommandBase; import net.minecraft.entity.player.EntityPlayer; import noppes.npcs.NoppesUtilServer; import noppes.npcs.client.EntityUtil; import noppes.npcs.controllers.DialogController; -import noppes.npcs.controllers.SyncController; import noppes.npcs.controllers.data.Dialog; import noppes.npcs.controllers.data.DialogOption; import noppes.npcs.controllers.data.PlayerData; diff --git a/src/main/java/foxz/command/CmdNpc.java b/src/main/java/foxz/command/CmdNpc.java index a4cffbc4e..aaec029a4 100644 --- a/src/main/java/foxz/command/CmdNpc.java +++ b/src/main/java/foxz/command/CmdNpc.java @@ -50,7 +50,7 @@ public class CmdNpc extends ChMcLogger { posZ = CommandBase.func_110666_a(pcParam, selectedNpc.posZ, args[2]); } - selectedNpc.ai.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; + selectedNpc.ais.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; } @SubCommand( @@ -144,7 +144,7 @@ public class CmdNpc extends ChMcLogger { if(args.length > 0) npc.display.name = args[0]; npc.setPositionAndRotation(player.posX, player.posY, player.posZ, player.cameraYaw, player.cameraPitch); - npc.ai.startPos = new int[]{MathHelper.floor_double(player.posX),MathHelper.floor_double(player.posY),MathHelper.floor_double(player.posZ)}; + npc.ais.startPos = new int[]{MathHelper.floor_double(player.posX),MathHelper.floor_double(player.posY),MathHelper.floor_double(player.posZ)}; pw.spawnEntityInWorld(npc); npc.setHealth(npc.getMaxHealth()); NoppesUtilServer.sendOpenGui(player, EnumGuiType.MainMenuDisplay, npc); diff --git a/src/main/java/foxz/command/CmdQuest.java b/src/main/java/foxz/command/CmdQuest.java index e0500f3e1..78cce2830 100644 --- a/src/main/java/foxz/command/CmdQuest.java +++ b/src/main/java/foxz/command/CmdQuest.java @@ -5,11 +5,11 @@ import foxz.commandhelper.annotations.Command; import foxz.commandhelper.annotations.SubCommand; import foxz.commandhelper.permissions.OpOnly; import foxz.commandhelper.permissions.ParamCheck; +import kamkeel.npcs.controllers.SyncController; +import kamkeel.npcs.network.packets.data.AchievementPacket; +import kamkeel.npcs.network.packets.data.ChatAlertPacket; import net.minecraft.entity.player.EntityPlayerMP; -import noppes.npcs.Server; -import noppes.npcs.constants.EnumPacketClient; import noppes.npcs.controllers.QuestController; -import noppes.npcs.controllers.SyncController; import noppes.npcs.controllers.data.PlayerData; import noppes.npcs.controllers.data.Quest; import noppes.npcs.controllers.data.QuestData; @@ -58,8 +58,8 @@ public class CmdQuest extends ChMcLogger{ playerdata.questData.activeQuests.put(questid, questdata); playerdata.save(); if(playerdata.player != null){ - Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title); - Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title); + AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title); + ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title); } playerdata.updateClient = true; } diff --git a/src/main/java/kamkeel/addon/AddonManager.java b/src/main/java/kamkeel/npcs/addon/AddonManager.java similarity index 78% rename from src/main/java/kamkeel/addon/AddonManager.java rename to src/main/java/kamkeel/npcs/addon/AddonManager.java index 52aabb0f6..24b58dc3e 100644 --- a/src/main/java/kamkeel/addon/AddonManager.java +++ b/src/main/java/kamkeel/npcs/addon/AddonManager.java @@ -1,7 +1,7 @@ -package kamkeel.addon; +package kamkeel.npcs.addon; -import kamkeel.addon.client.DBCClient; -import kamkeel.addon.client.GeckoAddonClient; +import kamkeel.npcs.addon.client.DBCClient; +import kamkeel.npcs.addon.client.GeckoAddonClient; public class AddonManager { public static AddonManager Instance; diff --git a/src/main/java/kamkeel/addon/DBCAddon.java b/src/main/java/kamkeel/npcs/addon/DBCAddon.java similarity index 96% rename from src/main/java/kamkeel/addon/DBCAddon.java rename to src/main/java/kamkeel/npcs/addon/DBCAddon.java index e8f446143..d109d2393 100644 --- a/src/main/java/kamkeel/addon/DBCAddon.java +++ b/src/main/java/kamkeel/npcs/addon/DBCAddon.java @@ -1,6 +1,5 @@ -package kamkeel.addon; +package kamkeel.npcs.addon; -import io.netty.buffer.ByteBuf; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/kamkeel/addon/GeckoAddon.java b/src/main/java/kamkeel/npcs/addon/GeckoAddon.java similarity index 94% rename from src/main/java/kamkeel/addon/GeckoAddon.java rename to src/main/java/kamkeel/npcs/addon/GeckoAddon.java index 97c7a50c2..ee0f72141 100644 --- a/src/main/java/kamkeel/addon/GeckoAddon.java +++ b/src/main/java/kamkeel/npcs/addon/GeckoAddon.java @@ -1,4 +1,4 @@ -package kamkeel.addon; +package kamkeel.npcs.addon; import net.minecraft.entity.EntityLivingBase; @@ -17,4 +17,4 @@ public class GeckoAddon { public void geckoCopyData(EntityLivingBase copied, EntityLivingBase entity){} -} \ No newline at end of file +} diff --git a/src/main/java/kamkeel/addon/client/DBCClient.java b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java similarity index 84% rename from src/main/java/kamkeel/addon/client/DBCClient.java rename to src/main/java/kamkeel/npcs/addon/client/DBCClient.java index f148439d6..5fdc75d7e 100644 --- a/src/main/java/kamkeel/addon/client/DBCClient.java +++ b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java @@ -1,15 +1,10 @@ -package kamkeel.addon.client; +package kamkeel.npcs.addon.client; -import io.netty.buffer.ByteBuf; -import net.minecraft.client.model.ModelBase; import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; import noppes.npcs.client.gui.mainmenu.GuiNpcStats; -import noppes.npcs.client.gui.model.GuiCreationScreen; import noppes.npcs.client.gui.player.inventory.GuiCNPCInventory; import noppes.npcs.client.gui.util.GuiNPCInterface2; import noppes.npcs.client.gui.util.GuiNpcButton; -import noppes.npcs.client.model.ModelMPM; import noppes.npcs.entity.EntityNPCInterface; public class DBCClient { diff --git a/src/main/java/kamkeel/addon/client/GeckoAddonClient.java b/src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java similarity index 97% rename from src/main/java/kamkeel/addon/client/GeckoAddonClient.java rename to src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java index 088488314..f014b07ad 100644 --- a/src/main/java/kamkeel/addon/client/GeckoAddonClient.java +++ b/src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java @@ -1,4 +1,4 @@ -package kamkeel.addon.client; +package kamkeel.npcs.addon.client; import net.minecraft.client.model.ModelBase; import net.minecraft.entity.EntityLivingBase; diff --git a/src/main/java/kamkeel/command/AnimationCommand.java b/src/main/java/kamkeel/npcs/command/AnimationCommand.java similarity index 99% rename from src/main/java/kamkeel/command/AnimationCommand.java rename to src/main/java/kamkeel/npcs/command/AnimationCommand.java index 8a6beec18..05e5e517f 100644 --- a/src/main/java/kamkeel/command/AnimationCommand.java +++ b/src/main/java/kamkeel/npcs/command/AnimationCommand.java @@ -1,4 +1,4 @@ -package kamkeel.command; +package kamkeel.npcs.command; import net.minecraft.command.CommandException; import net.minecraft.command.ICommandSender; diff --git a/src/main/java/kamkeel/command/CloneCommand.java b/src/main/java/kamkeel/npcs/command/CloneCommand.java similarity index 94% rename from src/main/java/kamkeel/command/CloneCommand.java rename to src/main/java/kamkeel/npcs/command/CloneCommand.java index 174d1039a..b62308d30 100644 --- a/src/main/java/kamkeel/command/CloneCommand.java +++ b/src/main/java/kamkeel/npcs/command/CloneCommand.java @@ -1,8 +1,7 @@ -package kamkeel.command; +package kamkeel.npcs.command; import foxz.utils.Utils; import net.minecraft.block.Block; -import net.minecraft.command.CommandBase; import net.minecraft.command.CommandException; import net.minecraft.command.ICommandSender; import net.minecraft.entity.Entity; @@ -180,9 +179,9 @@ public class CloneCommand extends CommandKamkeelBase { return; } try{ - posX = CommandBase.func_110666_a(sender, posX, par[0]); - posY = CommandBase.func_110665_a(sender, posY, par[1].trim(), 0, 0); - posZ = CommandBase.func_110666_a(sender, posZ, par[2]); + posX = func_110666_a(sender, posX, par[0]); + posY = func_110665_a(sender, posY, par[1].trim(), 0, 0); + posZ = func_110666_a(sender, posZ, par[2]); } catch(NumberFormatException ex){ sendError(sender, "Location should be in numbers"); return; @@ -204,7 +203,7 @@ public class CloneCommand extends CommandKamkeelBase { entity.setPosition(posX + 0.5, posY + 1, posZ + 0.5); if(entity instanceof EntityNPCInterface){ EntityNPCInterface npc = (EntityNPCInterface) entity; - npc.ai.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; + npc.ais.startPos = new int[]{MathHelper.floor_double(posX), MathHelper.floor_double(posY), MathHelper.floor_double(posZ)}; if(newname != null && !newname.isEmpty()) npc.display.name = newname.replaceAll("%", " "); // like name, newname must use % in place of space to keep a logical way } @@ -272,9 +271,9 @@ public class CloneCommand extends CommandKamkeelBase { return; } try{ - posX = CommandBase.func_110666_a(sender, posX, par[0]); - posY = CommandBase.func_110665_a(sender, posY, par[1].trim(), 0, 0); - posZ = CommandBase.func_110666_a(sender, posZ, par[2]); + posX = func_110666_a(sender, posX, par[0]); + posY = func_110665_a(sender, posY, par[1].trim(), 0, 0); + posZ = func_110666_a(sender, posZ, par[2]); } catch(NumberFormatException ex){ sendError(sender, "Location should be in numbers"); return; @@ -310,7 +309,7 @@ public class CloneCommand extends CommandKamkeelBase { entity.setPosition(posX + 0.5 + x, yy + 1, posZ + 0.5 + z); if(entity instanceof EntityNPCInterface){ EntityNPCInterface npc = (EntityNPCInterface) entity; - npc.ai.startPos = new int[]{xx, yy, zz}; + npc.ais.startPos = new int[]{xx, yy, zz}; if(newname != null && !newname.isEmpty()) npc.display.name = newname.replaceAll("%", " "); // like name, newname must use % in place of space to keep a logical way } diff --git a/src/main/java/kamkeel/command/CommandCommand.java b/src/main/java/kamkeel/npcs/command/CommandCommand.java similarity index 98% rename from src/main/java/kamkeel/command/CommandCommand.java rename to src/main/java/kamkeel/npcs/command/CommandCommand.java index 80a41ec28..facac35f1 100644 --- a/src/main/java/kamkeel/command/CommandCommand.java +++ b/src/main/java/kamkeel/npcs/command/CommandCommand.java @@ -1,4 +1,4 @@ -package kamkeel.command; +package kamkeel.npcs.command; import net.minecraft.command.CommandException; import net.minecraft.command.ICommandSender; diff --git a/src/main/java/kamkeel/command/CommandKamkeel.java b/src/main/java/kamkeel/npcs/command/CommandKamkeel.java similarity index 98% rename from src/main/java/kamkeel/command/CommandKamkeel.java rename to src/main/java/kamkeel/npcs/command/CommandKamkeel.java index 86c192847..6c5bfd28d 100644 --- a/src/main/java/kamkeel/command/CommandKamkeel.java +++ b/src/main/java/kamkeel/npcs/command/CommandKamkeel.java @@ -1,4 +1,4 @@ -package kamkeel.command; +package kamkeel.npcs.command; import net.minecraft.command.CommandBase; import net.minecraft.command.CommandException; @@ -46,7 +46,7 @@ public class CommandKamkeel extends CommandBase{ @Override public String getCommandName() { - return "kamkeel"; + return "kamkeel/npcs"; } @Override diff --git a/src/main/java/kamkeel/command/CommandKamkeelBase.java b/src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java similarity index 99% rename from src/main/java/kamkeel/command/CommandKamkeelBase.java rename to src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java index 9c380f7c2..cf87c5d36 100644 --- a/src/main/java/kamkeel/command/CommandKamkeelBase.java +++ b/src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java @@ -1,4 +1,4 @@ -package kamkeel.command; +package kamkeel.npcs.command; import net.minecraft.command.CommandBase; import net.minecraft.command.CommandException; diff --git a/src/main/java/kamkeel/command/ConfigCommand.java b/src/main/java/kamkeel/npcs/command/ConfigCommand.java similarity index 96% rename from src/main/java/kamkeel/command/ConfigCommand.java rename to src/main/java/kamkeel/npcs/command/ConfigCommand.java index 4be014417..f31a1dc18 100644 --- a/src/main/java/kamkeel/command/ConfigCommand.java +++ b/src/main/java/kamkeel/npcs/command/ConfigCommand.java @@ -1,6 +1,9 @@ -package kamkeel.command; +package kamkeel.npcs.command; import foxz.utils.Market; +import kamkeel.npcs.network.PacketHandler; +import kamkeel.npcs.network.enums.EnumConfigOperation; +import kamkeel.npcs.network.packets.data.ConfigCommandPacket; import net.minecraft.block.Block; import net.minecraft.block.BlockIce; import net.minecraft.block.BlockLeavesBase; @@ -10,9 +13,7 @@ import net.minecraft.command.ICommandSender; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.util.ResourceLocation; import noppes.npcs.CustomNpcs; -import noppes.npcs.Server; import noppes.npcs.config.ConfigMain; -import noppes.npcs.constants.EnumPacketClient; import noppes.npcs.controllers.ChunkController; import noppes.npcs.controllers.PlayerDataController; @@ -291,8 +292,7 @@ public class ConfigCommand extends CommandKamkeelBase { for(int i = 0; i < args.length; i++){ font += " " + args[i]; } - Server.sendData((EntityPlayerMP)sender, EnumPacketClient.CONFIG, 0, font.trim(), size); + PacketHandler.Instance.sendToPlayer(new ConfigCommandPacket(EnumConfigOperation.FONT, font.trim(), size), (EntityPlayerMP)sender); } - } diff --git a/src/main/java/kamkeel/command/DialogCategoryCommand.java b/src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java similarity index 99% rename from src/main/java/kamkeel/command/DialogCategoryCommand.java rename to src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java index 648920e06..d149a15b7 100644 --- a/src/main/java/kamkeel/command/DialogCategoryCommand.java +++ b/src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java @@ -1,4 +1,4 @@ -package kamkeel.command; +package kamkeel.npcs.command; import net.minecraft.command.CommandException; import net.minecraft.command.ICommandSender; diff --git a/src/main/java/kamkeel/command/DialogCommand.java b/src/main/java/kamkeel/npcs/command/DialogCommand.java similarity index 99% rename from src/main/java/kamkeel/command/DialogCommand.java rename to src/main/java/kamkeel/npcs/command/DialogCommand.java index ac9ecd543..4ad1e7e22 100644 --- a/src/main/java/kamkeel/command/DialogCommand.java +++ b/src/main/java/kamkeel/npcs/command/DialogCommand.java @@ -1,5 +1,6 @@ -package kamkeel.command; +package kamkeel.npcs.command; +import kamkeel.npcs.controllers.SyncController; import net.minecraft.command.CommandBase; import net.minecraft.command.CommandException; import net.minecraft.command.ICommandSender; @@ -10,7 +11,6 @@ import noppes.npcs.constants.EnumAvailabilityDialog; import noppes.npcs.constants.EnumAvailabilityQuest; import noppes.npcs.controllers.DialogController; import noppes.npcs.controllers.PlayerDataController; -import noppes.npcs.controllers.SyncController; import noppes.npcs.controllers.data.Availability; import noppes.npcs.controllers.data.Dialog; import noppes.npcs.controllers.data.DialogOption; diff --git a/src/main/java/kamkeel/npcs/command/EffectCommand.java b/src/main/java/kamkeel/npcs/command/EffectCommand.java new file mode 100644 index 000000000..9286a30a9 --- /dev/null +++ b/src/main/java/kamkeel/npcs/command/EffectCommand.java @@ -0,0 +1,139 @@ +package kamkeel.npcs.command; + +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommandSender; +import noppes.npcs.controllers.PlayerDataController; +import noppes.npcs.controllers.data.CustomEffect; +import noppes.npcs.controllers.data.PlayerData; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +public class EffectCommand extends CommandKamkeelBase { + + @Override + public String getDescription() { + return "Custom Effect operations"; + } + + @Override + public String getCommandName() { + return "effect"; + } + + // info all + @SubCommand(desc = "Lists all effects") + public void infoAll(ICommandSender sender, String[] args) throws CommandException { + // TODO: FIX EFFECT COMMAND +// Set> effects = DBCEffectController.getInstance().standardEffects.entrySet(); +// Set> customEffects = DBCEffectController.getInstance().customEffects.entrySet(); +// +// if (effects.isEmpty() && customEffects.isEmpty()) { +// sendError(sender, "No effects found."); +// return; +// } +// +// sendResult(sender, "--------------------"); +// +// for (Map.Entry entry : effects) { +// sendResult(sender, String.format("\u00a7b%2$s \u00a77(ID%3$s: %1$s)", entry.getKey(), entry.getValue().getName(), entry.getValue().isCustom() ? " - CUSTOM" : " ")); +// } +// for (Map.Entry entry : customEffects) { +// sendResult(sender, String.format("\u00a7b%2$s \u00a77(ID%3$s: %1$s)", entry.getKey(), entry.getValue().getName(), entry.getValue().isCustom() ? " - CUSTOM" : " ")); +// } +// +// sendResult(sender, "--------------------"); + } + + @SubCommand(desc = "Gives a effect to a player", usage = "