- 2
- 0
Добрый день!
Я скорее всего что-то упускаю. Не могу разобраться почему при возврате функции " TypedActionResult<ItemStack> use ", свойство ItemStack.Count приходит в исходное состояние. При чём если меняю именно сущность Item - оно меняет. А вот количество выбрасывает в прежнее состояние.
Вот самый простой пример кода, что пытается изменить количество. Если присмотреться в самом клиенте майнкрафте - то видно как сначала предмет становится в количество 34, а затем снова в исходное, например, 2.
Что я мог упустить?
Я скорее всего что-то упускаю. Не могу разобраться почему при возврате функции " TypedActionResult<ItemStack> use ", свойство ItemStack.Count приходит в исходное состояние. При чём если меняю именно сущность Item - оно меняет. А вот количество выбрасывает в прежнее состояние.
Вот самый простой пример кода, что пытается изменить количество. Если присмотреться в самом клиенте майнкрафте - то видно как сначала предмет становится в количество 34, а затем снова в исходное, например, 2.
Тело виртуального метода - пример:
@Override
public TypedActionResult<ItemStack> use (World world, PlayerEntity playerEntity, Hand hand){
System.out.println("Сообщалка: Клиент? - " + world.isClient);
//Присваиваю ссылку
ItemStack itemStack = playerEntity.getStackInHand(hand);
//Хочу поставить определённое количество в стак
System.out.println("Сообщалка: Count до - " + itemStack.getCount());
itemStack.setCount(34);
System.out.println("Сообщалка: Count после - " + itemStack.getCount());
return new TypedActionResult<>(ActionResult.SUCCESS, itemStack);
}
Что я мог упустить?