- Баллы
- 103
Здравствуйте уважаемые форумчане.
Собственно, суть проблемы:
У меня есть предмет, допустим красный краситель, с именем "Заговор огня 2"
Задача в том, чтобы открыть инвентарь, взять этот камень, навести на меч, кликнуть, и камень должен краситель должен пропасть, а меч зачароваться. Все это работает у меня, если кликать в сундуке, печке, инвентаре игрока в выживании, и т.д. Но не в креативном инвентаре. В креативном инвентаре, у меня получается такое: сам краситель с зачарованием пропадает, но меч остается не зачарован. Вот код:
Сам меч чарится, даже в креативном инвентаре(то есть если выводить инфу о зачареной вещи, то она зачарена), но не вставляется.
Собственно, суть проблемы:
У меня есть предмет, допустим красный краситель, с именем "Заговор огня 2"
Задача в том, чтобы открыть инвентарь, взять этот камень, навести на меч, кликнуть, и камень должен краситель должен пропасть, а меч зачароваться. Все это работает у меня, если кликать в сундуке, печке, инвентаре игрока в выживании, и т.д. Но не в креативном инвентаре. В креативном инвентаре, у меня получается такое: сам краситель с зачарованием пропадает, но меч остается не зачарован. Вот код:
Код:
ItemStack itemIn = event.getCursor(); //Чем чарим
ItemStack itemTo = event.getCurrentItem(); //Что чарим
//Дальше идет проверка на возможность зачарования
//Тут чаруем
try {
itemTo.addEnchantment(enchant, getLevel(metaIn.getDisplayName()));
} catch(IllegalArgumentException e) {
return;
}
itemIn.setType(Material.AIR);
if (event.getWhoClicked().getGameMode() == GameMode.CREATIVE) {
//Пробовал вставлять на место куда кликнули в инвентаре
//event.getInventory().setItem(event.getRawSlot(), itemTo);
//И прямо в инвентарь того, кто кликнул
event.getWhoClicked().getInventory().setItem(event.getRawSlot(), itemTo);
return;
}
Сам меч чарится, даже в креативном инвентаре(то есть если выводить инфу о зачареной вещи, то она зачарена), но не вставляется.