What's happening?

Discussion in 'Plugin Development' started by Isterikaa, Apr 9, 2020.

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

    Isterikaa

    org.bukkit.command.CommandException: Unhandled exception executing command 'race' in plugin Russia v1.0.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.PlayerConnection.handleCommand(PlayerConnection.java:1399) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1234) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:45) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.PlayerConnectionUtils$1.run(SourceFile:13) [s.jar:git-Spigot-dcd1643-e60fc34]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_241]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_241]
    at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:748) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [s.jar:git-Spigot-dcd1643-e60fc34]
    at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [s.jar:git-Spigot-dcd1643-e60fc34]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 9
    at java.util.Arrays$ArrayList.set(Unknown Source) ~[?:1.8.0_241]
    at net.minecraft.server.v1_12_R1.NonNullList.set(SourceFile:51) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at org.bukkit.craftbukkit.v1_12_R1.inventory.CraftInventoryCustom$MinecraftInventory.setItem(CraftInventoryCustom.java:107) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at org.bukkit.craftbukkit.v1_12_R1.inventory.CraftInventory.setItem(CraftInventory.java:96) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    at klaster.main.GUI.openGUI(GUI.java:26) ~[?:?]
    at klaster.main.Russia.onCommand(Russia.java:54) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[s.jar:git-Spigot-dcd1643-e60fc34]
    ... 15 more
     
  2. Offline

    timtower Administrator Administrator Moderator

    @Isterikaa Please post your code, GUI class, with includes.
     
  3. Offline

    Isterikaa

    @timtower
    Code:java
    1.  
    2. package klaster.main;
    3.  
    4. import org.bukkit.Bukkit;
    5. import org.bukkit.ChatColor;
    6. import org.bukkit.Material;
    7. import org.bukkit.entity.Player;
    8. import org.bukkit.event.EventHandler;
    9. import org.bukkit.event.Listener;
    10. import org.bukkit.event.inventory.InventoryClickEvent;
    11. import org.bukkit.inventory.Inventory;
    12.  
    13. import Util.ItemUtil;
    14.  
    15. public class GUI implements Listener {
    16.  
    17. public static void openGUI(Player p) {
    18. Inventory inv = Bukkit.createInventory(null, 9, "Выбор расы.");
    19. inv.setItem(0, ItemUtil.create(Material.BLUE_GLAZED_TERRACOTTA, "Даун1"));
    20. inv.setItem(1, ItemUtil.create(Material.ANVIL, "Даун2"));
    21. inv.setItem(2, ItemUtil.create(Material.BARRIER, "Даун3"));
    22. inv.setItem(3, ItemUtil.create(Material.CAKE, "Даун4"));
    23. inv.setItem(4, ItemUtil.create(Material.BOOKSHELF, "Даун5"));
    24. inv.setItem(5, ItemUtil.create(Material.BONE, "Даун6"));
    25.  
    26.  
    27. inv.setItem(9, ItemUtil.create(Material.CACTUS, ChatColor.RED + "Выход"));
    28.  
    29. p.openInventory(inv);
    30. }
    31.  
    32. @EventHandler
    33. public void onInventoryClick (InventoryClickEvent e) {
    34. Player p = (Player) e.getWhoClicked();
    35.  
    36. if (e.getInventory().getName().equalsIgnoreCase("Выбор расы.")) {
    37. e.setCancelled(true);
    38.  
    39. if (e.getCurrentItem().getType() == Material.CACTUS) {
    40. p.closeInventory();
    41. }
    42.  
    43. else if (e.getCurrentItem().getType() == Material.BLUE_GLAZED_TERRACOTTA) {
    44. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "ТА МНЕ ПОХУЙ ЧЁ ТУТ ПИСАТЬ"));
    45. p.setExp(5);
    46. p.closeInventory();
    47. }
    48. else if (e.getCurrentItem().getType() == Material.ANVIL) {
    49. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "ТВОЯ МАМАША В МОЕЙ КРОВАТИ"));
    50. p.setExp(45);
    51. p.closeInventory();
    52. }
    53. else if (e.getCurrentItem().getType() == Material.BARRIER) {
    54. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "ЛОЛ"));
    55. p.setExp(576);
    56. p.closeInventory();
    57. }
    58. else if (e.getCurrentItem().getType() == Material.CAKE) {
    59. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "КЕК"));
    60. p.setExp(24);
    61. p.closeInventory();
    62. }
    63. else if (e.getCurrentItem().getType() == Material.BOOKSHELF) {
    64. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "Соси"));
    65. p.setExp(32);
    66. p.closeInventory();
    67. }
    68. else if (e.getCurrentItem().getType() == Material.BONE) {
    69. p.getInventory().addItem(ItemUtil.create(Material.STICK, ChatColor.BOLD + "ЛОЛОЛОЛОЛДОУЛКЛЫУКЫАВЛАЫД"));
    70. p.setExp(86786);
    71. p.closeInventory();
    72. }
    73. }
    74. }
    75. }


    And ItemUtil(this used)



    package Util;
    Code:java
    1.  
    2. import java.util.ArrayList;
    3.  
    4. import org.bukkit.Material;
    5. import org.bukkit.entity.Item;
    6. import org.bukkit.inventory.ItemStack;
    7. import org.bukkit.inventory.meta.ItemMeta;
    8.  
    9.  
    10. public class ItemUtil {
    11.  
    12. public static ItemStack create(Material material, int amount, byte data, String displayName, String lore1, String lore2, String lore3, String lore4) {
    13. ItemStack item = new ItemStack(material, amount, data);
    14. ItemMeta meta = item.getItemMeta();
    15.  
    16. if(displayName != null) {
    17. meta.setDisplayName(displayName);
    18. }
    19. ArrayList<String> lore = new ArrayList<String>();
    20.  
    21. if (lore1 != null) {
    22. lore.add(lore1);
    23. }
    24.  
    25. if (lore2 != null) {
    26. lore.add(lore2);
    27. }
    28.  
    29. if (lore3 != null) {
    30. lore.add(lore3);
    31. }
    32.  
    33. if (lore4 != null) {
    34. lore.add(lore4);
    35. }
    36. meta.setLore(lore);
    37. item.setItemMeta(meta);
    38.  
    39. return item;
    40.  
    41. }
    42. public static ItemStack create(Material material, String displayName) {
    43. return create(material, 1, (byte)0, displayName, null, null, null, null);
    44.  
    45.  
    46. }
    47.  
    48. public static ItemStack create(Material material, int amount, byte data, String displayName) {
    49. return create(material, amount, data, displayName, null, null, null, null);
    50.  
    51.  
    52. }
    53. }


    @timtower

    Well?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Apr 9, 2020
  4. Offline

    timtower Administrator Administrator Moderator

    @Isterikaa There is no slot 9, that should be 8
     
  5. Offline

    Isterikaa

    @timtower Thx

    @timtower

    How can I make the inventory open when a player enters the server?

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

    timtower Administrator Administrator Moderator

  7. Offline

    Isterikaa

Thread Status:
Not open for further replies.

Share This Page