BlockState /

  • Автор темы Автор темы molor
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ну и логично, что скажем у таблички нету InventoryHolder.
 
https://github.com/kostaskougios/cloning/
Твой ответ корректен только для уникальных классов. molor же хочет одну реализацию для всего, что реализует BlockState. И хочет он это красиво, а не как обычно.
Ну оно актуально для всех InventoryHolder, вторая ифка не в счет.
Любого блока, не только блока с инвентарём. Те же таблички например, или командные блоки.
Ну и логично, что скажем у таблички нету InventoryHolder.

Вот тебе для табличек. UP добавил тебе для кб.
Java:
        Block block =e.getClickedBlock();
        BlockState state = block.getState();
        if(state instanceof InventoryHolder) {
            InventoryHolder chest = (InventoryHolder)state;
            ItemStack[] stacks = chest.getInventory().getContents().clone();
        }
        if(state instanceof Sign){
            Sign signs = (Sign) state;
            String[] lines = signs.getLines().clone();
        }
        if(state instanceof CommandBlock){
            CommandBlock cb = (CommandBlock) state;
            String com = cb.getCommand();
        }

А вот структурный блок, тут не знаю.
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.
Назад
Верх