ошибка

  • Майская распродажа!

    Впереди теплые праздники, цены таят на глазах! Поздравляем вас и дарим вам специальный купон.
    Мы предлагаем вам специальное предложение на подписку, действительное только по временному купону.
    Обнови свой сервер с лучшими сборками, плагинами и картами!

    Купон
    MAY20
  • Мы теперь в Discord

    Мы рады объявить, что теперь у нас есть сервер Discord. В честь этого мы проводим розыгрыш!
    Теперь вы можете легко связаться с нами и другими участниками сообщества,
    обмениваться идеями и получать обновления о нашей деятельности.

  • EXCLUSIVE ⚡

    Гость, покупая подписку, ты увеличишь свои доходы в разы!
    Мы делаем самые актуальные сборки, переводим лучшие приватные плагины, а так-же обновляем их и фиксим любые ошибки.
    Дешевле, чем студии и другие разработчики!

  • Приветствуем тебя Гость!⁣

    Недавно на форуме? Не знаешь как можно скачивать ресурсы?
    Для этого нужно лишь зарегистрировать на форуме, и получать доступ к профессиональным плагинам, оптимизированным настройкам.
    Здесь только самое лучшее.

  • Обновленный «Mc-market.ru»

    Теперь у вас есть возможность продавать свои товары на Minecraft маркете.
    Это отличная возможность для вас начать зарабатывать на своих навыках и труде.
    Начни продавать сейчас!

  • Интеграция ChatGPT

    Администраторы Minecraft могут столкнуться с различными проблемами, связанными с работой серверов и кодом.
    Однако, благодаря инновационным технологиям, искусственный интеллект может помочь решить эти проблемы.
    Реши свою любую проблему сейчас!

K0lbasa

Пользователь
19 Фев 2021
255
0
16
Выходит ошибка: java.lang.IllegalStateException: InventoryOpenEvent may only be triggered synchronously. BukkitAPI, исправь ошибку в коде:

public void openGUI(Player p) {
Inventory inv = Bukkit.createInventory(null, 45, " Возможности роли");

ItemStack item = addItem("§f", Material.LIME_STAINED_GLASS_PANE, 1, null);
inv.setItem(0, item);
inv.setItem(1, item);
inv.setItem(7, item);
inv.setItem(8, item);
inv.setItem(9, item);
inv.setItem(17, item);
inv.setItem(27, item);
inv.setItem(35, item);
inv.setItem(36, item);
inv.setItem(37, item);
inv.setItem(43, item);
inv.setItem(44, item);

List<String> l = new ArrayList<>();
String s = cm.getClan(p.getName());

l.add("");
l.add("§fНажмите, чтобы добавить");
l.add("§fновую роль!");
l.add("");
item = addSkullItem(hex("#f5b95bДобавить роль"), l, "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWY0YzIxZDE3YWQ2MzYzODdlYTNjNzM2YmZmNmFkZTg5NzMxN2UxMzc0Y2Q1ZDliMWMxNWU2ZTg5NTM0MzIifX19");
inv.setItem((20), item);
p.openInventory(inv);
playClick(p);
}
 

ChatGPT ?

Официальный
30 Мар 2023
630
5
1
Эта ошибка возникает потому, что событие InventoryOpenEvent может быть запущено только синхронно (в том же потоке, что и вызывающий метод). Для исправления этой ошибки нужно обернуть открытие инвентаря в синхронный блок, например:

public void openGUI(Player p) {
Inventory inv = Bukkit.createInventory(null, 45, " Возможности роли");

ItemStack item = addItem("§f", Material.LIME_STAINED_GLASS_PANE, 1, null);
inv.setItem(0, item);
inv.setItem(1, item);
inv.setItem(7, item);
inv.setItem(8, item);
inv.setItem(9, item);
inv.setItem(17, item);
inv.setItem(27, item);
inv.setItem(35, item);
inv.setItem(36, item);
inv.setItem(37, item);
inv.setItem(43, item);
inv.setItem(44, item);

List<String> l = new ArrayList<>();
String s = cm.getClan(p.getName());

l.add("");
l.add("§fНажмите, чтобы добавить");
l.add("§fновую роль!");
l.add("");
item = addSkullItem(hex("#f5b95bДобавить роль"), l, "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWY0YzIxZDE3YWQ2MzYzODdlYTNjNzM2YmZmNmFkZTg5NzMxN2UxMzc0Y2Q1ZDliMWMxNWU2ZTg5NTM0MzIifX19");

// Обернуть открытие инвентаря в синхронный блок
Bukkit.getScheduler().runTask(plugin, () -> {
p.openInventory(inv);
playClick(p);
});
}
 

K0lbasa

Пользователь
19 Фев 2021
255
0
16
at com.sclans.GUIs.PermsGUI.openGUI(PermsGUI.java:48) ~[?:?]
at com.sclans.events.PlayerChat.onChat(PlayerChat.java:97) ~[?:?]
Эта ошибка возникает потому, что событие InventoryOpenEvent может быть запущено только синхронно (в том же потоке, что и вызывающий метод). Для исправления этой ошибки нужно обернуть открытие инвентаря в синхронный блок, например:

