if (args[0].lenght == 0) replace it with someone

Discussion in 'Plugin Development' started by DillionPlaysMC, May 28, 2016.

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

    DillionPlaysMC

    I was wondering if (args[0].length == 0) I could replace it w/ something such as Spam or something I don't know yet.

    Here is what I have so far it is fully funcional but if i do /cc and dont put a reason it will say Internal error
    Code:
    @Override
        public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){   
    if (cmd.getName().equalsIgnoreCase("cc")) {
    
                String player = sender.getName();
                String reason = args[0];
               
               
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(" ");
                Bukkit.getServer().broadcastMessage(ChatColor.translateAlternateColorCodes(
                                                    '&', "&6&l&m----------------------------------------"));
                Bukkit.getServer().broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&4&lChat Has Been Cleared By: " + player
                        + ChatColor.translateAlternateColorCodes('&', " &4Reason: " + reason)));
                Bukkit.getServer().broadcastMessage(ChatColor.translateAlternateColorCodes(
                                                    '&', "&6&l&m----------------------------------------"));
               
            }
            return false;
        }
    @timtower

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
  2. Online

    timtower Administrator Administrator Moderator

    @DillionPlaysMC Probably because args[0] doesn't exist. Check the length of args instead.
    And how about a loop for the empty broadcasts?
     
  3. Offline

    DillionPlaysMC

    @timtower how do i make a loop?

    EDIT: I thought args[0] is the first thing a player types after the cmd? its been working for me
     
  4. Online

    timtower Administrator Administrator Moderator

    @DillionPlaysMC Loops are basic java, not gonna help with those.
    And only if there is something.
     
  5. Offline

    DillionPlaysMC

    @timtower I figured it out. Also i was wondering if i do something like /chat on/off it disables/enables chat(i made that already) but if i do something like /chat gfdhnklgdfng;kdf it would say the correct usage.

    @timtower hello? can you please anser my question

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 28, 2016
  6. Offline

    DoggyCode™

    1. /command args[0] args[1] args[2] args[3] args[4] ...
    2. /args.length==0 args.length==1 args.length==2 args.length==3 args.length==4 ...

    Kind of confusing, but you'll eventually get it! :p
     
  7. Offline

    DillionPlaysMC

    @DoggyCode™

    how do I do something like /chat on/off it disables/enables chat(i made that already) but if i do something like /chat gfdhnklgdfng;kdf it would say the correct usage.
     
  8. Offline

    XxTimexX

    Check if the args[0] are equal to on/off.
     
  9. Offline

    Betagear

    just check if args. It'll return a true if it contains something.
     
  10. Offline

    SuippoKala

    Fun thing about this is that i created the exact same plugin yesterday for training purposes lol
     
  11. Offline

    Minibros

    Hello,
    I saw that you are broadcasting alot of empty strings.
    You can easily do this inside of a for loop.

    I've been so nice to do this for you.
    Code:
    for (int i = 0; i < 48; i++) {
         Bukkit.getServer().broadcastMessage(" ");
    }
    
    So basicly this is repeating your broadcasting empty strings thing 48 times.
    So now you can go ahead and delete all of your Bukkit.getServer().broadcastMessage(" "); and paste in the above code.
     
  12. Offline

    I Al Istannen

    @SuippoKala
    Great. Now, if you could contribute to the thread, I would be pleased.

    @DillionPlaysMC
    IF args[0] exists (i.e. args.length >= 1), use String#equalsIgnoreCase(String) (for case insensitive) or String#equals(String) (for case sensitive).
    Then use
    Code:
    if(args[0] some kind of equals "on")
      do on stuff
    endif
    else if args[0] some kind of equals "off")
      do off stuff
    endif
    else
      nothing matched ==> Incorrect argument.
    endelse
    But, if you want to hear my honest opinion:
    You don't know what a for loop is. Learning Java should be your number 1 priority. At least a basic understanding is essential for working with bukkit, which you seem to lack. This is no problem or shame, we all have been there ;) But you would help yourself more if you would prioritize Java and then come back to Bukkit. The questions you now have will seem very simple to you and you will be able to make this and more complicated plugins.
     
Thread Status:
Not open for further replies.

Share This Page