Development Assistance Args problem

Discussion in 'Plugin Help/Development/Requests' started by jakemaster2003, Apr 17, 2017.

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

    jakemaster2003

    Best poeple of the forum,

    I have a problem short said if i type: /jqp premium its give an error but i want it to send a message that you have to specify a option(NOTE: This is the only problem i have i just want is args[1] is nothing that is displays a message eccept than an error)


    Code (open)

    Code:
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            String NoPermission = "messages.nopermission";
            String QuitMessage = "messages.quitmessage";
            String JoinMessage = "messages.joinmessage";
            String JoinMessagestatus = "options.joinmessage";
            String QuitMessagestatus = "options.quitmessage";
            String NoPermissionStatus = "options.nopermissionmessage";
            String Premium = "options.premium";
            Player p = (Player)sender;
           
            if(cmd.getName().equalsIgnoreCase("joinquitpro")){
                if(!p.hasPermission("joinquitpro.admin")){
                    p.sendMessage(NoPermission);
                    return true;
                   
                } else {
                    if(args.length == 0){
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6+&7================================================&6+"));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "                  &6*Made by YourPalJake*               "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6/jqp nopermissionmessage &7[set <message> | on/off]   "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6/jqp joinmessage &7[set <message> | on/off]           "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6/jqp quitmessage &7[set <message> | on/off]           "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6/jqp premium &7[on/off]                               "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6/jqp reload &7Reloads the configuration file!         "));
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6+&7================================================&6+"));
                        return true;
                    }
    
                       
                    else if(args[0].equalsIgnoreCase("premium")){
                        if(args[1].isEmpty()){
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&4Please specify a option!"));
                            return true;
                           
                        }
                        else if(args[1].equalsIgnoreCase("on")){
                            getConfig().set(Premium, "on");
                            saveConfig();
                            reloadConfig();
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&aYour settings have been applied!"));
                            return true;
                           
                        }
                        else if(args[1].equalsIgnoreCase("off")){
                            getConfig().set(Premium, "off");
                            saveConfig();
                            reloadConfig();
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&aYour settings have been applied!"));
                            return true;
                           
                        }
                        else{
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&4Invalid option!"));
                            return true;
                        }
                       
                    }
                    else if(args[0].equalsIgnoreCase("reload")){
                        reloadConfig();
                        p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&aConfig reloaded!"));
                        return true;
                   
                    }
                       
                   
                       
    
                }
            }
            return true;
        }
    
    }
    


    Error (open)

    [21:09:17 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'jqp' in plugin JoinQuitPro v0.1
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[server.jar:git-Bukkit-e04a179]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140) ~[server.jar:git-Bukkit-e04a179]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchCommand(CraftServer.java:629) ~[server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.PlayerConnection.handleCommand(PlayerConnection.java:1294) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.PlayerConnection.a(PlayerConnection.java:1154) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.PacketPlayInChat.a(SourceFile:37) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.PacketPlayInChat.a(SourceFile:9) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.PlayerConnectionUtils$1.run(SourceFile:13) [server.jar:git-Bukkit-e04a179]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_121]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_121]
    at net.minecraft.server.v1_11_R1.SystemUtils.a(SourceFile:46) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:695) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:360) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:650) [server.jar:git-Bukkit-e04a179]
    at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:554) [server.jar:git-Bukkit-e04a179]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_121]
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    at me.nl.YourPalJake.JoinQuitPro.JoinQuitProMain.onCommand(JoinQuitProMain.java:78) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[server.jar:git-Bukkit-e04a179]
    ... 15 more


    And again i just want the troubleshooting of the error the rest i can deal with that only do i not know how to deal with this kind of problem.


    Greetings YourPalJake
     
  2. Offline

    DJRedNight

    IDK why you're creating this type of plugin when Essentials does the same exact thing.
     
  3. Offline

    jakemaster2003

    Because i dont use essentials and i am going way more advanced with this than essentials etc.
     
  4. Offline

    yPedx

  5. Offline

    jakemaster2003

    Sorry at the moment i dont have my laptop with me but if you can specify what is Says then i can answer
    @yPedyx
     
  6. Offline

    Zombie_Striker

    Instead of checking if args[1] is empty, you have to check if the second arg exists before using it.
     
  7. Offline

    jakemaster2003

    Can you please show me an example i'm new with args
     
  8. Offline

    Zombie_Striker

    @jakemaster2003
    It the same thing you did when you were checking if there were no args. All you need to do is change it so it checks if the length is greater than or equal to 2.
     
  9. Offline

    jakemaster2003

    You mean like: if(args.length == 2){
    ?
     
  10. Offline

    Zombie_Striker

    jakemaster2003 likes this.
  11. Offline

    jakemaster2003

    But one last thing dough my command is like: /jqp premium on
    Premium is arg 0 and on is arg 1 is arg 0 then 1 if i use: if(args.length == 1){ and arg 1 then: if(args.length == 2){

    ?
     
  12. Offline

    Zombie_Striker

  13. Offline

    jakemaster2003

    I'm going to try it Tomorrow thnx for the support
     
Thread Status:
Not open for further replies.

Share This Page