Я занимаюсь разработкой мода Minecraft 1.12.2 уже несколько месяцев.Я хотел сделать направленный блок.Блок представляет собой чёрно-фиолетовый куб (при размещении в руке есть текстура).Файлы JSON, которые я проверял несколько раз.Каждый раз, когда я запускаю игру, все направления устанавливаются по умолчанию.Спасибо за помощь!
PS Я проверял оригинальную версию Minecraft BlockFurnace, но вместо того, чтобы помочь, меня смутило.
Вот код, который у меня уже есть:
public class DirBlock extends BlockHorizontal implements IHasModel {
public DirBlock(String name) {
super(Material.CLOTH);
setSoundType(SoundType.CLOTH);
setCreativeTab(Main.RM_TAB1);
setUnlocalizedName(name);
setRegistryName(name);
setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH));
ModBlocks.BLOCKS.add(this);
ModItems.ITEMS.add(new ItemBlock(this).setRegistryName(this.getRegistryName()));
}
public static final PropertyDirection FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL);
@Override
protected BlockStateContainer createBlockState() {
return new BlockStateContainer(this, new IProperty[] { FACING });
}
@Override
public IBlockState getStateFromMeta(int meta) {
return getDefaultState().withProperty(FACING, meta == 0 ? EnumFacing.WEST : EnumFacing.EAST);
}
@Override
public int getMetaFromState(IBlockState state) {
EnumFacing facing = (EnumFacing) state.getValue(FACING);
return facing.getHorizontalIndex();
}
@Override
public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY,
float hitZ, int meta, EntityLivingBase placer, EnumHand hand) {
return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta, placer, hand).withProperty(FACING, placer.getHorizontalFacing());
}
@Override
public void registerModels() {
Main.proxy.registerItemRenderer(Item.getItemFromBlock(this), 0, "inventory");
}
}