.

Discussion in 'Plugin Development' started by elementalgodz11, Nov 12, 2013.

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

    elementalgodz11

  2. Offline

    Noxyro

    Edit: I failed... you already have exception checks ^^

    You need to put
    Code:java
    1. Player target = Bukkit.getPlayer(args[0]);

    inside your
    Code:java
    1. if (args.length != 0) {
    2. ...

    and create an
    Code:java
    1. } else {
    2. sender.sendMessage("Usage: ...");
    3. }
     
  3. Offline

    amhokies

    You're trying to access args[0] without checking to see if the length of the arguments is greater than zero.
     
  4. Offline

    Noxyro

    elementalgodz11 There is still no
    Code:java
    1. } else {
    2. sender.sendMessage("Usage: ...");
    3. }

    after your "args"-Check.

    Edit: Or you can also use
    Code:java
    1. } else {
    2. return false;
    3. }

    as this gives the default "Command-Fail-Message" from Bukkit.
     
  5. Offline

    drtshock

    After you do Bukkit.getPlayer() you should check if that object is null.
     
  6. Offline

    Noxyro


    Code:java
    1. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
    2. if (cmd.getName().equalsIgnoreCase("kick")) {
    3. if (sender.hasPermission("kits.kick")) {
    4. if (args.length != 0) {
    5. Player target = Bukkit.getPlayer(args[0]);
    6. if (target != null) { // Added this line
    7. int i = 1;
    8. int para = args.length;
    9. String MSG = "";
    10. while (i < para) {
    11. MSG = MSG + " " + args;
    12. i++;
    13. }
    14. target.kickPlayer(ChatColor.RED + "You was kicked by " + sender.getName() + "\n" + ChatColor.GRAY + MSG);
    15. Bukkit.getServer().broadcastMessage(ChatColor.AQUA + sender.getName() + ChatColor.GRAY + " kicked " + ChatColor.AQUA + target.getName());
    16. } else {
    17. sender.sendMessage(ChatColor.RED + "This player is not on the server!");
    18. }
    19. } else {
    20. sender.sendMessage(ChatColor.RED + "Usage: " + ChatColor.GRAY + "/kick <player> <reason>");
    21. }
    22. }
    23. }
    24. return false;
    25. }
     
Thread Status:
Not open for further replies.

Share This Page