- Баллы
- 66
Ну такое. Игрок может сломать сундук с вещами внутри. Перед разрушением блока я отменяю это событие, получаю BlockState блока сундука и сохраняю его в HashMap<Location, BlockState>, где Location - его координаты на сервере. Через несколько минут этот блок восстанавливается по этим данным. Всё бы хорошо, но.. все вещи в инвентаре сундука просто исчезают. Подскажите, какого чёрта? Чего я не знаю или что делаю неправильно?
Добавление:
Восстановление:
Добавление:
Java:
Location location = block.getLocation();
if (hashMap.containsKey(location)) {
return;
}
hashMap.put(location, block.getState());
Восстановление:
Java:
((InventoryHolder) block.getState()).getInventory().setContents(((InventoryHolder) hashMap.get(location)).getInventory().getContents());