From f4c6d0b74af941eb5496c84cac4bdbe32260f9e4 Mon Sep 17 00:00:00 2001 From: Minenash Date: Wed, 7 Nov 2018 20:49:51 -0500 Subject: [PATCH] Fixed /minecart --- .../java/com/redstoner/modules/misc/Misc.cmd | 12 +++--- .../java/com/redstoner/modules/misc/Misc.java | 42 +++++++++++-------- 2 files changed, 32 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/redstoner/modules/misc/Misc.cmd b/src/main/java/com/redstoner/modules/misc/Misc.cmd index 53e73ad..cf7de28 100644 --- a/src/main/java/com/redstoner/modules/misc/Misc.cmd +++ b/src/main/java/com/redstoner/modules/misc/Misc.cmd @@ -51,16 +51,18 @@ alias nv; command minecart { alias cart; perm utils.spawncart; - help Spawn's a Minecart; type player; - deafult [string type] { - run minecart_default type; + default [string:variation] { + run minecart_default variation; + help Sets a default minecart variation.; } - [string type] { - run minecart_type type; + [string:variation] { + run minecart_variation variation; + help Spawns a certain minecart; } [empty] { run minecart; + help Spawns a minecart; } } \ No newline at end of file diff --git a/src/main/java/com/redstoner/modules/misc/Misc.java b/src/main/java/com/redstoner/modules/misc/Misc.java index 88e72ea..fbdd388 100644 --- a/src/main/java/com/redstoner/modules/misc/Misc.java +++ b/src/main/java/com/redstoner/modules/misc/Misc.java @@ -285,50 +285,58 @@ public class Misc implements Module, Listener @Command(hook = "minecart") public void minecart(CommandSender sender) { String type = (String) DataManager.getOrDefault(sender, "minecart_default", "normal"); - minecartDefault(sender, type); + minecartType(sender, type); } - @Command(hook = "minecart_type") - public void minecartType(CommandSender sender, String type) { + @Command(hook = "minecart_variation") + public boolean minecartType(CommandSender sender, String type) { + if (type.equals("help") || type.equals("h") || type.equals("?")) + return false; + Player p = (Player) sender; if (!canBuild(p, p.getLocation())) { - ChatAPI.sendActionBar(sender, "&cYou do not have permission to build here!"); - return; + getLogger().message(sender, true, "You do not have permission to build here!"); + return true; } EntityType typeE = convertMinecartTypeString(type); if (typeE != null) { p.getWorld().spawnEntity(p.getLocation(), typeE); - ChatAPI.sendActionBar(sender, "&aMinecart Spawned!"); + getLogger().message(sender, "Minecart Spawned!"); } else - ChatAPI.sendActionBar(sender, "&cThe type of Minecart you've requested does not exist."); + getLogger().message(sender, true, "The type of Minecart you've requested does not exist."); + return false; } @Command(hook = "minecart_default") - public void minecartDefault(CommandSender sender, String type) { + public boolean minecartDefault(CommandSender sender, String type) { EntityType typeE = convertMinecartTypeString(type); + if (type.equals("help") || type.equals("h") || type.equals("?")) + return false; + if (typeE != null) { DataManager.setData(sender, "minecart_default", type); - ChatAPI.sendActionBar(sender, "&aMinecart Spawned!"); + getLogger().message(sender, "Minecart Spawned!"); } else - ChatAPI.sendActionBar(sender, "&cThe type of Minecart you've requested does not exist."); + getLogger().message(sender, true, "The type of Minecart you've requested does not exist."); + return true; } public EntityType convertMinecartTypeString(String type) { EntityType typeE = null; switch (type) { - case "normal": typeE = EntityType.MINECART; - case "chest": typeE = EntityType.MINECART_CHEST; - case "furnace": typeE = EntityType.MINECART_FURNACE; - case "hopper": typeE = EntityType.MINECART_HOPPER; - case "tnt": typeE = EntityType.MINECART_TNT; - case "command": typeE = EntityType.MINECART_COMMAND; - case "spawner": typeE = EntityType.MINECART_MOB_SPAWNER; + case "normal": typeE = EntityType.MINECART; break; + case "chest": typeE = EntityType.MINECART_CHEST; break; + case "furnace": typeE = EntityType.MINECART_FURNACE; break; + case "hopper": typeE = EntityType.MINECART_HOPPER; break; + case "tnt": typeE = EntityType.MINECART_TNT; break; + case "command": typeE = EntityType.MINECART_COMMAND; break; + case "spawner": typeE = EntityType.MINECART_MOB_SPAWNER; break; } return typeE;