Everytime i use my command it says the same error

Discussion in 'Plugin Development' started by GrafEmpire, Mar 13, 2021.

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

    GrafEmpire

    Code:
    [15:42:21] [Server thread/ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'bautruhe' in plugin HighdraxCrate v1.0
      at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchCommand(CraftServer.java:711) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.PlayerConnection.handleCommand(PlayerConnection.java:1657) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1497) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:19) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(SourceFile:144) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(SourceFile:118) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.MinecraftServer.aZ(MinecraftServer.java:917) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:910) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeAll(SourceFile:103) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.MinecraftServer.sleepForTick(MinecraftServer.java:893) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:827) [spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      at java.lang.Thread.run(Unknown Source) [?:1.8.0_281]
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 10
      at de.highdraxcrate.Main.createCrate(Main.java:55) ~[?:?]
      at de.highdraxcrate.Main.onCommand(Main.java:30) ~[?:?]
      at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-1.15.jar:git-Spigot-f39a89e-4633e6c]
      ... 17 more
    Code:
    package de.highdraxcrate;
    
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.inventory.meta.ItemMeta;
    import org.bukkit.plugin.java.JavaPlugin;
    
    import de.jo.crates.main.Crate;
    
    public class Main extends JavaPlugin{
       
       @Override
       public void onEnable() {
        Bukkit.getPluginManager().registerEvents(new Crate("§3Bautruhe"), this);
       }
       
       @Override
       public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
       
         if(!(sender instanceof Player)) {
           return true;
         }
         Player p = (Player) sender;
         if(label.equalsIgnoreCase("bautruhe")) {
        if(p.hasPermission("HighdraxCrate.bautruhe")) {
            createCrate(p);   
        }
        }
        return false;
      }
       
       public void createCrate(Player p) {
         
         ItemStack randItem = new ItemStack(Material.BLACK_STAINED_GLASS_PANE);
         ItemMeta randMeta = randItem.getItemMeta();
         randMeta.setDisplayName("§3 ");
         randItem.setItemMeta(randMeta);
         
         ItemStack[] items = new ItemStack[10];
         
         items[0] = new ItemStack(Material.BEACON,1);
         items[1] = new ItemStack(Material.STONE,64);
         items[2] = new ItemStack(Material.JUNGLE_WOOD,64);
         items[3] = new ItemStack(Material.BLUE_BED,12);
         items[4] = new ItemStack(Material.BIRCH_WOOD,64);
         items[5] = new ItemStack(Material.GLOWSTONE,64);
         items[6] = new ItemStack(Material.ENDER_CHEST,32);
         items[7] = new ItemStack(Material.BEACON,2);
         items[8] = new ItemStack(Material.DIAMOND_ORE,32);
         items[9] = new ItemStack(Material.QUARTZ_BLOCK,64);
         items[10] = new ItemStack(Material.DIAMOND_BLOCK,20);
         
         Crate c = new Crate("§3Bautruhe", items, randItem);
         c.spin(p);
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Mar 13, 2021
  2. Offline

    KarimAKL

    You are creating an array with size 10, but you are setting 11 entries. Set the size of the array to 11 if you want 11 items.
     
  3. Offline

    Strahan

    IMO, it'd be easier to just use a List. Also don't embed the color character; ChatColor exists for a reason. You also do not need to pass 1 to a new ItemStack. One is the default amount.
     
    KarimAKL likes this.
Thread Status:
Not open for further replies.

Share This Page