- Баллы
- 173
- Имя в Minecraft
- fromgate
Добрый день!
Не думал, что наступлю на такие грабли. Более того не думал, что такие грабли остались в бакките.
В общем есть задача убрать определенный предмет (в количестве одна штука) из инвентаря (не из рук) игрока. В замен выдать ему другой предмет.
Казалось бы куда уж проще:
player.removItem (new ItemStack (id, amount, data));
и
player.addItem (new ItemStack (id2, amount2, data2));
А оказывается - это проблема. Когда-то давно я это делал и после вызова подобных команд использовал метод player.updateInventory(); - это производило "переотправку" инвентаря клиенту и результат был такой как надо - игрок видел изменение инвентаря.
Сейчас Player.updateInventory() отмечен устаревшим. И собственно уже не работает как надо.
До перелогина изменение в инвентаре не отображаются.
Альтернативу я пока не нашёл. Никто не сталкивался? Как побороть проблему и принудительно обновлять инвентарь?
Не думал, что наступлю на такие грабли. Более того не думал, что такие грабли остались в бакките.
В общем есть задача убрать определенный предмет (в количестве одна штука) из инвентаря (не из рук) игрока. В замен выдать ему другой предмет.
Казалось бы куда уж проще:
player.removItem (new ItemStack (id, amount, data));
и
player.addItem (new ItemStack (id2, amount2, data2));
А оказывается - это проблема. Когда-то давно я это делал и после вызова подобных команд использовал метод player.updateInventory(); - это производило "переотправку" инвентаря клиенту и результат был такой как надо - игрок видел изменение инвентаря.
Сейчас Player.updateInventory() отмечен устаревшим. И собственно уже не работает как надо.
До перелогина изменение в инвентаре не отображаются.
Альтернативу я пока не нашёл. Никто не сталкивался? Как побороть проблему и принудительно обновлять инвентарь?
