Solved Command issues?

Discussion in 'Plugin Development' started by Eliteninja42, Jul 28, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    Eliteninja42

    Hello,
    The commands on my plugin are conflicting with each other or something. The commands are /smelt, /smelthelp, and /smeltdelcd but all of them will do /smelt. How do I fix this?

    Thanks.
     
  2. Offline

    Woodenplanks320

    Eliteninja42 is there an error or can you post your commands?
     
  3. Offline

    Eliteninja42

    Woodenplanks320 I can use the commands, but if I type /smelthelp it won't list what it is supposed to and instead will do what /smelt should do.
     
  4. Offline

    Woodenplanks320

    Eliteninja42 okay but we can't help you if you don't show us your commands
     
  5. Offline

    Eliteninja42

    Code:
    package com.gmail.eliteninja42;
     
    import java.util.logging.Logger;
     
    import org.bukkit.ChatColor;
    import org.bukkit.Material;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.plugin.PluginDescriptionFile;
    import org.bukkit.plugin.java.JavaPlugin;
    import org.bukkit.command.Command;
    import org.bukkit.configuration.file.FileConfiguration;
    import org.bukkit.configuration.file.YamlConfiguration;
     
    public final class SmartSmelt extends JavaPlugin {
       
        public final Logger logger = Logger.getLogger("Minecraft");
        public static SmartSmelt plugin;
       
       
        @Override
        public void onDisable() {
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + " Has Been Disabled!");
        }
       
        @Override
        public void onEnable() {
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + " Version " + pdfFile.getVersion() + " Has Been Enabled!");
            FileConfiguration config = YamlConfiguration.loadConfiguration(getResource("plugin.yml"));
            for(String cmd : config.getConfigurationSection("commands").getKeys(false)){
              getCommand(cmd).setPermissionMessage(ChatColor.RED+"Your character does not contain the qualities to execute this command.");
            }
        }
       
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            Player player = (Player) sender;
           
           
            if (commandLabel.equalsIgnoreCase("smelt")){
                }
                if (Cooldowns.tryCooldown(player, "Smelt", 120000)) {
               
                        if (player.getItemInHand().getType() == Material.IRON_ORE){
                            ItemStack iron = player.getInventory().getItemInHand();
                            int amount = iron.getAmount();
                            ItemStack smelt = new ItemStack(Material.IRON_INGOT, amount);
                            player.getInventory().setItemInHand(smelt);
                            player.sendMessage(ChatColor.GREEN + "Your Iron Ore has been smelted!");  // Do what you need to do here. You don't have to set the cooldown when you're done.
                           
                       
                }else if (player.getItemInHand().getType() == Material.GOLD_ORE){
                    ItemStack gold = player.getInventory().getItemInHand();
                    int amount = gold.getAmount();
                    ItemStack smelt = new ItemStack(Material.GOLD_INGOT, amount);
                    player.getInventory().setItemInHand(smelt);
                    player.sendMessage(ChatColor.GREEN + "Your Gold Ore has been smelted!");
                   
                   
                }else if (player.getItemInHand().getType() == Material.DIAMOND_ORE){
                    ItemStack diamond = player.getInventory().getItemInHand();
                    int amount = diamond.getAmount();
                    ItemStack smelt = new ItemStack(Material.DIAMOND, amount);
                    player.getInventory().setItemInHand(smelt);
                    player.sendMessage(ChatColor.GREEN + "Your Diamond Ore has been smelted!");
               
                   
                }else if (player.getItemInHand().getType() == Material.REDSTONE_ORE){
                    ItemStack redstone = player.getInventory().getItemInHand();
                    int amount = redstone.getAmount();
                    ItemStack smelt = new ItemStack(Material.REDSTONE, amount);
                    player.getInventory().setItemInHand(smelt);
                    player.sendMessage(ChatColor.GREEN + "Your Redstone Ore has been smelted!");
                   
                   
            }else if (player.getItemInHand().getType() == Material.COAL_ORE){
                ItemStack coal = player.getInventory().getItemInHand();
                int amount = coal.getAmount();
                ItemStack smelt = new ItemStack(Material.COAL, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Coal Ore has been smelted!");
               
               
            }else if(player.getItemInHand().getType() == Material.EMERALD_ORE){
                ItemStack emerald = player.getInventory().getItemInHand();
                int amount = emerald.getAmount();
                ItemStack smelt = new ItemStack(Material.EMERALD, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Emerald Ore has been smelted!");
               
               
            }else if(player.getItemInHand().getType() == Material.QUARTZ_ORE){
                ItemStack quartz = player.getInventory().getItemInHand();
                int amount = quartz.getAmount();
                ItemStack smelt = new ItemStack(Material.QUARTZ, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Quartz Ore has been smelted!");
               
            }else if (player.getItemInHand().getType() == Material.RAW_BEEF){
                ItemStack beef = player.getInventory().getItemInHand();
                int amount = beef.getAmount();
                ItemStack smelt = new ItemStack(Material.COOKED_BEEF, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Raw Beef has been smelted!");
               
               
            }else if (player.getItemInHand().getType() == Material.RAW_CHICKEN){
                ItemStack chicken = player.getInventory().getItemInHand();
                int amount = chicken.getAmount();
                ItemStack smelt = new ItemStack(Material.COOKED_CHICKEN, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Raw Chicken has been smelted!");
               
            }else if (player.getItemInHand().getType() == Material.LAPIS_ORE){
                ItemStack lapis = player.getInventory().getItemInHand();
                int amount = lapis.getAmount();
                ItemStack smelt = new ItemStack(Material.INK_SACK, amount, (byte)4);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Lapis Lazuli Ore has been smelted!");
               
               
            }else if (player.getItemInHand().getType() == Material.PORK){
                ItemStack pork = player.getInventory().getItemInHand();
                int amount = pork.getAmount();
                ItemStack smelt = new ItemStack(Material.GRILLED_PORK, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Raw Pork has been smelted!");
               
               
            }else if (player.getItemInHand().getType() == Material.RAW_FISH){
                ItemStack fish = player.getInventory().getItemInHand();
                int amount = fish.getAmount();
                ItemStack smelt = new ItemStack(Material.COOKED_FISH, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Raw Fish has been smelted!");
               
               
            }else if (player.getItemInHand().getType() == Material.POTATO){
                ItemStack potato = player.getInventory().getItemInHand();
                int amount = potato.getAmount();
                ItemStack smelt = new ItemStack(Material.BAKED_POTATO, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Potato has been smelted!");
           
           
            }else if (player.getItemInHand().getType() == Material.WOOD){
                ItemStack wood = player.getInventory().getItemInHand();
                int amount = wood.getAmount();
                ItemStack smelt = new ItemStack(Material.COAL, amount, (short)1);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Wood has been smelted!");
               
           
            }else if (player.getItemInHand().getType() == Material.CACTUS){
                ItemStack cactus = player.getInventory().getItemInHand();
                int amount = cactus.getAmount();
                ItemStack smelt = new ItemStack(Material.INK_SACK, amount, (byte)2);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Cactus has been smelted!");
               
           
            }else if (player.getItemInHand().getType() == Material.SAND){
                ItemStack sand = player.getInventory().getItemInHand();
                int amount = sand.getAmount();
                ItemStack smelt = new ItemStack(Material.GLASS, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Sand has been smelted!");
               
            }else if (player.getItemInHand().getType() == Material.COBBLESTONE){
                ItemStack cobblestone = player.getInventory().getItemInHand();
                int amount = cobblestone.getAmount();
                ItemStack smelt = new ItemStack(Material.STONE, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Cobblestone has been smelted!");
               
               
            }else if (player.getItemInHand().getType() == Material.CLAY_BALL){
                ItemStack clay = player.getInventory().getItemInHand();
                int amount = clay.getAmount();
                ItemStack smelt = new ItemStack(Material.CLAY_BRICK, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Clay has been smelted!");
               
       
            }else if (player.getItemInHand().getType() == Material.NETHERRACK){
                ItemStack nether = player.getInventory().getItemInHand();
                int amount = nether.getAmount();
                ItemStack smelt = new ItemStack(Material.NETHER_BRICK, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Netherrack has been smelted!");
           
           
            }else if (player.getItemInHand().getType() == Material.CLAY){
                ItemStack beef = player.getInventory().getItemInHand();
                int amount = beef.getAmount();
                ItemStack smelt = new ItemStack(Material.HARD_CLAY, amount);
                player.getInventory().setItemInHand(smelt);
                player.sendMessage(ChatColor.GREEN + "Your Clay Block has been smelted!");
               
            }else if (player.getItemInHand().getType() == Material.AIR){
                player.sendMessage(ChatColor.GREEN + "Your hand appears to be empty!");   
            }else
                player.sendMessage(ChatColor.GREEN + "You can not smelt this item!");   
                } else
                    player.sendMessage(ChatColor.GREEN + "You must wait " + ((Cooldowns.getCooldown(player, "Smelt") / 1000) / 60) + " minute(s) and " + ((Cooldowns.getCooldown(player, "Smelt") /1000) % 60) + " second(s) to smelt another item.");
        return true;
        }
    }
     
     
               
           
           
     
     
    
    /smelt command/code (yes i know that is a lot of if statements...)
    Code:
    package com.gmail.eliteninja42;
     
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
     
    public class SmeltHelp {
     
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            Player player = (Player) sender;
           
            if (commandLabel.equalsIgnoreCase("smelthelp")){
                player.sendMessage(ChatColor.GREEN + "SmartSmelt Commands:");
                player.sendMessage(ChatColor.GREEN + "___________________________________________________________________");
                player.sendMessage(ChatColor.GREEN + "Type /smelthelp to view the commands of SmartSmelt");
                player.sendMessage(ChatColor.GREEN + "Type /smelt while holding an ore or food to smelt it instantly!");
                player.sendMessage(ChatColor.GREEN + "Type /smeltdelcd to cancel the cooldown of yourself.");
                player.sendMessage(ChatColor.GREEN + "Type /smeltdelcd <player> to cancel the cooldown of another player.");
            }
     
        return true;
    }
    }
    /smelt help
    Code:
    package com.gmail.eliteninja42;
     
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
     
    public class SmeltDelCd {
     
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            Player player = (Player) sender;
           
           
            if (commandLabel.equalsIgnoreCase("smeltdelcd")){
                if (args.length == 0){
                    Cooldowns.setCooldown(player, "Smelt", 0);
                    player.sendMessage(ChatColor.GREEN + "You have removed /smelt cool-down from yourself!");
                }else if (args.length == 1){
                    Player targetplayer = player.getServer().getPlayer(args[0]);
                    Cooldowns.setCooldown(targetplayer, "Smelt", 0);
                    player.sendMessage(ChatColor.GREEN + "You have removed /smelt cool-down from " + targetplayer + "!");
                }
               
            }
            return true;
    }
    }
    
    /smeltdelcd
     
  6. Offline

    Woodenplanks320

    why do you put the other commands in another class?
     
  7. Offline

    Eliteninja42

    Woodenplanks320 I did that thinking it would fix it somehow... and It did solve another little bug.... Is that wrong?

    I fixed it...

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 3, 2016
  8. Offline

    Woodenplanks320

Thread Status:
Not open for further replies.

Share This Page