Posted May 3, 20178 yr Hello, there is a model Collector resin and I'm trying to do, that he was raised in the opinion of the player, but there is a problem. When done, the model stops working. In the console and logs nothing. Code: Spoiler public class BlockCollector extends BlockHorizontal { public static final PropertyInteger LEVEL = PropertyInteger.create("juice_level", 0, 3); protected static final AxisAlignedBB COLLECTOR_EAST_AABB = new AxisAlignedBB(0.6875D, 0.4375D, 0.375D, 0.9375D, 0.75D, 0.625D), COLLECTOR_WEST_AABB = new AxisAlignedBB(0.0625D, 0.4375D, 0.375D, 0.625D, 0.75D, 0.3125D), COLLECTOR_NORTH_AABB = new AxisAlignedBB(0.375D, 0.4375D, 0.0625D, 0.625D, 0.75D, 0.3125D), COLLECTOR_SOUTH_AABB = new AxisAlignedBB(0.375D, 0.4375D, 0.6875D, 0.625D, 0.75D, 0.9375D); public BlockCollector(String name) { super(Material.WOOD); this.setRegistryName(name); this.setUnlocalizedName(name); this.setCreativeTab(Farmland.FMCT); this.setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH).withProperty(LEVEL, Integer.valueOf(0))); } @Override public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { switch ((EnumFacing)state.getValue(FACING)) { case SOUTH: return COLLECTOR_SOUTH_AABB; case NORTH: default: return COLLECTOR_NORTH_AABB; case WEST: return COLLECTOR_WEST_AABB; case EAST: return COLLECTOR_EAST_AABB; } } @Override public IBlockState withRotation(IBlockState state, Rotation rot) { return state.withProperty(FACING, rot.rotate((EnumFacing)state.getValue(FACING))); } @Override public IBlockState withMirror(IBlockState state, Mirror mirrorIn) { return state.withRotation(mirrorIn.toRotation((EnumFacing)state.getValue(FACING))); } @Override public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) { EnumFacing enumfacing = EnumFacing.fromAngle((double)placer.rotationYaw); worldIn.setBlockState(pos, state.withProperty(FACING, enumfacing), 2); } @Override public IBlockState onBlockPlaced(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer) { if (!facing.getAxis().isHorizontal()) { facing = EnumFacing.NORTH; } return this.getDefaultState().withProperty(FACING, facing.getOpposite()).withProperty(LEVEL, Integer.valueOf(0)); } @Override public boolean isOpaqueCube(IBlockState state) { return false; } @Override public boolean isFullCube(IBlockState state) { return false; } @Override public IBlockState getStateFromMeta(int meta) { return this.getDefaultState().withProperty(FACING, EnumFacing.getHorizontal(meta)).withProperty(LEVEL, Integer.valueOf((meta & 15) >> 2)); } @Override public int getMetaFromState(IBlockState state) { int i = 0; i = i | ((EnumFacing)state.getValue(FACING)).getHorizontalIndex(); i = i | ((Integer)state.getValue(LEVEL)).intValue() << 2; return i; } @Override protected BlockStateContainer createBlockState() { return new BlockStateContainer(this, new IProperty[] {LEVEL, FACING}); } } Blockstates: Spoiler { "variants": { "juice_level=0,facing=south": { "model": "fm:collector" }, "juice_level=0,facing=west": { "model": "fm:collector", "y": 90 }, "juice_level=0,facing=north": { "model": "fm:collector", "y": 180 }, "juice_level=0,facing=east": { "model": "fm:collector", "y": 270 }, "juice_level=1,facing=south": { "model": "fm:collector" }, "juice_level=1,facing=west": { "model": "fm:collector", "y": 90 }, "juice_level=1,facing=north": { "model": "fm:collector", "y": 180 }, "juice_level=1,facing=east": { "model": "fm:collector", "y": 270 }, "juice_level=2,facing=south": { "model": "fm:collector" }, "juice_level=2,facing=west": { "model": "fm:collector", "y": 90 }, "juice_level=2,facing=north": { "model": "fm:collector", "y": 180 }, "juice_level=2,facing=east": { "model": "fm:collector", "y": 270 }, "juice_level=3,facing=south": { "model": "fm:collector" }, "juice_level=3,facing=west": { "model": "fm:collector", "y": 90 }, "juice_level=3,facing=north": { "model": "fm:collector", "y": 180 }, "juice_level=3,facing=east": { "model": "fm:collector", "y": 270 } } } Please help. Edited May 3, 20178 yr by WildHeart
May 3, 20178 yr Author 5 minutes ago, diesieben07 said: If you are using the default state mapper, those variants will never exist. The default state mapper orders properties a-z, so facing must come before juice_level. Wow, didn't know that everything is so thoughtfully. I'll try to move.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.