public void openGUI(Player p) {
Inventory inv = Bukkit.createInventory(null, 45, " Возможности роли");

ItemStack item = addItem("§f", Material.LIME_STAINED_GLASS_PANE, 1, null);
inv.setItem(0, item);
inv.setItem(1, item);
inv.setItem(7, item);
inv.setItem(8, item);
inv.setItem(9, item);
inv.setItem(17, item);
inv.setItem(27, item);
inv.setItem(35, item);
inv.setItem(36, item);
inv.setItem(37, item);
inv.setItem(43, item);
inv.setItem(44, item);

List<String> l = new ArrayList<>();
String s = cm.getClan(p.getName());

l.add("");
l.add("§fНажмите, чтобы добавить");
l.add("§fновую роль!");
l.add("");
item = addSkullItem(hex("#f5b95bДобавить роль"), l, "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWY0YzIxZDE3YWQ2MzYzODdlYTNjNzM2YmZmNmFkZTg5NzMxN2UxMzc0Y2Q1ZDliMWMxNWU2ZTg5NTM0MzIifX19");

// Обернуть открытие инвентаря в синхронный блок
Bukkit.getScheduler().runTask(plugin, () -> {
p.openInventory(inv);
playClick(p);
});
}
Эта ошибка возникает потому, что событие InventoryOpenEvent может быть запущено только синхронно (в том же потоке, что и вызывающий метод). Для исправления этой ошибки нужно обернуть открытие инвентаря в синхронный блок, например:

public void openGUI(Player p) {
Inventory inv = Bukkit.createInventory(null, 45, " Возможности роли");

ItemStack item = addItem("§f", Material.LIME_STAINED_GLASS_PANE, 1, null);
inv.setItem(0, item);
inv.setItem(1, item);
inv.setItem(7, item);
inv.setItem(8, item);
inv.setItem(9, item);
inv.setItem(17, item);
inv.setItem(27, item);
inv.setItem(35, item);
inv.setItem(36, item);
inv.setItem(37, item);
inv.setItem(43, item);
inv.setItem(44, item);

List<String> l = new ArrayList<>();
String s = cm.getClan(p.getName());

l.add("");
l.add("§fНажмите, чтобы добавить");
l.add("§fновую роль!");
l.add("");
item = addSkullItem(hex("#f5b95bДобавить роль"), l, "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNWY0YzIxZDE3YWQ2MzYzODdlYTNjNzM2YmZmNmFkZTg5NzMxN2UxMzc0Y2Q1ZDliMWMxNWU2ZTg5NTM0MzIifX19");

// Обернуть открытие инвентаря в синхронный блок
Bukkit.getScheduler().runTask(plugin, () -> {
p.openInventory(inv);
playClick(p);
});
}
at com.sclans.GUIs.PermsGUI.openGUI(PermsGUI.java:48) ~[?:?]
at com.sclans.events.PlayerChat.onChat(PlayerChat.java:97) ~[?:?]

ошибка здесь
 

ChatGPT ?

Официальный
30 Мар 2023
630
5
1
Извините, я ошибся. Эта ошибка не связана с предыдущей.

Ошибка указывает на то, что в классе PermsGUI на строке 48 произошла ошибка. Я не могу точно сказать, какую ошибку именно. Но возможно проблема в вызове какого-то метода, передаче неверных параметров, или в какой-то другой части кода данного класса.

Пожалуйста, пришлите больше кода со строки, на которой возникает ошибка 48, чтобы я мог более точно определить проблему.

at com.sclans.GUIs.PermsGUI.openGUI(PermsGUI.java:48) ~[?:?]
at com.sclans.events.PlayerChat.onChat(PlayerChat.java:97) ~[?:?]

ошибка здесь
Извините, я ошибся. Эта ошибка не связана с предыдущей.

Ошибка указывает на то, что в классе PermsGUI на строке 48 произошла ошибка. Я не могу точно сказать, какую ошибку именно. Но возможно проблема в вызове какого-то метода, передаче неверных параметров, или в какой-то другой части кода данного класса.

Пожалуйста, пришлите больше кода со строки, на которой возникает ошибка 48, чтобы я мог более точно определить проблему.
 

K0lbasa

Пользователь
19 Фев 2021
255
0
16
Извините, я ошибся. Эта ошибка не связана с предыдущей.

Ошибка указывает на то, что в классе PermsGUI на строке 48 произошла ошибка. Я не могу точно сказать, какую ошибку именно. Но возможно проблема в вызове какого-то метода, передаче неверных параметров, или в какой-то другой части кода данного класса.

Пожалуйста, пришлите больше кода со строки, на которой возникает ошибка 48, чтобы я мог более точно определить проблему.


Извините, я ошибся. Эта ошибка не связана с предыдущей.

Ошибка указывает на то, что в классе PermsGUI на строке 48 произошла ошибка. Я не могу точно сказать, какую ошибку именно. Но возможно проблема в вызове какого-то метода, передаче неверных параметров, или в какой-то другой части кода данного класса.

Пожалуйста, пришлите больше кода со строки, на которой возникает ошибка 48, чтобы я мог более точно определить проблему.
вот строка 48: inv.setItem((20), item);
 

ChatGPT ?

Официальный
30 Мар 2023
630
5
1
Причина этой ошибки заключается в том, что вы пытаетесь установить элемент в инвентарь на недопустимую позицию. В данном случае, вы пытаетесь установить элемент на позицию 20, хотя ваш инвентарь имеет только 45 слотов, и максимальная позиция составляет 44 (отсчёт начинается с 0).

Чтобы исправить ошибку, вы можете изменить строку 48 на:

inv.setItem(20, item);

Это установит элемент на позицию 20 (отсчет начинается с 0) в вашем инвентаре.
 

Помочь проекту! 💕

Собрано
"40,197.60" ₽
Цель
"50,000.00" ₽

Новые сообщения

Последние ресурсы